《Linux與shell 腳本編程大全》筆記之基本文件處理命令

touch 命令

touch命令用于創(chuàng)建空文件,例如有時應(yīng)用程序希望在它們寫入數(shù)據(jù)之前,某個日志文件就已經(jīng)存在。這時可用touch命令創(chuàng)建一個空文件:touch test1
touch命令還可以用來改變已有文件的訪問時間和修改時間,而不改變文件內(nèi)容,例如已存在test1文件,再次執(zhí)行touch test1時,文件的創(chuàng)建時間就會為當前時間,-t參數(shù)后跟時間戳則可以將文件的創(chuàng)建時間改成指定時間;

cp 命令

此命令用以復制文件或者目錄,cp命令需要兩個參數(shù),源對象和目標對象,最基本的用法為:
cp source destination
sourcedestination都為文件時,新文件以destination命名,sourcedestination也都可為目錄文件
著重介紹cp命令的幾個常用參數(shù):

  • -p:為目標文件保留源文件的訪問時間和修改時間
  • -v:詳細模式,解釋復制過程中發(fā)生了什么(可用于shell程序日志記錄)
  • -r:遞歸復制,用于復制目錄時及其子目錄
  • -b:創(chuàng)建備份,而不覆蓋
  • -f:強制覆蓋,無需詢問

mv 命令

mv即為moving,用來將文件和目錄移動到另外一個位置,基本用法為:
mv source destination
可用mv命令進行文件重命名,將destination改為新的名字就好

注意,移動一個有軟連接指向的文件會使得軟連接文件失效

rm命令

rm命令用于刪除文件,在rm后跟文件或者目錄名即可

  • -i:在刪除文件前進行詢問確認
  • -r:遞歸刪除目錄文件及其子目錄
  • -f:強制性刪除文件,不進行任何詢問(例如刪除擁有g(shù)it倉庫的文件)

注意,因為rm命令不是將文件回收垃圾站,而是徹底消失,在執(zhí)行rm -rf destination這個命令時務(wù)必小心謹慎,輕則幾天的心血付之東流,重則你正在使用的系統(tǒng)全部被刪干凈
本人借鑒網(wǎng)絡(luò)上前輩的處理經(jīng)驗,附上刪除至回收站代碼(在.zshrc文件中添加)
alias rmtrash=trash alias lltrash=‘ll /.Trash’ trash() { mv -v $@ /.Trash/ }
這種情況下可以執(zhí)行rmtrash命令代替rm命令,lltrash命令查看垃圾箱中的文件

mkdir 命令

創(chuàng)建目錄命令,-p參數(shù)用于遞歸創(chuàng)建

file 命令

查看文件類型命令
File命令將文件分成3類

  • 文本文件:包含可打印字符的文件
  • 可執(zhí)行文件:可在系統(tǒng)上運行的文件
  • 數(shù)據(jù)文件:包含不可打印二進制字符,又不能在系統(tǒng)上運行的文件

查看整個文件

cat命令

cat命令就是簡單的將文件的內(nèi)容全部顯示出來,理解很簡單,介紹下幾個參數(shù)

  • -n:給顯示的內(nèi)容加上行號
  • -b:只給有文本的行添加行號
  • -s:將多個空白行壓縮到單個空白行

more命令

cat命令的缺陷是,一旦運行了cat命令,則對于內(nèi)容非常多的文件,將會持續(xù)打印直到完成,這樣在打印的過程中將無法進行其他的命令,除非強制退出當前命令。為了解決這個問題,開發(fā)人員編寫了more命令。more命令會顯示文本文件的內(nèi)容,但是會在顯示每頁數(shù)據(jù)之后停下來,等待操作人員輸入命令來進行后續(xù)活動。

less命令

less命令的命名實際上是個文字游戲—“l(fā)ess is more”,應(yīng)該說查看文件內(nèi)容就用less命令,不會將文件內(nèi)容打印到終端,并且支持許多命令還有方向鍵查看文件內(nèi)容,這樣在查看文件內(nèi)容時你就有完全控制權(quán)了。

查看部分文件

head命令

顯示文件開頭幾行的內(nèi)容,默認顯示10行,可以大致知道文件的內(nèi)容而不用加載全部文件。參數(shù)與tail命令差不多,接下來著重介紹tail命令

tail命令

tail命令會顯示文件末尾部分的內(nèi)容。默認情況也是顯示文件的末尾10行,也可跟參數(shù)控制

  • -c bytes:顯示文件最后的bytes個字節(jié)的字符
  • -n lines:顯示文件最后的lines行
  • -f:讓tail程序一直保持活動狀態(tài),如果有新的內(nèi)容則在文件的末尾顯示出來
  • -pid=PID:和-f參數(shù)一起,跟蹤一個文件直到ID為PID的進程結(jié)束
  • -s sec:和-f參數(shù)一起,在每次循環(huán)輸出之間休眠sec秒

其中 -f 參數(shù)是tail命令的一個突出的特性,它允許你在其他進程使用該文件時查看文件的內(nèi)容。tail命令會保持活動狀態(tài)并不斷地顯示添加到文件中的內(nèi)容。是實時監(jiān)測系統(tǒng)日志的絕妙方式。

系列鏈接


《Linux與shell腳本編程大全》筆記之shell命令補充

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

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容