標籤:

Linux基本命令(mkdir、touch、remove、alias,copy)

創建目錄:mkdir(Make Directory)

格式:mkfir [-p] [路徑]目錄名……

多個參數,如下圖:

要想創建一個多層次的目錄,要加-p,如下圖:

創建文本文件,touch,使用如下圖:

注意,Linux系統認的是目錄,不是文件。

mkdir /opt/abc.txt

此時abc.txt是目錄而不是文本文件。

touch出來的是文本文件,mkdir出來的是目錄。這點和Windows平台有很大的區別,Winodws平台擴展名有嚴格的要求。擴展名在Linux當中沒有太大的含義。

rm(Remove)

格式:rm [選項]…… 文件或目錄……

常用選項命令:

-r:遞歸刪除(含目錄)。什麼是遞歸刪除?就是連同目錄本身以及這個目錄下的所有子目錄子文件一層一層的全部刪除。一般情況下刪除目錄都要加上-r選項。

-f:強制刪除

-rf:刪除前不提示

沒有f,刪除前會有提示,如下圖:

此時必須回答yes才會刪除,回車默認不刪除,沒有回收站,一旦回答了yes,就直接刪除了。

rm的對象如果是目錄,必須要加上-r選項,如下圖:

當刪除的目錄有子目錄時,會出現如下情況:

刪除多層目錄的時候,會先進入到最後一層,然後由里往外刪除。但是有這個提示,固然比較安全,但是子目錄多的時候,就會比較麻煩,那麼如何沒有這個提示?也就是確認這個目錄,我肯定要刪除,如何取消提示呢?有一個叫強制刪除的選項,-f(force強制),如下圖:

沒有出現提示了。

注意,不要有多餘的空格,如下圖,多了一個空格,就把根刪除了!

但是RHEL7有個安全模式,刪根會提示,如下圖:

另外,rm -rf也支持通配符,如下圖:

如上圖,如果沒*,那麼opt沒了,如果刪掉了opt,再創建一個opt就好,如下圖:

注意,根下面能刪的目錄只有opt,其它目錄刪了會有危險。

有重點目錄,如boot目錄,系統內核和啟動文件都在boot裡面,如果被刪除,就啟動不了,因為引導文件在裡面。

etc沒有了,也會導致啟動機器失敗。

其它的如果刪掉了也會引起很多的異常。

所以根下的每一個目錄,都不要刪除,都有特定的意義。

像管理員的家目錄、普通用戶的家目錄……都不要輕意刪除。

注意,rm -rf /有安全提示,但rm -rf /* 是沒有安全提示的,如下圖,一回車就都刪除了

補充定義命令的別名,簡化命令的效果

alias 別名=「執行的命令」,具體操作如下圖:

那麼如何取消別名?unalias myls

如果unalias myls提示未找到,說明myls沒有被定義或者沒有被定義在這個終端。

別名的優先順序高於基本命令

在定義別名的時候要注意同名的衝突。

有時候系統為了你的方便也會定義別名,如下圖:

一般情況下不隨便定義別名,一般情況下有非常長的命令會定義另名。

接下來是移動命令MV:剪切

mv-MOVE

格式:mv [選項] …… 原文件 …… 目標路徑(若位置不變相當於改名)

剪切遇到重名,會提示是否覆蓋

如何去除提示?強制覆蓋:mv -f

(mv -i是給提示mv -f是不給提示)系統自動定義了別名mv -i,此時你再mv -f還是會強制覆蓋,說明f的優先順序高。

接下來還有重命名

生命名:將路徑不變的移動稱為改名

接下來是複製命令CP(copy)

cp-Copy

格式:cp [選項] …… 原文件 …… 目標路徑

常用命令選項:

-r:遞歸,複製目錄時必須有些選項

-p:保持原文件的許可權、修改時間等屬性不變

cp /etc/zqq . //拷貝zqq這個文件到當前目錄

把文件拷貝然後重命名,再放到當前目錄:

cp passwd zqq //把passwd拷貝,並重命名為zqq。

經典報錯:omitting directory。當拷貝的是目錄而不是文件的時候會出現這個報錯

拷貝目錄需要用到 -r

cp -r是拷貝目錄本身以及目錄下的所有。

因為有硬碟的讀寫過程,所以拷貝需要時間。

大部分命令f的優先順序大於i,也就是強制優先。但是拷貝copy命令比較特殊,i選項優先順序大於f選項。去除系統給cp的別名:unalias cp,如下圖,cp -i的選項沒有了:

一般情況下不去除系統給予的別名,有一個臨時取消別名的方式,就是僅在本次操作取消別名,在命令的前面加一個/(反斜杠)如下圖:

cp與mv均支持兩個以上的多個參數

注意,拷貝永遠是把最後一個參數當成目標,中間的所有參數都是源,如下圖,把黑色標的都拷貝到mnt目錄下的意思:

注意:拷貝的是目錄所以有-r

另外,拷貝也可以去目的地改名,如下圖:

把passwd拷貝到opt下並且重命名。

推薦閱讀:

UNIX/Linux最偉大的技術是什麼?
Vim 和 Emacs 這類經典的軟體會被淘汰嗎?
MIUI V6 引入的Linux系統內核內存優化技術分別是什麼?
微軟有沒有可能為Linux系統開發桌面環境?
一位貓奴的編程傳奇

TAG:Linux |