Linux 基礎-檔案及目錄管理
本文大部分內容參看 《Linux基礎》一書,根據自己的工程經驗和理解加以修改、拓展和優化形成了本篇博客,不適合 Linux 純小白,適合有一定基礎的開發者閱讀,
一,概述
在 Linux 中一切皆檔案,檔案管理主要是涉及檔案/目錄的創建、洗掉、移動、復制和查詢,有mkdir/rm/mv/cp/find 等命令,其中 find 檔案查詢命令較為復雜,引數豐富,功能十分強大;查看檔案內容是一個比較大的話題,文本處理也有很多工具供我們使用,本文涉及到這兩部分的內容只是點到為止,沒有詳細講解,另外給檔案創建一個別名,我們需要用到 ln,使用這個別名和使用原檔案是相同的效果,
二,檔案及目錄常見操作
2.1,創建、洗掉、移動和復制
創建和洗掉命令的常用用法如下:
- 創建目錄:
mkdir - 洗掉檔案:
rm file(洗掉目錄 rm -r) - 移動指定檔案到目標目錄中:
mv source_file(檔案) dest_directory(目錄) - 復制:
cp(復制目錄 cp -r)
這些命令的常用和復雜例子程式如下
$ find ./ | wc -l # 查看當前目錄下所有檔案個數(包括子目錄)
14995
$ cp –r test/ newtest # 使用指令 cp 將當前目錄 test/ 下的所有檔案復制到新目錄 newtest 下
$ mv test.txt demo.txt # 將檔案 test.txt 改名為 demo.txt
2.2,目錄切換
- 切換到上一個作業目錄:
cd - - 切換到 home 目錄:
cd or cd ~ - 顯示當前路徑:
pwd - 更改當前作業路徑為 path:
$ cd path
2.3,列出目錄內容
- 顯示當前目錄下的檔案及檔案屬性:
ls - 按時間排序,以串列的方式顯示目錄項:
ls -lrt
ls 命令部分引數解釋如下:
-a:顯示所有檔案及目錄 (. 開頭的隱藏檔案也會列出)-l:除檔案名稱外,亦將檔案型態、權限、擁有者、檔案大小等資訊詳細列出-r:將檔案以相反次序顯示(原定依英文字母次序)-t: 將檔案依建立時間之先后次序列出
常用例子如下:
$ pwd
/
$ ls -al # 列出根目錄下所有的檔案及檔案型別、大小等資訊
total 104
drwxr-xr-x 1 root root 4096 Dec 24 01:24 .
drwxr-xr-x 1 root root 4096 Dec 24 01:24 ..
drwxrwxrwx 11 1019 1002 4096 Jan 13 09:34 data
drwxr-xr-x 15 root root 4600 Dec 24 01:24 dev
drwxr-xr-x 1 root root 4096 Jan 8 03:15 etc
drwxr-xr-x 1 root root 4096 Jan 11 05:49 home
drwxr-xr-x 1 root root 4096 Dec 23 01:15 lib
drwxr-xr-x 2 root root 4096 Dec 23 01:15 lib32
... 省略
2.4,查找目錄或者檔案 find/locate
1,查找檔案或目錄
$ find ./ -name "cali_bin*" | xargs file # 查找當前目錄下檔案名含有 cali_bin 字串的檔案
./classifynet_calib_set/cali_bin.txt: ASCII text
./calib_set/cali_bin.txt: ASCII text
./cali_bin.txt: ASCII text
2,查找目標檔案夾中是否含有 obj 檔案:
$ find ./ -name '*.o'
find 是實時查找,如果需要更快的查詢,可試試 locate;locate 會為檔案系統建立索引資料庫,如果有檔案更新,需要定期執行更新命令來更新索引庫,
$ locate string # 尋找包含有 string 的路徑
2.5,查看及搜索檔案內容
1,查看檔案內容命令:cat vi head tail more,
$ cat -n # 顯示時同時顯示行號
$ ls -al | more # 按頁顯示串列內容
$ head -1 filename # 顯示檔案內容第一行
$ diff file1 file1 # 比較兩個檔案間的差別
2,使用 egrep 查詢檔案內容:
$ egrep "ls" log.txt # 查找 log.txt 檔案中包含 ls 字串的行內容
-rw-r--r-- 1 root root 2009 Jan 13 06:56 ls.txt
三,總結
利用 ls -al 命令查看檔案屬性及權限,已知了 Linux 系統內檔案的三種身份(檔案擁有者、檔案所屬群組與其他用戶),每種身份都有四種權限(rwxs),可以使用 chown, chgrp, chmod 去修改這些權限與屬性,檔案是實際含有資料的地方,包括一般文本檔案、資料庫內容檔案、二進制可執行檔案(binary program)等等,
- 檔案管理,目錄的創建、洗掉、查詢、管理:
mkdirrmmvcp - 檔案的查詢和檢索命令:
findlocate - 查看檔案內容命令:
catvitail more - 管道和重定向命令:
;|&&>
四,參考資料
《Linux基礎》
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/539041.html
標籤:其他
