Linux Day04

文件管理命令:

cd:這個命令是用來變更用戶所在目錄的,后面如果什么都不跟侯繁,就會直接到當(dāng)前用戶的根目錄下胖喳。

./ 表示當(dāng)前目錄,../ 表示當(dāng)前目錄的上一級目錄

pwd:打印出當(dāng)前所在目錄贮竟。

mkdir:創(chuàng)建目錄丽焊。‘mkdir’ 其實就是make directory的縮寫咕别。

-m :指定創(chuàng)建目錄的權(quán)限技健。

-p : 可以創(chuàng)建多級目錄。如果要創(chuàng)建目錄已經(jīng)存在惰拱,會覆蓋雌贱。

rmdir:刪除空目錄。用法與mkdir相同,用的少帽芽,一般用rm代替删掀。

rm:刪除文件或目錄。最常用导街。

-m : 刪除目錄是用的選項披泪,等同于rmdir。但是可以刪除非空目錄搬瑰。同時會提示是否確認(rèn)刪除款票。

-f : 強(qiáng)制刪除。不會提示確認(rèn)刪除泽论。就算文件要刪除的文件不存在也不會報錯艾少。要刪除一個目錄時,即使加上 ‘-f’ 選項也會報錯翼悴,所以刪除目錄一定要加 ‘-r’ 選項缚够。

cp :copy的簡寫,即拷貝鹦赎。格式為 cp [選項] [ 來源文件 ] [目的文件] 谍椅。

-r :如果要拷貝目錄是必須加 -r。

-i : 安全選項古话。和rm類似雏吭,如果遇到一個存在的文件,會問是否覆蓋陪踩。在Redhat 和 centos系統(tǒng)中杖们,cp默認(rèn)覆蓋。

mv:‘mv’ 是move的簡寫肩狂。格式為 mv [ 選項 ] [源文件] [目標(biāo)文件] 摘完。

-i :安全選項。會有提示婚温。

該命令有幾種情況:

1) 目標(biāo)文件是目錄描焰,而且目標(biāo)文件不存在;

2) 目標(biāo)文件是目錄栅螟,而且目標(biāo)文件存在荆秦;

3) 目標(biāo)文件不是目錄不存在;

4) 目標(biāo)文件不是目錄存在力图;

目標(biāo)文件是目錄步绸,存在和不存在,移動的結(jié)果是不一樣的吃媒,如果存在瓤介,則會把源文件移動到目標(biāo)文件目錄中吕喘。不存在的話移動完后,目標(biāo)文件是一個文件刑桑。相當(dāng)于重命名氯质,常用。

cat: 查看文件祠斧。

-n : 查看文件時闻察,把行號也顯示到屏幕上。

-A : 顯示所有東西出來琢锋,包括特殊字符.

tac :用來把文件的內(nèi)容顯示在屏幕上辕漂,只不過是先顯示最后一行,然后是倒數(shù)第二行吴超,最后顯示的是第一行钉嘹。

more:查看文件內(nèi)容,當(dāng)屏幕占滿后按空格才能看下一屏幕鲸阻。按q可提前退出跋涣。

less:查看文件內(nèi)容,可以上下翻閱鸟悴。按 ‘j’ 鍵可以向下移動仆潮,按 ‘k’ 鍵向上移動。

在用more和less查看內(nèi)容是可以通過:按一下 ‘/’ 鍵遣臼,然后輸入一個word回車,這樣就可以查找這個word了拾并。如果是多個該word可以按 ‘n’ 鍵顯示下一個揍堰。另外也可以不按 ‘/’ 而是按 ‘?’ 后邊同樣跟word來搜索這個word,唯一不同的是嗅义, ‘/’ 是在當(dāng)前行向下搜索屏歹,而 ‘?’ 是在當(dāng)前行向上搜索。

head:顯示文件的前十行之碗。如果加 -n 選項則顯示文件前n行蝙眶。

