7.1目錄(directory)與路徑
7.1.1相對路徑與絕對路徑
7.1.2目錄的相關操作
比較特殊的目錄:
. 代表此層目錄
.. 代表上一層目錄
-代表前一個工作目錄
~代表目前用戶身份所在的主文件夾
~acount 代表acount這個用戶的主文件夾(acount是賬戶名稱)
常見處理目錄的命令:
cd: 切換目錄 change directory
pwd: 顯示當前路徑,print working directory
mkdir:新建目錄
rmdir:刪除目錄
ls list的意思 list -al 列出所有的文件的詳細權限與屬性
7.2文件與目錄管理
7.2.1查看文件與目錄 :ls
-a 全部文件連同隱藏文件
-d 僅僅列出目錄本身,而不是列出目錄內的數據
-l 列出長數據串 包含文件屬性與權限
7.2.2複製刪除與移動
cp:copy除了複製之外還可以創建鏈接文件(就是創建快捷方式),對比兩文件的新舊而予以更新,以及複製整個目錄等
cp [] 源文件 目標文件
其中常用的參數如下:
-a:相當於-pdr
-p:連同文件屬性一起復制過去,而非使用默認屬性
-d:若原文件爲鏈接文件屬性則複製鏈接文件屬性而非文件本身
-r:遞歸持續複製,用於目錄的複製行爲
-i:若目標文件已經存在則詢問是否覆蓋
可以將多個數據一次複製到一個目錄中去
不同身份執行者也會得到不同的結果,尤其是-p -a這兩個參數,對於不同身份區別很大
rm:移除文件或目錄
參數
-f:就是force的意思,忽略不存在文件,不存在警告信息
-i: 互動模式,再刪除前會詢問
-r:遞歸刪除(小心使用
mv:移動文件與目錄或者更名
-f:強制的意思
-i:詢問
-u:目標文件存在時源文件較新時才更新
7.3文件內容查閱
* cat:由第一行顯示文件內容
* tac:由最後一行開始顯示文件內容
* nl:顯示的時候顯示行號
* more:一頁一頁顯示文件內容
* less:與more類似,但是它可以往前翻頁
* head:只顯示頭幾行
* tail:只顯示後幾行
* od:以二進制讀取文件
7.3.5修改文件時間或者創建新文件
- touch:最常用的功能是創建空文件 將某個文件日期修改爲目前日期
7.4文件與目錄的默認權限與隱藏權限
文件默認權限:umask
chattr:設置文件的隱藏屬性
+i: +i之後可以讓一個文件無法被改動,對於需要強烈的系統安全的人來說相當重要
+a: 對於像log file這種文件很有用,+a之後對數據只能增加不能刪除或者修改久有數據lsattr:顯示文件隱藏屬性;
7.4.3文件特殊權限 SUID,SGID,SBIT
7.4.4查看文件類型:file
7.5命令與文件的查詢
7.5.1腳本文件名查詢
which
7.5.2文件名的查找
whereis
locate:根據/var/lib/mlocate數據庫內的數據記載,找出用戶輸入的關鍵字文件名
updatedb:根據/etc/updatedb.conf的設置,然後去硬盤裏面查找文件並更新/var/lib/mlocate內的數據庫文件
find:
find 目錄或者文件 [時間參數]
或者
find 目錄 -newer 文件
時間參數:ctime mtime atimefind 目錄 用戶或用戶組
find 與文件權限有關參數
7.5權限與時間的關係
- 讓用戶能進入某目錄成爲可工作目錄的基本權限
- 可以使用的命令:cd,切換到工作目錄
- 目錄所需權限,用戶至少需要x;
- 額外需求:如果用戶想用ls查詢目錄內的文件名,還需要r權限
用戶在某個目錄內讀取一個文件基本權限
- 可以使用的命令:cat ,more ,less等
- 目錄所需權限:用戶至少需要x
- 文件所需權限:用戶文件至少需要 r
讓用戶可以修改文件基本權限
- 可使用命令:nano 或者vi
- 目錄所需權限 至少r
- 文件所需權限:至少需要r,w
用戶創建一個文件所需基本權限
- 目錄所需權限:至少需要w ,x重點在w
讓用戶進入目錄並執行某個命令的基本權限
- 目錄所需權限:至少需要x
- 文件所需權限 ,用戶至少需要x