歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux下關於文件&&目錄操作的命令小結

Linux下關於文件&&目錄操作的命令小結

日期:2017/3/1 13:53:25   编辑:關於Linux
Linux下關於文件&&目錄操作的命令小結 一、文件操作命令 1.1 查看文件 Linux下查看文件的命令有很多,下面列出的幾個是幾乎所有Linux發行版中都帶有的命令,他們各有特點,適用於不同的場合。 cat [filename] , 查看整個文件,適合小文件(如果看大文件,只能看到屏幕飛速的刷……一瞬間就到尾部了) head [filename],查看文件的首部【默認前10行,可以用-num 選項指定顯示的行數】 tail [filename] , 查看文件的尾部【默認尾10行,可以用-num 選項指定顯示的行數】 more [filename],分段查看文件,適合大文件【輸入命令後先顯示文件的前面一部分,屏幕下方顯示當前閱讀的百分比,形如:--More--(18%);然後按空格鍵翻到下一屏,或按回車鍵滾到下一行】 view [filename],vi的只讀版本,使用vi的命令進行翻頁等操作 上述命令的參數都可以有多個,以達到同時(或依次)查看多個文件的目的。當操作系統為CentOS 5.2時,若輸入參數有多個,則 cat命令 依次顯示多個文件,中間沒有任何間隔符 head命令 依次顯示多個文件的首部,每個文件以 ==> filename <== 開頭【UNIX系統據說是 = = > filename < + = =】 tail命令 依次顯示多個文件的尾部,每個文件以 ==> filename <== 開頭【UNIX系統據說只能使用單參數】 more命令 依次分段顯示多個文件,每個文件以::::::::::::::(\r)filename(\r)::::::::::::::開頭【且每個文件結束後,下方的百分比提示變成:--More--(Next file: filename2 );繼續翻屏或滾行後,開始顯示新文件】 1.2 創建(空白)文件 廣義上說,大部分命令其實都可以創建文件,當他們通過 >> 或 >(輸出重定向操作符)將自己的輸出信息重定向到一個不存在的文件時,系統就會自動幫助創建該文件。不過這樣得到的文件基本都是有內容的,不是所以,下面要介紹的幾個命令,都可以創建我們通常意義上所說的空白新文件。 (1)不帶-c選項的touch命令 格式:touch [filename] 參數,filename 是待創建新文件的路徑加文件名,當你的目的是創建新文件時,它不應與同路徑下其他文件重名【若位於當前目錄下,則無需指定路徑】 例如,在當前目錄下創建一個名為test1的新文件可以使用, touch tes1 補充:touch命令原本的用途是用來修改文件的訪問時間、修改時間,當目標文件不存在時,它的作用變成創建新文件。使用-c選項可以禁止它創建新文件。 (2)vi(m)命令,並在vi(m)裡面使用:wq保存 格式:vim [filename] 或 vi [filename] 參數,filename 是待創建新文件的路徑加文件名,當你的目的是創建新文件時,它不應與同路徑下其他文件重名【若位於當前目錄下,則無需指定路徑】 例如,在當前目錄下創建一個名為test1的新文件可以使用, vim tes1 或 vi tes1 補充:vi(m)命令常被用於創建並編輯一個新文件。使用vi(m)命令後,新文件只處於VI編輯器的緩存內,所以一定要記得用VI編輯器內的 :w 或 :wq 命令保存一下。 (3)cat命令,與重定向操作符 > 或 >> 結合 格式:cat > [filename]或cat >> [filename] 參數,filename是待創建新文件的路徑加文件名,當你的目的是創建新文件時,它不應與同路徑下其他文件重名【若位於當前目錄下,則無需指定路徑】 例如,在當前目錄下創建一個名為test1的新文件可以使用, cat > tes1 或cat >>tes1 補充:cat命令常用於創建小文件或空白文件。此外,使用cat命令創建文件後直接進入文件編輯狀態,此時的輸入分行保存,亦即每當你輸入一個回車鍵就保存一次。(可以打開文件所在文件夾,編輯過程中可以明顯看到文件圖標的變化); 文件編輯結束後,使用ctrl+d快捷鍵結束編輯並退回命令提示符。還有人說,編輯完成後,使用ctrl+c快捷鍵就可以保存文件。但ctrl+c其實是結束當前任務的快捷鍵,使用後回到命令行提示符。在使用ctrl+c前請務必先使用回車鍵保存最後一行輸入,不然你會發現你在文件輸入的最後一行木有了~~~ 1.3 復制文件 cat命令,與重定向操作符>結合的 格式:cat [srcpath_oldname]> [dstpath_newname] 參數,srcpath_oldname是待復制源文件的路徑加文件名【若位於當前目錄下,則無需指定路徑】 參數,dstpath_newname是目標路徑加新文件名【若位於當前目錄下,則無需指定路徑】【無論改不改文件名,必須指定新文件名】 例如:將上層目錄下的test.c文件復制到當前目錄下,並重命名為test.c.bak,命令為 cat ../test.c > test.c.bak 1.4 鏈接文件--ln 鏈接文件的意思,是在現有文件和一個新文件名之間建立新鏈接。(此處的文件名廣義,是指的文件的路徑加狹義文件名)Linux系統中的鏈接文件其實可以理解為Windows系統中為文件建立快捷方式。它可以用來為文件建立別名,也可以使得我們擁有在當前目錄訪問其他目錄下文件的能力,只要我們在當前目錄下為該文件建立了鏈接。鏈接文件的命令是 ln ,它的使用方法如下, 格式:ln [srcpath_oldname] [dstpath_newname] 參數,srcpath_oldname是現有文件的路徑加文件名【若位於當前目錄下,則無需指定路徑】 參數,dstpath_newname是鏈接文件的路徑加新文件名【若位於當前目錄下,則無需指定路徑(但需命新名)】【若不欲為鏈接文件重新命名,則僅需指定鏈接文件路徑(不同於源文件路徑)】 例如,為當前目錄下的test0.99.c文件在 /home/wind/bak/ 目錄下建立鏈接文件,重命名為test.c,命令為 ln test0.99.c /home/wind/bak/test.c 補充:對於原文件與鏈接文件,cat等命令效果相同,而rm等命令則效果不同。 1.5 統計文件信息--wc 格式:wc [filename] 選項:-l 選項統計行數, -w 選項統計單詞數, -c 選項統計字符數 參數,filename是待統計文件的路徑加文件名【若位於當前目錄下,則無需指定路徑】 例如:統計當前目錄下test1文件的行數和字符數,可以使用 wc -lc test1 補充:wc命令默認統計行數、單詞數與字符數全部三樣信息,可以通過選項指定只統計其中一項或任意兩項; 可以同時指定多個文件作為參數,同時統計多個文件的信息。 二、目錄操作命令 2.1 查看當前目錄路徑&&切換目錄 pwd 無參,查看當前目錄的路徑 cd [dstpath] 參數dstpath 用以指定要切換的目錄路徑,可以使用相對路徑或絕對路徑,也可以為空。若為空,則切回到當前用戶的主目錄。 2.2 查看指定目錄下內容--ls 格式:ls [dstpath] 幾個重要的選項:-a 顯示隱藏文件 -l 顯示所列文件的詳細信息 -R 循環列出子目錄的內容 參數 dstpath 用以指定要切換的目錄路徑,可以使用相對路徑或絕對路徑,也可以為空。若為空,則默認查看當前目錄; 2.3 創建目錄--mkdir 格式:mkdir [dstpath_dirname] 選項:-p 創建完整的多層目錄結構 參數 dstpath_dirname 是要待創建目錄的路徑加目錄名【若在當前目錄下建立子目錄,則無需指定目錄的路徑】 例如:使用一句命令,實現在當前目錄下創建 mine 子目錄,並在 mine 目錄下創建 hello 子目錄,再在 hello 目錄下建立 world 子目,可以用 mkdir -p mine/hello/world 補充,(1)從參數可以看出,並沒有限定必須在當前目錄建立子目錄,我們可以在任何指定的路徑下建立目錄; (2)當未使用-p選項時,要求指定的路徑必須存在;反之,使用了-p選項後,只要指定的路徑不存在,系統就幫助自動建立相應目錄結構 2.4 刪除目錄--rmdir 格式:rmdir [dstpath_dirname] 參數 dstpath_dirname 是待刪除目錄的路徑加目錄名【若在當前目錄下刪除子目錄,則無需指定目錄的路徑】 補充:(1)只能刪除空的子目錄【即,除了當前目錄(.)和父目錄(..)外,不包含任何其他子目錄或者文件】 (2)多數UNIX系統下只能刪除當前目錄的子目錄,但CentOS下,則無此限制。 三、通用操作命令 3.1 通用復制--cp 格式:cp [srcpath_oldname] [dstpath_newname] 選項:-r 當復制目錄時,需使用此選項 參數,srcpath_oldname是待復制源文件的路徑加文件名(或目錄名)【若位於當前目錄下,則無需指定路徑】 參數,dstpath_newname是目標路徑加新文件名【若位於當前目錄下,則無需指定路徑】【若不欲修改源文件名,則僅需指定目標文件路徑(不同於源文件路徑)】 例如,將當前目錄下的test.c文件復制到/home/wind/bak/目錄下,文件名不變,命令為 cp test.c /home/wind/bak/ 3.2 通用移動--mv 格式:mv [srcpath_oldname] [dstpath_newname] 參數,srcpath_oldname是待移動源文件的路徑加文件名(或目錄名)【若位於當前目錄下,則無需指定路徑】 參數,dstpath_newname是目標路徑加新文件名(或目錄名)【若位於當前目錄下,則無需指定路徑】【若不欲修改源文件名,則僅需指定目標文件路徑(不同於源文件路徑)】 例如:將當前目錄下的test1文件移動到當前目錄的new子目錄下,可以使用 mv test1 new/ 補充:當目標路徑與源文件路徑一致,且新文件名不同於源文件名時,mv起到重命名的作用。 例如:將new目錄下的test1重命名為test2,可以用命令 mv new/test1 new/test2 3.3 通用刪除--rm 格式:rm [dstpath_dirname] 選項:-r 當復制目錄時,需使用此選項 參數 dstpath_dirname 是待刪除目錄的路徑加文件名(或目錄名)【若位於當前目錄下,則無需指定路徑】 補充:多數UNIX系統下,默認刪除前不需要確認,需加 -i 選項使得刪除文件前有確認提示;【對於防止誤刪有意義】 CentOS系統默認刪除前需要確認,需加 -f 選項使得強制刪除而不顯示確認提示。【這對於刪除非空目錄非常有效】 四、小結 (1)cat命令真是我們文件界的全能小王子,上面提到了其可以查看、創建、復制文件。除此以外,cat命令常用的功能還包括合並文件,例如: cat f1 f2 > file //將文件f1和f2合並為文件file
Copyright © Linux教程網 All Rights Reserved