文件管理主要命令
cd 切換目錄
pwd 顯示當前目錄
mkdir 新建目錄
rmdir 刪除空目錄
. 代表當層目錄
.. 代表上一層目錄
- 代表前一個工作目錄
~ 代表用戶身份所在的主文件夾
~account 代表account這個用戶的主文件夾
文件管理類的命令
ls [-aAdfFhilnrRst] 目錄名稱
ls [--color={never,auto,always}] 目錄名稱
ls [--full-time] 目錄名稱
-a 全部文件,隱藏文件也一起列出
-A 全部文件皮壁,隱藏文件也列出椭更,不包括. 和..兩個目錄
-d 列出目錄本身,文件數(shù)據(jù)不列出
-f 直接列出結(jié)果蛾魄,不排序
-F 根據(jù)文件虑瀑,目錄等給予附加的目錄結(jié)構(gòu),比如 *:代表可執(zhí)行文件滴须,/: 代表目錄 舌狗,=:代表socket文件 ,|:代表FIFO文件
-h 文件容量已人類易讀的方式列出來
-i 列出inode號碼
-l 列出場數(shù)據(jù)傳描馅,包含文件和權(quán)限把夸,比較蟬蛹
-n 列出UID和GID,非用戶與用戶組的名稱
-r 排序結(jié)果反響輸出
-R 目錄的子目錄也顯示出來
-S 文件容量大小排序铭污,不是文件名排序
-t 時間排序恋日,不是文件名
--color=never 必要根據(jù)文件特性給予顏色顯示
--color=always 顯示顏色
--color=auto 讓系統(tǒng)自行根據(jù)設(shè)置判斷是否給予顏色
--full-time 用完整的時間模式輸出
--time 輸出訪問時間或者改變權(quán)限屬性時間,不是內(nèi)容更改時間
cp 復制文件或者目錄
基本格式
- cp [-adfilprsu] 源文件(source) 目標文件(destination)
2.cp [options] source1 source2 ... directory
-a 相當于pdr的意思
-d 如果源文件為連接文件屬性(link file) 復制連接文件屬性嘹狞,非本身
-f 強制岂膳,如果目標文件已經(jīng)存在,并且無法開啟磅网,那么刪除目標文件在嘗試一次
-i 如果目標文件已經(jīng)存在谈截,覆蓋的時候會先詢問操作的先行,比較常用
-l 進行硬連接(hard link)的創(chuàng)建涧偷,而非復制文件本身
-p 連同文件屬性一起復制過去簸喂,而非使用默認屬性
-r 遞歸持續(xù)復制,用于目錄的復制行為
-s 復制成為括號的鏈接文件
-u 若destination比source舊才更新燎潮,否則不更新
cp不加任何參數(shù)喻鳄,復制的是源文件,而非連接文件
復制文件注意一下幾點
1.是否需要保證來源文件信息
2.源文件是否為軟連接文件
3.源文件是否為特殊文件
4.源文件是否為目錄
rm(移除文件或者目錄)
基本格式
rm [-fir] 文件或者目錄
-f force的意思确封,忽略不存在的文件除呵,不會出現(xiàn)警告
-i 互動模式,刪除之前會詢問用戶是否操作
-r 遞歸刪除爪喘,相當危險颜曾,最常用的目錄刪除
mv (移動文件與目錄,或更名)
-f 強制的意思秉剑,如果目標文件存在泛豪,不會詢問直接覆蓋
-i 目標文件存在,會詢問是否覆蓋
-u 如果目標文件存在,source比較新候址,會更新目標文件
文件內(nèi)容查閱
cat 從第一行顯示文件內(nèi)容
tac 從最后一行開始顯示文件內(nèi)容吕粹,tac是cat的倒寫
nl 顯示的時候,順便輸出行號
more 一頁一頁顯示文件內(nèi)容
less 相對more的又是岗仑,可以往前翻頁
head 只看投機航
tail 只看結(jié)尾幾行
od 用二進制的方式讀取文件內(nèi)容
1.cat命令
格式 cat [-AbEnTv]
-A : 相當-vET的整合參數(shù),可列出特殊字符聚请,而不是空白
-b:列出行號荠雕,僅針對非空白做行號顯示,空白行不標記行號
-E:將結(jié)尾的斷行字符$顯示出來
-n:打印出行號驶赏,空白也會有行號
-T:將tab按鍵用^I 顯示出來
-v:列出一些看不出來的特殊字符
2.nl 命令
格式:nl [-bnw] 文件
-b:指定行號的指定方式
-b a :表示無論是否為空行炸卑,也同樣列出行號,類似cat -n
-b t :如果有空行煤傍,空的哪一行不要列出行號
-n:列出行號的表示方法
-n ln:行號在屏幕的最左邊演示
-n rn:行號在屏幕的最右邊顯示
-n rz:行號在最左邊盖文,加0顯示
ex:nl -b a -n rz filename
3.more命令
格式 :more filename
空格:向下翻一頁
enter:下滾動一行
/字符串:顯示內(nèi)容中,向下查詢字符串這個關(guān)鍵字
:f :立刻顯示文件名和目前顯示的行數(shù)
q :立即離開蚯姆,不再顯示文件內(nèi)容
b:往回翻頁五续,只對文件有用,對管道無用
4.less命令
格式:less filename
pagedown:向下翻一頁
pageup:向上翻一頁
enter:下滾動一行
/字符串:顯示內(nèi)容中龄恋,向下查詢字符串這個關(guān)鍵字
疙驾?字符串:顯示內(nèi)容中,向上查詢字符串這個關(guān)鍵字
n:重復前一個查詢
N:反響重復前一個查詢
:f :立刻顯示文件名和目前顯示的行數(shù)
q :立即離開郭毕,不再顯示文件內(nèi)容
5.數(shù)據(jù)選取它碎,head命令
格式:head [-n number] 文件
-n:后面接數(shù)字,代表顯示幾行的意思
6.數(shù)據(jù)選取显押, tail命令(常用)
-n :代表顯示幾行
-f:表示持續(xù)檢測后面所接的文件名扳肛,要等到按下ctrl-c才會結(jié)束tail的檢測
exp:如果不知道文件有幾行,但是執(zhí)行列出1000行以后的數(shù)據(jù)
tail -n +1000 filename
7.od [-t type] 文件
-t : 后面可以接很多類型為type的輸出
a:使用默認的字符來輸出
c:使用ascii字符來輸出
d:使用十進制來輸出數(shù)據(jù)乘碑,每個證書占用size bytes
f:使用浮點數(shù)來輸出數(shù)據(jù)挖息,
o:使用八進制輸出數(shù)據(jù)
x:使用十六進制來輸出數(shù)據(jù)
od -t oCc filename表示將內(nèi)容和ascll中的內(nèi)容進行比較
8.touch命令
格式: touch [-acdmt] 文件
-a :僅修改訪問時間
-c :僅修改文件時間,如果文件不存在則不創(chuàng)建新文件
-d:后面可以接與修改的日期而不用目前的日期蝉仇,也可以使用--date=“日期或者時間”
-m:僅修改mtime
-t:后面接與修改的時間而不用目前的時間
范例一:新建一個空的文件并且查看時間
9.umask
表示的是修改默認創(chuàng)建文件的權(quán)限接口
直接輸入表示查看默認創(chuàng)建文件的給予權(quán)限
ex 022 表示在group和other被拿掉w權(quán)限
要改變權(quán)限只需要
umask 002
表示拿掉other的w權(quán)限
每個選項總和為6
10.文件隱藏屬性 chattr(設(shè)置文件的隱藏屬性旋讹,理解為changeattribute)
格式:chattr [+-= ] [ASacdistu] 文件或目錄名稱
+:增加某一個特殊參數(shù),其他原本存在的參數(shù)不動
-:減少某一個特殊參數(shù)轿衔,其他原本存在的參數(shù)不動
=:僅有后面接的參數(shù)
A:當設(shè)置了A這個屬性的時候沉迹,如果你訪問這個目錄或者文件時,他的訪問時間atime將不會被修改害驹,可避免i/o慢的機器過渡訪問磁盤鞭呕,對速度慢的計算機有幫助
S:一般文件是異步寫入磁盤,如果加上這個屬性宛官,進行任何文件的修改葫松,這個改動會同步寫入磁盤中
a:設(shè)置a之后瓦糕,這個文件只能增加數(shù)據(jù),不能刪除也修改數(shù)據(jù)腋么,只有root才能設(shè)置這個屬性
c:這個屬性設(shè)置之后咕娄,將會自動將這個文件壓縮,讀取的時候會自動解壓珊擂,存儲的時候圣勒,將會進行先壓縮再存儲
d:dump程序被執(zhí)行的時候,設(shè)置d屬性可以將該文件不會被dump備份
i:最無敵的參數(shù)摧扇,可以讓一個文件圣贸,不能被刪除,改名扛稽,設(shè)置連接也無法寫入吁峻,添加數(shù)據(jù),對系統(tǒng)安全幫助特別大在张,只有root可以設(shè)置這個屬性
s:文件中設(shè)置了s屬性用含,如果這個文件被刪除,將會完全從這個磁盤空間中刪除
u:和s相反瞧掺,當使用u配置文件耕餐,如果文件被刪除了,數(shù)據(jù)的內(nèi)容其實還在磁盤中辟狈,可以使用來找回文件
exp:chattr +i filename
讓這個文件不能被刪除
10.lsattr(理解為listattribute)顯示文件隱藏屬性
格式:lsattr [-adR] 文件或者目錄
-a :將隱藏文件的屬性也展示出來
-d:如果連接的是目錄肠缔,僅僅列出目錄本身的屬性
-R:子目錄的屬性也展示出來
文件特殊權(quán)限SUID,SGID,SBIT
1.SUID
1.1 這個權(quán)限僅僅對二進制程序有效
1.2 執(zhí)行者對改程序要有x的執(zhí)行權(quán)限
1.3.本權(quán)限只在執(zhí)行過程中有效
1.4執(zhí)行者需要有程序所有者的權(quán)限
2.SGID
可以針對文件或者目錄設(shè)置
2.1 對二進制程序有用
2.2 程序執(zhí)行者對該程序來說,需要有x權(quán)限
2.3 執(zhí)行者執(zhí)行過程中會獲得程序用戶組支持
3.StickyBit
針對目錄有效哼转,對文件已經(jīng)沒有效果
當用戶對這個目錄有wx權(quán)限
用戶在該目錄下創(chuàng)建文件或者目錄僅有自己和root可以刪除該文件
設(shè)置使用chmod明未,修改權(quán)限來設(shè)置,exp:chmod 4755 filename
4為 SUID
2為 SGID
1為 SBIT
文件相關(guān)
一.查看文件類型 file
exp : file filename 必須為當前路徑下文件壹蔓,或者為全路徑
二.命令和文件的查詢
1.腳本文件名的查詢 which
尋找執(zhí)行文件
which [-a] command
-a:將所有由path目錄中可以找到的命令均列出趟妥,而不止第一個被找到的命令名稱
2.文件名的查找 whereis [-bmsu] filename
-b:只找二進制格式的文件
-m:只找在說明文件路徑下的文件
-s:只找source源文件
-u:查找不在上述三個選項的特殊文件
以后也會有find這個查詢文件的命令,但是find使用的時間會相對多很多佣蓉,因為find是直接查找硬盤披摄,如果你的硬盤老舊,那就要等很久勇凭,whereis可以加入?yún)?shù)查找相關(guān)的數(shù)據(jù)疚膊,如果你要找可執(zhí)行的文件,那么加上-b就可以了虾标,不加參數(shù)會展示所有數(shù)據(jù)
2.1 同樣是查找文件的命令
locate [-ir] keyword
-i 忽略大小寫的差異
-r 后面可以接正則表達式的顯示方程式
locate尋找的數(shù)據(jù)是由已經(jīng)創(chuàng)建的數(shù)據(jù)庫/var/lib/mlocate/里面的數(shù)據(jù)庫里面找到了寓盗,所以不用查詢硬盤,這個數(shù)據(jù)庫每天更新一次
如果要手動更新,那么輸入傀蚌,updatedb就可以了
2.2 find 查找文件
find [path] [option] [action]
參數(shù):
- 與時間有關(guān)的參數(shù)基显,有 -atime,-ctime善炫,-mtime
-mtime n :n位數(shù)字撩幽,意義為在n天之前的“一天之內(nèi)”被更改過的文件名
-mtime +n :列出在n天之前,不含本身箩艺,被更改過的文件名
-mtime -n 列出在n天之內(nèi)摸航,含本身,被更改過的文件名
-newer file : file為一個存在的文件舅桩,列出比這個文件更新的文件名
exp: find / -mtime 0
find /etc -newer /etc/passwd
比如+4代表,大于等于五天之前的文件名
-4代表小于等于4天內(nèi)的文件名
4表示4-5天的哪一天的名字
2.和用戶和組名有關(guān)的參數(shù)
-uid n:n為數(shù)字雨膨,數(shù)字是用戶的賬號id擂涛,即uid
-gid n:n為數(shù)字,這個數(shù)字是用戶組名的ID聊记,即GID撒妈,這個GID記錄在 /etc/group中
-user name: name為用戶賬號名稱
-group name:name為用戶組名,例如users
-nouser :找尋文件所有者不存在的人
-no group :找尋用戶組不存在的文件
- 和文件名有關(guān)的操作
-name filename:查找文件名為filename的文件
-size [+-] SIZE :查找比size還要大 + 或者小 - 的文件排监,這個size的規(guī)格有:
c:代表byte狰右,k:代表1024yes,所以要找比50k還大的文件就是舆床,-size +50k
-type TYPE: 查找文件的類型為type的棋蚌,類型主要有,一般正規(guī)文件 f挨队,設(shè)備文件 b谷暮,c
目錄 d,連接文件l盛垦,socket s湿弦,以及fifo p等屬性
-perm -mode:查找文件權(quán)限,剛好等于mode 的文件腾夯,這個mode為類似chmod 的屬性值颊埃,舉例來說 -rwsr-xr-x的屬性為4755
-perm+mode:查找文件權(quán)限,包含任一mode的權(quán)限的文件蝶俱,舉例來說班利,我們查找 -rwxr-xr-x,即-perm +755時跷乐,但一個文件屬性為 -rw-------也會被列出來肥败,因為有-rw屬性存在