tail:顯示文件最后十行。如果加-n 選項則顯示文件最后n行褪那。

文件的所屬主以及所屬組:

一個linux目錄或者文件幽纷,都會有一個所屬主和所屬組。所屬主博敬,即文件的擁有者友浸,而所屬組,即該文件所屬主所在的一個組偏窝。

可通過ls -l查看文件屬性收恢。

[root@localhost hadoop]# ls -l

總用量 4

-rw-r--r--. 1 root root 13 6月? 16 23:08 file.txt

[root@localhost hadoop]#

1

2

3

4

Linux文件屬性:

[root@localhost etc]# ls -l yum

總用量 4

drwxr-xr-x. 2 root root? 6 4月? 13 20:58 fssnap.d

drwxr-xr-x. 2 root root? 83 6月? 5 21:45 pluginconf.d

drwxr-xr-x. 2 root root? 26 4月? 13 20:58 protected.d

drwxr-xr-x. 2 root root? 37 4月? 13 20:58 vars

-rw-r--r--. 1 root root 444 4月? 13 20:58 version-groups.conf

1

2

3

4

5

6

7

在查看文件屬性時武学,有9列內(nèi)容:具體含義如下:

第一列:代表這個文件是“目錄、文件或鏈接文件等”伦意。

若是【d】則代表該條記錄是目錄火窒;

若是【-】則代表是文件;

若是【|】則表示為連接文件(linkfile)驮肉;

若是【b】則表示設(shè)備文件里面的可供存儲的接口設(shè)備熏矿;

若是【c】則表示設(shè)備文件里面的串口端口設(shè)備,例如鍵盤缆八、鼠標(biāo)曲掰。

接下來以3個為一組:“rwx”

其中【r】代表可讀(read);

其中【w】代表可寫(write)奈辰;

其中【x】代表可執(zhí)行(execute)栏妖;

這3個權(quán)限的位置不會改變,如果沒有相應(yīng)的權(quán)限奖恰,就會出現(xiàn)減號【-】

前三位為所屬主(user)的權(quán)限吊趾,中間三位為所屬組(group)的權(quán)限,最后三位為其他非本群組(others)的權(quán)限瑟啃。

第二列表示有多少文件名連接到此節(jié)點(i-node)

第三列表表示這個文件(或目錄)的“所有者賬號”

第四列表表示這個文件的所屬用戶組

第五列為這個文件的大小论泛,默認(rèn)單位為B

第六列為這個文件的創(chuàng)建文件日期或者是最近的修改日期

第七列為文件名.

圖:示例

更改文件權(quán)限:

更改所屬組:chgrp

語法:chgrp [組名] [文件名]

‘chgrp’命令也可以更改目錄的所屬組,但是只能更改目錄本身蛹屿,而目錄下面的目錄或者文件沒有更改屁奏,要想級聯(lián)更改子目錄以及子文件,需要加個參數(shù):-R错负。

該命令使用不多坟瓢,可用可用chown代替。

更改文件的所屬主:chown

語法: chown [ -R ] 賬戶名 文件名 chown [-R] 賬戶名:組名 文件名

這里的-R選項只作用于目錄犹撒,作用是級聯(lián)更改折联,即不僅更改當(dāng)前目錄,連目錄里的目錄或者文件全部更改识颊。

改變用戶讀文件的讀寫執(zhí)行權(quán)限:chmod

chmod 語法: chmod [-R] xyz 文件名 (這里的xyz诚镰,表示數(shù)字,‘-R’ 選項作用同chown祥款,級聯(lián)更改)

在linux中為了方便更改這些權(quán)限清笨,linux使用數(shù)字去代替rwx, 具體規(guī)則為 ‘r’ 等于4, ‘w’ 等于2, ‘x’ 等于1, ‘-‘ 等于0。

舉個例子: ‘-rwxrwx—’ 用數(shù)字表示就是 ‘770’, 具體是這樣來的: ‘rwx’ = 4+2+1=7; ‘rwx’ = 4+2+1=7; ‘- -

-‘ = 0+0+0=0.

在linux系統(tǒng)中镰踏,默認(rèn)一個目錄的權(quán)限為 755函筋,而一個文件的默認(rèn)權(quán)限為644.

’chmod’ 還支持使用rwx的方式來設(shè)置權(quán)限。九個屬性分別是(1)user (2)group (3)others,

可以使用u, g, o 來代表它們?nèi)齻€的屬性奠伪,此外跌帐, a 則代表 all 亦即全部首懈。例:chmod u-x test/test2

另外還可以針對u, g, o, a增加或者減少某個權(quán)限(讀,寫谨敛,執(zhí)行)究履,例:chmod u-x test/test2

umask:

umask語法: umask xxx (這里的xxx代表三個數(shù)字)

umask預(yù)設(shè)是0022,其代表什么含義脸狸?先看一下下面的規(guī)則:

1)若用戶建立為普通文件最仑,則預(yù)設(shè) ‘沒有可執(zhí)行權(quán)限’, 只有’rw’兩個權(quán)限。最大為666 (‘-rw-rw-rw-‘).

2)若用戶建立為目錄炊甲,則預(yù)設(shè)所有權(quán)限均開放泥彤,即777 (‘drwxrwxrwx’).

umask數(shù)值代表的含義為,上邊兩條規(guī)則中的默認(rèn)值(文件為666卿啡,目錄為777)需要減掉的權(quán)限吟吝。所以目錄的權(quán)限為 'rwxrwxrwx' - '----w--w-' = 'rwxr-xr-x',普通文件的權(quán)限為 'rw-rw-rw-' - '----w--w-' = 'rw-r--r--'. umask的值是可以自定義的颈娜,比如設(shè)定umask 為 002剑逃,您再創(chuàng)建目錄或者文件時,默認(rèn)權(quán)限分別為 'rwxrwxrwx' - '-------w-' = 'rwxrwxr-x' 和 'rw-rw-rw-' - '-------w-' = 'rw-rw-r--'.

umask 可以在 /etc/bashrc 里面更改官辽,預(yù)設(shè)情況下蛹磺,root的umask為022,而一般使用者則為002同仆,因為可寫的權(quán)限非常重要萤捆,因此預(yù)設(shè)會去掉寫權(quán)限。

修改文件特殊屬性:chattr

語法: chattr [+-=][ASaci [文件或者目錄名]

‘+-=’ : 分別為增加俗批、減少鳖轰、設(shè)定

‘A’ : 增加該屬性后,文件或目錄的atime將不可被修改扶镀;

‘S’ : 增加該屬性后,會將數(shù)據(jù)同步寫入磁盤中焰轻;

‘a(chǎn)’ : 增加該屬性后臭觉,只能追加不能刪除,非root用戶不能設(shè)定該屬性辱志;

‘c’ : 自動壓縮該文件蝠筑,讀取時會自動解壓;

‘i’ : 增加后揩懒,使文件不能被刪除什乙、重命名、設(shè)定鏈接接已球、寫入臣镣、新增數(shù)據(jù)辅愿;

讀取文件或目錄的特殊權(quán)限:lsattr

語法為 lsattr [-aR] [文件/目錄名]

‘-a’ : 類似與ls 的-a 選項,即連同隱藏文件一同列出忆某;

‘-R’ : 連同子目錄的數(shù)據(jù)一同列出点待。

在Linux下搜索一個文件:

(1)通過which可以查找文件的絕對路徑。

需要注意的一點是弃舒,which只能用來查找PATH環(huán)境變量中出現(xiàn)的路徑下的可執(zhí)行文件癞埠。

(2)whereis: 通過預(yù)先生成的一個文件列表庫去查找跟給出的文件名相關(guān)的文件。

語法: whereis [-bmsu] [文件名稱]

‘-b’ : 只找binary 文件

‘-m’ : 只找在說明文件manual路徑下的文件

‘-s’ : 只找source來源文件

‘-u’ : 沒有說明檔的文件

這個命令一般很少使用聋呢。

(3)‘locate’ 類似于’whereis’, 也是通過查找預(yù)先生成的文件列表庫來告訴用戶要查找的文件在哪里苗踪。

用的也不是太多。

(4)find:使用最多的搜索命令削锰。

語法 : find [路徑] [參數(shù)]

常用參數(shù):

‘-atime +n/-n’ : 訪問或執(zhí)行時間大于/小于n天的文件.

‘-ctime +n/-n’ : 寫入通铲、更改inode屬性(例如更改所有者、權(quán)限或者鏈接)時間大于/小于n天的文件喂窟。

‘-mtime +n/-n’ : 寫入時間大于/小于n天的文件测暗。

注:文件的三個time屬性。

文件的 Access time也就是 ‘a(chǎn)time’ 是在讀取文件或者執(zhí)行文件時更改的磨澡。文件的 Modified time也就是 ‘mtime’ 是在寫入文件時隨文件內(nèi)容的更改而更改的碗啄。文件的 Create time也就是 ‘ctime’ 是在寫入文件、更改所有者稳摄、權(quán)限或鏈接設(shè)置時隨inode的內(nèi)容更改而更改的稚字。 因此概作,更改文件的內(nèi)容即會更改mtime和ctime蘸嘶,但是文件的ctime可能會在 mtime 未發(fā)生任何變化時更改,例如醋粟,更改了文件的權(quán)限仗阅,但是文件內(nèi)容沒有變化昌讲。

‘stat’ 命令可用來列出文件的 atime、ctime 和 mtime减噪。

atime不一定在訪問文件之后被修改短绸,因為:使用ext3文件系統(tǒng)的時候,如果在mount的時候使用了noatime參數(shù)那么就不會更新atime的信息筹裕〈妆眨總之, 這三個 time stamp 都放在 inode 中。若 mtime, atime 修改 inode 就一定會改, 既然 inode 改了, 那 ctime 也就跟著要改了朝卒。

‘-name filename’ 直接查找該文件名的文件证逻,這個選項使用很多。

‘-type filetype’ 通過文件類型查找抗斤。filetype 包含了 f, b, c, d, l, s 等囚企。

-:普通文件

d :目錄

c:字符設(shè)備

b:塊設(shè)備

s:套接口文件

l:符號連接

Linux文件類型:

1)普通文件(regular file):就是一般類型的文件丈咐,當(dāng)用 ls -l 查看某個目錄時,第一個屬性為 ‘-‘ 的文件就是正規(guī)文件洞拨,或者叫普通文件扯罐。正規(guī)文件又可分成純文字文件(ascii)和二進(jìn)制文件(binary)。純文本文件是可以通過cat, more, less等工具直接查看內(nèi)容的烦衣,而二進(jìn)制文件并不能歹河。例如我們用的命令/bin/ls 這就是一個二進(jìn)制文件。

2)目錄(directory):這個很容易理解花吟,就是目錄秸歧,跟windows下的文件夾一個意思,只不過在linux中我們不叫文件夾衅澈,而是叫做目錄键菱。ls -l 查看第一個屬性為 ‘d’.

3)鏈接文件(link):ls -l 查看第一個屬性為 ‘l’, 類似windows下的快捷方式。

4)設(shè)備(device):與系統(tǒng)周邊相關(guān)的一些檔案今布,通常都集中在 /dev 這個目錄之下! 通常又分為兩種:塊(block)設(shè)備 :就是一些儲存數(shù)據(jù)经备,以提供系統(tǒng)存取的接口設(shè)備,簡單的說就是硬盤部默。例如您的一號硬盤的代碼是 /dev/sda1, 第一個屬性為 ‘b’侵蒙;另一種是字符(character)設(shè)備 :是一些串行端口的接口設(shè)備,例如鍵盤傅蹂、鼠標(biāo)等等纷闺,第一個屬性為 ‘c’.

Linux文件后綴名

在linux系統(tǒng)中,文件的后綴名并沒有具體意義份蝴,也就是說犁功,加或者不加,都無所謂婚夫。但是為了容易區(qū)分浸卦,我們習(xí)慣給文件加一個后綴名,這樣當(dāng)用戶看到這個文件名時就會很快想到它到底是一個什么文件案糙。例如1.sh, 2.tar.gz, my.cnf, test.zip等等镐躲。

早期Unix系統(tǒng)文件名最多允許14個字符,而新的Unix或者linux系統(tǒng)中侍筛,文件名最長可以到達(dá) 256 個字符。

Linux的鏈接文件:

鏈接文件分為兩種撒穷,硬鏈接(hard link)和軟鏈接(symbolic link)匣椰。兩種鏈接的本質(zhì)區(qū)別關(guān)鍵點在于inode。

Hard Links : 當(dāng)系統(tǒng)要讀取一個文件時端礼,就會先去讀inode table禽笑,然后再去根據(jù)inode中的信息到塊區(qū)域去將數(shù)據(jù)取出來入录。而hard link 是直接再建立一個inode鏈接到文件放置的塊區(qū)域。也就是說佳镜,進(jìn)行hard link的時候?qū)嶋H上該文件內(nèi)容沒有任何變化僚稿,只是增加了一個指到這個文件的inode, hard link 有兩個限制:(1)不能跨文件系統(tǒng),因為不同的文件系統(tǒng)有不同的inode table; (2) 不能鏈接目錄蟀伸。

硬鏈接只是復(fù)制了一份inode信息蚀同。空間大小不變

Symbolic Links : 跟hard link不同啊掏,這個是建立一個獨立的文件蠢络,而這個文件的作用是當(dāng)讀取這個鏈接文件時,它會把讀取的行為轉(zhuǎn)發(fā)到該文件所link的文件上迟蜜。軟連接就是windows中的快捷方式刹孔。

建立軟連接即快捷方式的命令:ln

語法 : ln [-s] [來源文件] [目的文件]

ln 常用的選項就一個 ‘-s’, 如果不加就是建立硬鏈接,加上就建立軟鏈接娜睛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末髓霞,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子畦戒,更是在濱河造成了極大的恐慌方库,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件兢交,死亡現(xiàn)場離奇詭異薪捍,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)配喳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門酪穿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人晴裹,你說我怎么就攤上這事被济。” “怎么了涧团?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵只磷,是天一觀的道長。 經(jīng)常有香客問我泌绣,道長钮追,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任阿迈,我火速辦了婚禮元媚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己刊棕,他們只是感情好炭晒,可當(dāng)我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著甥角,像睡著了一般网严。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嗤无,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天震束,我揣著相機(jī)與錄音,去河邊找鬼翁巍。 笑死驴一,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的灶壶。 我是一名探鬼主播肝断,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼驰凛!你這毒婦竟也來了胸懈?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤恰响,失蹤者是張志新(化名)和其女友劉穎趣钱,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體胚宦,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡首有,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了枢劝。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片井联。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖您旁,靈堂內(nèi)的尸體忽然破棺而出烙常,到底是詐尸還是另有隱情,我是刑警寧澤鹤盒,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布蚕脏,位于F島的核電站,受9級特大地震影響侦锯,放射性物質(zhì)發(fā)生泄漏驼鞭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一尺碰、第九天 我趴在偏房一處隱蔽的房頂上張望挣棕。 院中可真熱鬧汇竭,春花似錦、人聲如沸穴张。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽皂甘。三九已至,卻和暖如春悼凑,著一層夾襖步出監(jiān)牢的瞬間偿枕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工户辫, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留渐夸,地道東北人。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓渔欢,卻偏偏與公主長得像墓塌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子奥额,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容