linux(centOS7)的基本操作(二) 目錄和文件管理


1.顯示當前工作目錄的絕對路徑

pwd

2.顯示當前工作目錄下的子目錄和文件

ls [-l] [-h] [-a]

如果只調用ls,子目錄和文件會簡單的羅列出來,-l表示將其以詳細列表的形式展示,-h表示以適合人閱讀的格式顯示,-a表示同時顯示隱藏目錄或文件,即以點(.)開頭的,例如/root/.ssh

3.切換工作目錄

cd [path]

其中,path為要切換到的目標目錄,可以使用絕對路徑或相對路徑。path為空或~時,表示切換到當前登錄用戶的家目錄;path為兩個點(..)時,表示切換到當前目錄的上一級目錄。下面是一個應用示例

 

如圖,假設當前目錄在opt,現在想切換到rpm,

使用絕對路徑:cd /usr/lib/rpm;

使用相對路徑:cd ../../usr/lib/rpm。

4.創建目錄

mkdir [-p] path

其中,path為要創建的目錄,可以使用絕對路徑(以/開頭)或相對路徑;-p是指創建多級目錄。例如,要在當前目錄下創建/animal/dog目錄,如果只輸入mkdir animal/dog,則會返回錯誤提示:無法創建目錄,沒有那個文件或目錄。原因是當前目錄下根本沒有/animal這一級目錄,現在相當於要一次性創建兩級目錄,因此要使用mkdir -p animal/dog。注意這時不能用mkdir -p /animal/dog,因為這是絕對路徑,意思是要在根目錄下創建這兩級目錄。

5.刪除空目錄

rmdir path

其中path為要刪除的目錄,這個命令只能刪除空目錄,即下面沒有子目錄和文件;第二個命令可以刪除空或非空的目錄。

6.刪除文件或目錄

rm [-r] [-f] source

其中source為要刪除的文件或目錄,當其為目錄時,必須加-r。-f的意思是強制刪除不提示。

7.創建空文件

touch file1 [file2 file3  ...]

其中file1為文件名,該命令支持一次性創建多個文件,文件名中間以空格( )間隔。例如,touch hello.txt abc.txt,即在當前目錄下創建了兩個空文件。

8.復制文件或目錄

cp [-r] source dest

其中,source為要復制的文件或目錄,當其為目錄時,需要加-r,表示"遞歸復制整個目錄",當其為文件時,不需要加-r,加了也沒有效果;desc為要復制到的目標目錄,可以使用絕對路徑或相對路徑。例如,現在要將當前目錄下的/document/aaa.txt復制到當前目錄下的/file目錄下,可以使用cp document/aaa.txt file;而如果想要將當前目錄下的/document目錄整個復制到/file目錄下,需要使用cp -r document file。

9.移動文件或目錄,重命名

mv source dest

這個命令有兩個作用:移動、重命名。

當用作移動時,source為要移動的文件或目錄,dest為目標目錄;

當用作重命名時,source和dest要么都是文件,要么都是目錄,而且是同一個位置。

10.打開文件

cat [-n] file [|more]

其中,file為要打開的文件。這個命令跟vim的區別是,以只讀方式打開文件,不能編輯 。-n的意思是顯示行號;|more的意思是分頁顯示,回車鍵往下翻一行,空格鍵往下翻一頁,q鍵退出。

more file

其中,file為要打開的文件。這個命令會以全屏分頁的方式顯示文件,回車翻一行,空格翻一頁,q鍵退出。

less file

其中,file為要打開的文件。這個命令跟more很相似,區別是不會一次性加載整個文件,而是每次加載要顯示的部分,空格翻頁,q鍵退出。

11.輸出內容到控制台

echo content

其中,content是要輸出的內容;特別的,當content=$PATH時,會輸出linux的環境變量。

12.覆蓋文件或追加內容

>:用內容覆蓋文件,即替代文件原來的內容

>>:保留文件原來的內容,將內容追加到文件末尾

這兩個符號通常跟別的命令合用,以確定上面所說的"內容",例如:

ls -l > file

ls -l >> file

其中,file為文件,這個命令會將當前目錄下的文件以列表的形式寫到文件中;

cat source > file

cat source >> file

其中,source為源文件,file為目標文件,這個命令會將source文件的內容寫到file文件中。

echo content > file

echo content >> file

其中,source為內容,file為目標文件,這個命令會將content寫到文件中。

這兩個符號還可以跟其他的命令合用,總之就是用前面的命令產生"內容",然后用內容替代文件或追加到文件末尾。

