Linux常用命令解析(三) 檔案操作命令(上)

2021-07-29 06:58:42 字數 2454 閱讀 2017

在linux的學習和程式設計中,大多時候都是對檔案的程式設計。而對於操作檔案,linux提供了對應的命令。
3.1、建立空檔案在有些時候,在一些特殊需求中需要建立乙個空檔案,touch命令可以完成這個功能,touch命令建立的檔案大小為0,其用法如下:

3.2、建立乙個有內容的檔案

linux 下建立檔案,可以使用文字編輯器如vi 等來操作。對於簡單的內容,可以用普通命令來建立檔案。用普通命令建立非空檔案,需要用到linux shell 重定向機制,首先來了解一下重定向。

linux shell 終端啟動的時候會開啟3 個標準檔案:標準輸入(stdin)、標準輸出(stdout)和標準錯誤(stderr)。shell 從標準輸入(通常是鍵盤)接收命令,命令執行結果資訊列印到標準輸出(通常是終端螢幕)上,如有錯誤資訊,則列印到標準錯誤(通常是終端螢幕)上。

shell 允許使用者對輸入輸出進行重定向。輸出重定向允許將輸出資訊從標準輸出重定向到其它檔案上,也可以重定向到某個裝置如印表機上。重定向在linux 下用「>」和「>>」表示,「>」表示輸出到乙個新檔案中,而「>>」則表示輸出到現有檔案的末尾。如果檔案已經存在,則直接操作檔案,否則將建立新檔案。

echo 命令將內容回顯到標準輸出,使用echo 命令加上重定向可以建立乙個帶內容的非空檔案,用法如下:

上面cat命令用於檢視檔案文字內容,在之後會詳細講解,這裡不做說明!

右上圖可以看出,回顯內容如果不加引號,將用單空格替代多空格,否則將原封不動回顯。

3.3、檢視檔案型別

在windows系統中,可以通過檔案字尾名來識別檔案型別,如帶.exe字尾為可執行檔案,帶.doc、.c、.txt等等;而在linux中檔案並沒有標準副檔名,linux也不是根據副檔名來識別檔案型別的,而是根據檔案頭來識別檔案型別的。

在linux中要準確確定乙個檔案的型別,必須依賴於file命令,file命令可以讀取檔案頭並識別檔案型別,包括目錄。而且file命令支援萬用字元,可以一次性檢視當前目錄下所有檔案的型別,用法分別如下:

file命令還可以檢視二進位制可執行檔案的詳細資訊,包括所執行的處理器體系結構,用file命令檢視二進位制檔案如下:

以上可以看出該可執行檔案是通過pc機交叉編譯後可執行在arm中的可執行檔案。

3.4、檢視檔案內容

(1)、用more和less命令檢視

more和less命令可用於瀏覽文字檔案,可以分頁檢視檔案內容,空格鍵可翻頁,按住鍵盤q退出,具體用法如下:

less/more 檔名

兩則命令相比less更加靈活,支援鍵盤pgup和pgdn鍵上下翻頁,還支援文字搜尋,使用less開啟文字後,輸入/***x可搜尋通配內容***x,通配內容顯高亮:

(2)、用head/tail檢視

head和tail可分別檢視檔案頭和檔案尾,一般用於檢視ascll檔案,預設顯示10行,可通過加引數顯示文字多少。支援的引數如下:

實際使用方法如下:

(3)、也可以用cat命令檢視:

3.5、檔案合併

cat命令可以將乙個或多個檔案輸出到標準輸出,如將標準輸出重定位到某個檔案,則可以將多個檔案合併為乙個檔案,用法如下:

cat 檔案1 檔案2 …>檔案n

如果不加選項,這原封不動的顯示各檔案內容,加上一些選項後,可對原始檔進行一些處理,常用選項如下表:

如下對-n選項實際操作舉例,其他選項讀者可自行實踐

Linux常用命令 三 檔案操作命令

1 touch 命令 建立空檔案或修改檔案時間,這個命令的基本資訊如下。命令名稱 touch。所在路徑 bin touch。執行許可權 所有使用者。功能描述 修改檔案的時間戳。2 stat 命令 stat 是檢視檔案詳細資訊的命令,而且可以看到檔案的這三個時間,其基本資訊如下。命令名稱 stat。所...

linux常用命令(三) 檔案搜尋命令

所在路徑 bin find 執行許可權 所有使用者 語法 find 搜尋範圍 匹配條件 功能描述 檔案搜尋 find etc name init 在目錄 etc中查詢檔案initfind etc name init 檔名中包含init的都被列出來 find etc name init 查詢以init...

Linux常用命令(三) 檔案搜尋及幫助命令

命令名稱 find 命令所在路徑 bin find 執行許可權 所有使用者 功能描述 檔案搜尋 語法 find 搜尋範圍 匹配條件 name 根據檔名搜尋 精確搜尋,使用萬用字元 進行模糊搜尋 iname 同 name不區分大小寫 inum 根據inode號搜尋 可以用於找硬鏈結和刪除操作 size...