26Linux 命令基礎入門--Linux操作命令(二)

mkdir 命令

mkdir 命令用來創(chuàng)建指定名稱的目錄,要求創(chuàng)建目錄的用戶在當前目錄中具有寫權限,并且指定的目錄名不能是當前目錄中已有的目錄。 mkdir 命令是 make directory 的縮寫。
命令格式
mkdir [選項] 目錄
常用參數(shù)

image.png

常用范例
例一:遞歸創(chuàng)建多個目錄 ,可以使用如下命令:

mkdir -p  zhou/test

例二:創(chuàng)建權限為 777 的目錄,可以使用如下命令:

mkdir -m 777  zhou
image.png

例三:創(chuàng)建目錄顯示信息,可以使用如下命令:

mkdir -vp zhou/test

image.png

思考題
嘗試一下下面的命令,看看有什么神奇的事發(fā)生,tree 命令需要單獨安裝。

sudo apt-get update
sudo apt-get install tree
mkdir -vp shiyanlou/{lib/,bin/,doc/{info,product}}
tree shiyanlou/

rm 命令

rm 是常用的命令,該命令的功能為刪除一個目錄中的一個或多個文件或目錄,它也可以將某個目錄及其下的所有文件及子目錄均刪除。對于鏈接文件,只會刪除鏈接,原文件均保持不變。
rm 是一個危險的命令,使用的時候要特別當心,尤其對于新手,否則整個系統(tǒng)就會毀在這個命令(比如在/(根目錄)下執(zhí)行 rm * -rf)。所以,我們在執(zhí)行 rm 之前最好先確認一下在哪個目錄,到底要刪除什么東西,操作時保持高度清醒的頭腦。
rm 命令是 remove 的縮寫。
命令格式
rm [選項] 文件或目錄
常用參數(shù)

image.png

常用范例
先來創(chuàng)建一個測試文本:

sudo touch shiyanlou.log

例一:刪除文件,系統(tǒng)會先詢問是否刪除,可以使用如下命令:

rm shiyanlou.log
image.png

例二:強行刪除文件,系統(tǒng)不再提示,可以使用如下命令:

rm -f shiyanlou.log
image.png

例三:刪除后綴名為.log 的所有,刪除前逐一詢問,可以使用如下命令:

rm *.log 或 rm -i *.log

image.png

思考題
思考一下下面這段代碼有什么作用。

myrm(){
    D=/tmp/$(date "+%Y%m%d%H%M%S")
    mkdir -p $D
    mv "$@" $D && echo "moved to $D ok"
 }

mv 命令

mv 命令功能是用來移動文件或更改文件名,是 Linux 系統(tǒng)下常用的命令,經(jīng)常用來備份文件或者目錄。 mv 命令根據(jù)第二個參數(shù)類型(目標是一個文件還是目錄),決定執(zhí)行將文件重命名或將其移至一個新的目錄中。當?shù)诙€參數(shù)類型是文件時,mv 命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標文件名。當?shù)诙€參數(shù)是已存在的目錄名稱時,源文件或目錄參數(shù)可以有多個,mv 命令將各參數(shù)指定的源文件均移至目標目錄中。 mv 命令是 move 的縮寫。
命令格式
mv [選項] 源文件或目錄 目標文件或目錄
常用參數(shù)

image.png

常用范例
例一:將文件shiyanlou.log重命名為zhou.log,可以使用如下命令:

mv shiyanlou.log zhou.log
image.png

例二:將文件zhou.log移動到 test 目錄下(test 目錄必須已經(jīng)存在,否則執(zhí)行重命名),可以使用如下命令:

mv zhou.log test
image.png

image.png

例三:將文件a.txt移動到 test1 目錄下,如果文件存在,覆蓋前會詢問是否覆蓋,可以使用如下命令:

mv -i a.txt test1

cp 命令

cp 命令用來復制文件或者目錄,是 Linux 系統(tǒng)中最常用的命令之一。一般情況下,shell 會設置一個別名,在命令行下復制文件時,如果目標文件已經(jīng)存在,就會詢問是否覆蓋,不管你是否使用 -i 參數(shù)。但是如果是在 shell 腳本中執(zhí)行 cp 時,沒有 -i 參數(shù)時不會詢問是否覆蓋。這說明命令行和 shell 腳本的執(zhí)行方式有些不同。 cp 命令是 copy 的縮寫。
命令格式
cp [選項] 源文件 目錄 cp [選項] -t 目錄 源文件
常用參數(shù)

image.png

常用范例
例一:對文件shiyanlou.log建立一個符號鏈接syl.log,可以使用如下命令:

cp -s shiyanlou.log syl.log

例二:將 test1 目錄下的所有文件復制到 test2 目錄下,覆蓋前詢問,可以使用如下命令:

cp -i test1/* test2
image.png

例三:將 test1 目錄下的最近更新的文件復制到 test2 目錄下,覆蓋前詢問,可以使用如下命令:

cp -iu test1/* test2
image.png

cat 命令

cat 命令的功能是將文件或標準輸入組合輸出到標準輸出。這個命令常用來顯示文件內容,或者將幾個文件連接起來顯示,或者從標準輸入讀取內容并顯示,它常與重定向符號配合使用。 cat 命令是 concatenate 的縮寫。
命令格式
cat [選項][文件]
常用參數(shù)

image.png

常用范例
例一:把shiyanlou.log的文件內容加上行號后輸入zhou.log這個文件里,可以使用如下命令:

cat -n shiyanlou.log > zhou.log
image.png

例二:把shiyanlou.log的文件內容加上行號后輸入zhou.log這個文件里,多行空行換成一行輸出,可以使用如下命令:

cat -ns shiyanlou.log > zhou.log
image.png

例三:將zhou.log的文件內容反向顯示,可以使用如下命令:

tac  zhou.log

image.png

說明:tac 是將 cat 反寫過來,所以它的功能就跟 cat 相反,cat 是由第一行開始到最后一行連續(xù)顯示在屏幕上,而 tac 則是由最后一行開始到第一行反向在屏幕上顯示出來。
思考題
執(zhí)行下面命令會輸出什么。
image.png

nl 命令

nl 命令在 linux 系統(tǒng)中用來計算文件中的行號。nl 可以將輸出的文件內容自動加上行號,其默認的結果與 cat -n 有點不太一樣。 nl 可以將行號做較多的顯示設計,包括位數(shù)與是否自動補齊 0 等等的功能。
nl 命令是 number of lines 的縮寫。
命令格式
nl [選項][文件]
常用參數(shù)

image.png

常用范例
例一:把shiyanlou.log的文件內容加上行號后顯示,空行不加行號,可以使用如下命令:

nl -b t shiyanlou.log
image.png

例二:把shiyanlou.log的文件內容加上行號后顯示,行號分別在屏幕最左方、最右方不加 0 和最右方加 0 顯示,可以使用如下命令:

nl -n ln shiyanlou.log
nl -n rn shiyanlou.log
nl -n rz shiyanlou.log
image.png

例三:把shiyanlou.log的文件內容加上行號后顯示,行號在屏幕最右方加 0 顯示,行號欄目占位數(shù)為 3,可以使用如下命令:

nl -n rz -w 3 shiyanlou.log
image.png
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容