13.顯示文件開頭

head [-n numberfile

其中,number為顯示的行數,file為要顯示的文件,如果不加-n選項,則默認顯示前10行。

14.顯示文件末尾

tail [-n numberfile

其中,number為顯示的行數,file為要顯示的文件,如果不加-n選項,則默認顯示末尾10行。

15.監控文件

tail -f file

其中,file為要監控的文件,當該文件有最新更新時,會實時顯示,ctrl+c退出。

16.創建快捷方式

ln -s target name

其中,target為快捷方式要指向的文件或目錄,name為快捷方式名稱。例如,在當前用戶的家目錄下要建立到/etc/X11/applnk目錄的快捷方式,則使用命令:ln -s /etc/X11/applnk query,然后cd query,就進入到指定目錄下。要刪除快捷方式,按照刪除文件或目錄的方式即可,即調用rm命令。

17.查找文件或目錄

find path -name name

按名稱查找,其中path為查找范圍目錄,name為文件或目錄的名稱,可以使用通配符,例如*.txt,hello.*。

find path -size capacity

按大小查找,其中path為查找范圍目錄,capacity為容量,例如+20M表示超過20M,-100k為小於100k。

find path -user username

按所屬用戶查找,其中path為查找范圍目錄,username為用戶名。

find path -mtime dayNum

按最后修改時間查找,其中path為查找范圍目錄,dayNum為天數(前面用-表示x天內,前面用+表示x天以上),例如

find /home/dubhlinn -mtime -7 查找指定目錄下7天內修改的文件

find /home/dubhlinn -mtime +30 查找指定目錄下一個月前修改的文件

18.在文件中查找內容

grep [-n] [-i] content file

其中,content為要查找的內容,file為文件,-n表示顯示行號,-i表示忽略大小寫。例如,要在當前目錄的aaa.txt文件中查找may,顯示行號且忽略大小寫,調用命令:grep -ni may aaa.txt。

另外,grep命令經常跟管道符合用,例如:

cat file | grep [-n] [-i] content

管道符的作用是將第一個命令的處理結果,作為第二個命令的參數。

19.壓縮、解壓縮

(1) gz格式

gzip [-r] source

gunzip [-r] depressed

其中,source為源文件或目錄,depressed為壓縮后的.gz文件或者含有.gz文件的目錄,如果參數為目錄,需要加-r。這兩個命令會直接替換源文件而不保留原文件,例如gzip hello.txt,會直接將當前目錄下的hello.txt替換為hello.txt.gz,反之gunzip hello.txt.gz會直接將當前目錄下的hello.txt.gz替換為hello.txt。

(2) zip格式

zip [-r] depressed source

unzip [-d target] depressed

其中,depressed為.zip格式的壓縮文件,source為源文件或目錄,當其為目錄時需要加-r;target為要解壓到的位置,如果不寫-d選項會默認解壓到當前目錄下。注意,如果要壓縮一個目錄,卻不寫-r選項,也可以壓縮成功,但只是壓縮了空文件夾,沒有包含其中的內容。

(3) tar.gz格式

tar -zcvf depressed source

tar -zxvf depressed [-C target]

其中,source為源文件或目錄,depressed為.tar.gz格式的壓縮文件,target為要解壓到的位置,如果不寫-C選項默認為解壓到當前目錄下。-z表示打包同時壓縮,-v表示顯示詳細信息,-f表示指定壓縮后的文件名,一般-zcvf聯合使用表示壓縮,-zxvf聯合使用表示解壓縮。

20. 常用目錄的意義

在linux根目錄下,有很多已經創建的一級子目錄,有些子目錄有特定的意義。

/bin:存放常用命令,例如cat、ls、cd、cp等;

/boot:存放啟動系統的核心文件;

/library:存放系統的動態連接庫,供應用程序使用;

/etc:存放用戶和組管理的文件;

/mnt:用於臨時掛接別的文件系統;

/sbin:存放系統管理員專用的命令;

/usr:存放應用程序,用戶自己用到的軟件一般安裝在/usr/local目錄下;

/var:存放一些經常變化的內容,例如日志;

/lost+found:平時為空,當系統不正常關閉時,用於存放找不到合適位置的文件;

/home:存放一般用戶的家目錄,例如dubhlinn用戶的家目錄一般在/home/dubhlinn;

/dev:存放硬件設備;

/opt:第三方軟件安裝時默認選擇該目錄。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM