(1)pwd:顯示當(dāng)前所在位置
說(shuō)明:
pwd命令是“print working directory”中每個(gè)單詞的首字母縮寫,其功能是顯示當(dāng)前工作目錄的絕對(duì)路徑。在實(shí)際工作中,我們?cè)诿钚胁僮髅顣r(shí),經(jīng)常會(huì)在各個(gè)目錄路徑之間進(jìn)行切換,此時(shí)可使用pwd命令快速查看當(dāng)前我們所在的目錄路徑。
語(yǔ)法
pwd [option]
1.注意pwd命令和后面的選項(xiàng)之間至少要有一個(gè)空格。
2.通常情況下,執(zhí)行pwd命令不需要帶任何參數(shù)。
參數(shù)
PWD系統(tǒng)環(huán)境變量,可以用“$”符號(hào)輸出其值,代碼如下:
[root@iZ8vb11v8r15ng6q0eb8dzZ ~]# echo $PWD
/root
在Bash命令行顯示當(dāng)前用戶的完整路徑。
系統(tǒng)Bash命令行的提示符是由一個(gè)稱為PS1的系統(tǒng)環(huán)境變量控制的。
查看當(dāng)前PS1變量的值
[root@iZ8vb11v8r15ng6q0eb8dzZ home]# echo $PS1
[u@h W]$
修改PS1變量對(duì)應(yīng)的值,來(lái)讓命令行顯示全路徑(臨時(shí)生效)
[root@iZ8vb11v8r15ng6q0eb8dzZ home]# PS1="[u@h w]$"
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$cd /etc/sysconfig
[root@iZ8vb11v8r15ng6q0eb8dzZ /etc/sysconfig]$
修改PS1變量對(duì)應(yīng)的值,來(lái)讓命令行顯示全路徑(永久生效)
1.編輯/etc/bashrc文件,找到以下內(nèi)容
[ “$PS1” = “s-v$ " ] && PS1=”[u@h W]$ "
2.修改退出
[ “$PS1” = “s-v$ " ] && PS1=”[u@h w]$ "
3.最后,注銷并重新登錄系統(tǒng)或直接執(zhí)行source/etc/bashrc使得修改的信息生效
(2)cd:切換目錄
說(shuō)明
cd命令是“change directory”中每個(gè)單詞的首字母縮寫,其功能是從當(dāng)前工作目錄切換到指定的工作目錄。
語(yǔ)法
cd [option] [dir]
1.注意cd命令以及后面的選項(xiàng)和目錄,每個(gè)元素之間都至少要有一個(gè)空格。
2.cd命令后面的選項(xiàng)和目錄等參數(shù)都可以省略。默認(rèn)情況下,單獨(dú)執(zhí)行cd命令,可切換到當(dāng)前登錄用戶的家目錄(由系統(tǒng)環(huán)境變量HOME定義)。
3.cd是bash shell的內(nèi)置命令,查看該命令對(duì)應(yīng)的系統(tǒng)幫助需要使用help cd。
參數(shù)
執(zhí)行不帶任何參數(shù)的cd命令和“cd~”的結(jié)果一樣。
(3)tree:以樹形結(jié)構(gòu)顯示目錄下的內(nèi)容
說(shuō)明
tree命令的中文意思為“樹”,功能是以樹形結(jié)構(gòu)列出指定目錄下的所有內(nèi)容,包括所有文件、子目錄及子目錄里的目錄和文件。
語(yǔ)法
tree [option] [directory]
1.注意tree命令以及后面的選項(xiàng)和目錄,每個(gè)元素之間都至少要有一個(gè)空格。
2.tree命令后若不接選項(xiàng)和目錄就會(huì)默認(rèn)顯示當(dāng)前所在路徑目錄的目錄結(jié)構(gòu)。
選項(xiàng)
查詢tree命令是否安裝
rpm -qa tree
安裝tree命令
yum -y install tree
調(diào)整系統(tǒng)字符集,防止樹形結(jié)構(gòu)顯示亂碼
LANG=en_US.UTF-8
(4)mkdir:創(chuàng)建目錄
說(shuō)明
mkdir命令是“make directories”中每個(gè)單詞的粗體字母組合而成,其功能是創(chuàng)建目錄,默認(rèn)情況下,如果要?jiǎng)?chuàng)建的目錄已存在,則會(huì)提示此文件已存在;而不會(huì)繼續(xù)創(chuàng)建目錄。
語(yǔ)法
mkdir [option] [directory]
1.注意mkdir命令以及后面的選項(xiàng)和目錄,每個(gè)元素之間都至少要有一個(gè)空格。
2.mkdir命令可以同時(shí)創(chuàng)建多個(gè)目錄,格式為mkdir dir1dir2…
選項(xiàng)
拓展
大括號(hào) {} 的特殊用法。
在{}中使用逗號(hào)分隔多個(gè)字符或單詞時(shí),使用echo命令可以將這些被分隔的字符或單詞分別輸出到屏幕上,示例如下:
[root@iZ8vb11v8r15ng6q0eb8dzZ /]$echo {B,C}
B C
如果{}前有字符時(shí),輸出結(jié)果如下:
[root@iZ8vb11v8r15ng6q0eb8dzZ /]$echo A{B,C}
AB AC
創(chuàng)建文件夾同理
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$mkdir B C
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$ls
B C hello.txt
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$mkdir A{B,C}
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$ls
AB AC B C hello.txt
[root@iZ8vb11v8r15ng6q0eb8dzZ /home]$
(5)touch:創(chuàng)建空文件或改變文件的間戳屬性
說(shuō)明
touch命令有兩個(gè)功能:
1.是創(chuàng)建新的空文件
2.是改變已有文件的時(shí)間戳屬性
語(yǔ)法
touch [option] [file]
1.注意區(qū)分touch和mkdir命令的功能,mkdir命令是創(chuàng)建空目錄,而touch是創(chuàng)建空文件。
2.在Linux中,一切皆文件。雖然touch命令不能創(chuàng)建目錄,但是可以修改目錄的時(shí)間戳。
選項(xiàng)
拓展
GNU/Linux的文件有3種類型的時(shí)間戳:
Access: 1985-11-05 1534.991966181 +0800
Modify: 1985-11-05 1534.991966181 +0800
Change: 1985-11-05 1534.991966181 +0800
1.Access 最后訪問(wèn)文件時(shí)間
2.Modify 最后修改文件時(shí)間
3.Change 最后改變文件狀態(tài)時(shí)間
對(duì)應(yīng)ls命令,查看上述時(shí)間戳的選項(xiàng)如下
1.mtime: 最后修改時(shí)間(ls -lt) 修改文件內(nèi)容,文件的修改時(shí)間(modify time)會(huì)改變。
2.ctime:狀態(tài)改變時(shí)間(ls -lc) 修改文件內(nèi)容、移動(dòng)文件或改變文件屬性等,文件的change時(shí)間會(huì)改變。
3.atime:最后訪問(wèn)時(shí)間(ls -lu) 查看文件內(nèi)容時(shí),文件的訪問(wèn)時(shí)間( access time)會(huì)改變。
(6)ls:顯示目錄下的內(nèi)容及相關(guān)屬性信息
說(shuō)明
ls命令可以理解為英文單詞list的縮寫,其功能是列出目錄的內(nèi)容及其內(nèi)容屬性信息(list directory contents)。
語(yǔ)法
ls [option] [file]
1.ls命令以及后面的選項(xiàng)和文件,每個(gè)元素之間都至少要有一個(gè)空格。
2. 命令后面的選項(xiàng)和目錄文件可以省略,表示查看當(dāng)前路徑的文件信息。
選項(xiàng)
ls命令輸出內(nèi)容的屬性解讀
[root@hsforpyp /]$ls -lhi
total 20K
24972 lrwxrwxrwx. 1 root root 7 May 11 2019 bin -> usr/bin
147 dr-xr-xr-x. 5 root root 4.0K Nov 20 14:45 boot
1026 drwxr-xr-x 19 root root 2.9K Dec 29 23:50 dev
132 drwxr-xr-x. 94 root root 8.0K Jan 4 11:39 etc
50332430 drwxr-xr-x. 2 root root 23 Jan 4 11:59 home
24976 lrwxrwxrwx. 1 root root 7 May 11 2019 lib -> usr/lib
149 lrwxrwxrwx. 1 root root 9 May 11 2019 lib64 -> usr/lib64
150 drwxr-xr-x. 2 root root 6 May 11 2019 media
16779732 drwxr-xr-x. 2 root root 6 May 11 2019 mnt
33614798 drwxr-xr-x. 2 root root 6 May 11 2019 opt
1 dr-xr-xr-x 111 root root 0 Dec 29 23:50 proc
16777345 dr-xr-x---. 5 root root 228 Jan 4 11:39 root
11624 drwxr-xr-x 30 root root 880 Dec 29 23:50 run
24977 lrwxrwxrwx. 1 root root 8 May 11 2019 sbin -> usr/sbin
50332431 drwxr-xr-x. 2 root root 6 May 11 2019 srv
1 dr-xr-xr-x 13 root root 0 Dec 30 07:50 sys
148 drwxrwxrwt. 3 root root 126 Jan 4 12:21 tmp
16777371 drwxr-xr-x. 12 root root 144 Nov 20 14:36 usr
33575041 drwxr-xr-x. 21 root root 4.0K Nov 20 06:41 var
1.inode索引節(jié)點(diǎn)編號(hào)
2.文件類型及權(quán)限
3.硬鏈接個(gè)數(shù)
4.文件或目錄所屬用戶
5.文件或目錄所屬組
6.文件或目錄的大小
7.文件或目錄修改時(shí)間(7、8、9列)
8.實(shí)際的文件名或目錄名
(7)cp:復(fù)制文件或目錄
說(shuō)明
cp命令可以理解為英文單詞copy的縮寫,其功能為復(fù)制文件或目錄。
語(yǔ)法
cp [option] [source] [dest]
選項(xiàng)
(8)mv:移動(dòng)或重命名文件
說(shuō)明
mv命令可以理解為英文單詞move的縮寫,其功能是移動(dòng)或重命名文件(move/rename files)
語(yǔ)法
mv [option] [source] [dest]
選項(xiàng)
(9)rm:刪除文件或目錄
說(shuō)明
rm命令可以理解為英文單詞remove的縮寫,其功能是刪除一個(gè)或多個(gè)文件或目錄(remove files or directories)。這是Linux系統(tǒng)里最危險(xiǎn)的命令之一,請(qǐng)慎重使用。
語(yǔ)法
rm [option] [file]
選項(xiàng)
經(jīng)驗(yàn)
1.用mv替代rm,不要急著刪除,而是先移動(dòng)到回收站/tmp。
2.刪除前務(wù)必備份,最好是異機(jī)備份,若出現(xiàn)問(wèn)題隨時(shí)可以還原。
3.如果非要?jiǎng)h除,那么請(qǐng)用find替代rm,包括通過(guò)系統(tǒng)定時(shí)任務(wù)等清理文件方法。
4.如果非要通過(guò)rm命令刪除,那么請(qǐng)先切換目錄再刪除,能不用通配符的就不用通配符。對(duì)文件的刪除禁止使用“rm-rf文件名”,因?yàn)椤皉m-rf”誤刪目錄時(shí)并不會(huì)有提示,非常危險(xiǎn)。最多使用“rm-f文件名”,推薦用“rm文件名”。
(10)rmdir:刪除空目錄
說(shuō)明
rmdir命令用于刪除空目錄(remove empty directories),當(dāng)目錄不為空時(shí),命令不起作用。
語(yǔ)法
rmdir [option] [directory]
選項(xiàng)
(11)ln:硬鏈接與軟鏈接
說(shuō)明
ln命令可以理解為英文單詞link的縮寫,其功能是創(chuàng)建文件間的鏈接(make links between files),鏈接類型包括硬鏈接(hard link)和軟鏈接(符號(hào)鏈接,symbolic link)
語(yǔ)法
ln [option] [source] [target]
選項(xiàng)
細(xì)說(shuō)鏈接知識(shí)
鏈接分為硬鏈接(hard link)和軟鏈接(符號(hào)鏈接,symbolic link)兩種,它們的含義具體如下。
硬鏈接(Hard Link):創(chuàng)建語(yǔ)法為“l(fā)n源文件目標(biāo)文件”,硬鏈接生成的是普通文件(-字符)。
軟鏈接或符號(hào)鏈接(Symbolic Link or Soft Link):創(chuàng)建語(yǔ)法為“l(fā)n-s源文件目標(biāo)文件(目標(biāo)文件不能事先存在)”,軟鏈接生成的是符號(hào)鏈接文件(l類型)。
硬鏈接
硬鏈接是指通過(guò)索引節(jié)點(diǎn)(Inode)來(lái)進(jìn)行鏈接。在Linux(ext2、ext3、ext4)文件系統(tǒng)中,所有文件都有一個(gè)獨(dú)有的inode編號(hào)。在Linux文件系統(tǒng)中,多個(gè)文件名指向同一個(gè)索引節(jié)點(diǎn)(inode)是正常且允許的。這種情況下的文件就稱為硬鏈接。硬鏈接文件相當(dāng)于文件的另外一個(gè)入口。它的作用之一就是允許一個(gè)文件擁有多個(gè)有效路徑名(多個(gè)入口),這樣用戶就可以建立硬鏈接到重要文件,以防止誤刪源數(shù)據(jù)。
1.具有相同inode節(jié)點(diǎn)號(hào)的多個(gè)文件互為硬鏈接文件。
2.刪除硬鏈接文件或者刪除源文件任意之一,文件實(shí)體并未被刪除。
3.只有刪除了源文件以及源文件所有對(duì)應(yīng)的硬鏈接文件,文件實(shí)體才會(huì)被刪除。
4.所有的硬鏈接文件及源文件被刪除之后,再存放新的數(shù)據(jù)時(shí)會(huì)占用這個(gè)文件的空間,或者磁盤fsck檢查的時(shí)候,刪除的數(shù)據(jù)也會(huì)被系統(tǒng)回收。
5.硬鏈接文件就是文件的另外一個(gè)入口(相當(dāng)于超市的前門后門)。
6.可以通過(guò)給文件設(shè)置硬鏈接文件,來(lái)防止重要文件被誤刪。
7.執(zhí)行命令“l(fā)n源文件硬鏈接文件”,即可完成硬鏈接的創(chuàng)建。
8.硬鏈接文件可以用rm命令刪除。
9.對(duì)于靜態(tài)文件(沒有進(jìn)程正在調(diào)用的文件)來(lái)講,當(dāng)對(duì)應(yīng)硬鏈接數(shù)為0(i_link)時(shí),文件就會(huì)被刪除。i_link的查看方法是ls-lih,查看結(jié)果的第三列,即硬鏈接數(shù)。
軟鏈接
軟鏈接或符號(hào)鏈接(Symbolic Link or Soft Link)有點(diǎn)像Windows里的快捷方式。
硬鏈接文件的類型是普通文件,而軟鏈接是真正的鏈接文件(l)。
1.軟鏈接類似于Windows的快捷方式(可以通過(guò)后面的readlink命令查看其指向)。
2.軟鏈接類似于一個(gè)文本文件,里面存放的是源文件的路徑,指向源文件實(shí)體。
3.即使刪除了源文件,軟鏈接文件也還是依然存在,但是無(wú)法訪問(wèn)指向的源文件路徑內(nèi)容了。
4.失效的時(shí)候一般是白字紅底閃爍提示。
5.執(zhí)行命令“l(fā)n-s源文件軟鏈接文件”,即可完成創(chuàng)建軟鏈接(軟鏈接文件名事先不能存在)
6.軟鏈接和源文件是不同類型的文件,也是不同的文件,inode號(hào)也不相同。
7.刪除軟鏈接文件可以使用rm命令。
(12)readlink:查看符號(hào)鏈接文件的內(nèi)容
說(shuō)明
使用cat命令查看軟鏈接文件時(shí),會(huì)發(fā)現(xiàn)只能看到源文件的內(nèi)容,看不到軟鏈接文件的真實(shí)內(nèi)容。因此需要使用readlink命令,它能夠幫助我們查看符號(hào)鏈接文件的真實(shí)內(nèi)容。
語(yǔ)法
readlink [option] [file]
選項(xiàng)
[root@iZ8vb11v8r15ng6q0eb8dzZ /]$ll -h /usr/bin/awk
lrwxrwxrwx. 1 root root 4 May 11 2019 /usr/bin/awk -> gawk
[root@iZ8vb11v8r15ng6q0eb8dzZ /]$readlink /usr/bin/awk
gawk
[root@iZ8vb11v8r15ng6q0eb8dzZ /]$readlink -f /usr/bin/awk
/usr/bin/gawk
(13)find:查找目錄下的文件
說(shuō)明
find命令用于查找目錄下的文件,同時(shí)也可以調(diào)用其他命令執(zhí)行相應(yīng)的操作。
語(yǔ)法
find [-H] [-L] [-P] [-D debugopts] [-0level] [pathname] [expression]
1.注意find命令以及后面的選項(xiàng)和路徑、操作語(yǔ)句,每個(gè)元素之間都至少要有一個(gè)空格。
2.注意子模塊的先后順序。
選項(xiàng)
(14)xargs:將標(biāo)準(zhǔn)輸入轉(zhuǎn)換成命令行參數(shù)
說(shuō)明
xargs命令是向其他命令傳遞命令行參數(shù)的一個(gè)過(guò)濾器,能夠?qū)⒐艿阑蛘邩?biāo)準(zhǔn)輸入傳遞的數(shù)據(jù)轉(zhuǎn)換成xargs命令后跟隨的命令的命令行參數(shù)。
語(yǔ)法
xargs [option]
選項(xiàng)
(15)rename:重命名文件
說(shuō)明
rename命令通過(guò)字符串替換的方式批量修改文件名。
語(yǔ)法
rename from to file
1.from:代表需要替換或處理的字符,一般是文件名的一部分,也包括拓展名
2.to:把前面的from代表的內(nèi)容替換為to代表的內(nèi)容
3.file:待處理的文件,可以用“*”通配所有文件
使用范例
將所有文件的finished替換為空
rename “finished” “” *
將所有文件的.jpg替換為.png
rename .jpg .png *.jpg
(16)basename:顯示文件名或目錄名
說(shuō)明
basename命令用于顯示去除路徑和文件后綴部分的文件名或目錄名。
語(yǔ)法
basename [name] [suffix]
suffix是可選參數(shù),指定要去除的文件后綴字符串。
使用范例
去除路徑部分,即只顯示文件名
[root@iZ8 /home]$mkdir data/dir1 -p
[root@iZ8 /home]$touch data/dir1/file.txt
[root@iZ8 /home]$basename data/dir1/file.txt
file.txt
[root@iZ8 /home]$basename data/dir1/file.txt .txt
file
(17)dirname:顯示文件或目錄路徑
說(shuō)明
dirname命令用于顯示文件或目錄路徑。
語(yǔ)法
dirname [name]
使用范例
只顯示文件所在路徑
[root@iZ8 /home]$dirname data/dir1/file.txt
data/dir1
給dirname一個(gè)相對(duì)路徑,他也會(huì)返回相對(duì)路徑(當(dāng)前目錄.)
[root@iZ8 /home]$cd data/dir1/
[root@iZ8 /home/data/dir1]$dirname file.txt
.
(18)chattr:改變文件的擴(kuò)展屬性
說(shuō)明
chattr命令用于改變文件的擴(kuò)展屬性。與chmod這個(gè)命令相比,chmod只是改變文件的讀、寫、執(zhí)行權(quán)限,更底層的屬性控制是由chattr來(lái)改變的。
語(yǔ)法
chattr [option] [mode] [files]
選項(xiàng)
使用范例
設(shè)置只能往文件里追加內(nèi)容,但不能刪除文件。
chattr +a test
給文件加鎖,使其只能是只讀。
chattr +i file
避免惡意刪除.bash_history歷史記錄文件或者重定向到/dev/null,又因?yàn)橄到y(tǒng)需要向這個(gè)文件中寫入歷史記錄,因此采用追加模式,只增不減:
chattr +a .bash_history
tips: 關(guān)于chattr的功能,我們能夠操作的,黑客如果知道了也能操作,因此,使用chattr的安全性是相對(duì)的。
(19)lsattr:查看文件擴(kuò)展屬性
說(shuō)明
lsattr命令用于查看文件的擴(kuò)展屬性。
語(yǔ)法
lsattr [options] [files]
選項(xiàng)
使用范例
查看文件擴(kuò)展屬性
[root@iZ8 /home]$lsattr file.txt
-------------------- file.txt
[root@iZ8/home]$chattr +i file.txt
[root@iZ8 /home]$lsattr file.txt
----i--------------- file.txt
查看目錄擴(kuò)展屬性
[root@iZ8 /home]$lsattr -d dir/
-------------------- dir/
[root@iZ8 /home]$chattr +i dir
[root@iZ8 /home]$lsattr -d dir/
----i--------------- dir/
(20)file:顯示文件的類型
說(shuō)明
file命令用于顯示文件的類型。
語(yǔ)法
file [option] [file]
多個(gè)文件之間使用空格分開,可以使用通配符來(lái)匹配多個(gè)文件。
選項(xiàng)
(21)md5sum:計(jì)算和校驗(yàn)文件的MD5值
說(shuō)明
md5sum命令用于計(jì)算和校驗(yàn)文件的MD5值。MD5的全名為Message-Digest Algorithm(信息-摘要算法)5,它是一種不可逆的加密算法。軟件或文件一般都有自己固定的文件格式或信息,簡(jiǎn)單一點(diǎn)說(shuō)就是“世界上沒有完全相同的兩片葉子”,那么對(duì)于某些網(wǎng)上公開下載的軟件、視頻,尤其是鏡像文件,如果被修改了可能會(huì)導(dǎo)致用不了或者其他的問(wèn)題。因此發(fā)布者首先要通過(guò)MD5算法得出一組數(shù)值,然后讓下載的用戶進(jìn)行MD5的數(shù)值對(duì)比,即MD5校驗(yàn)。基于MD5加密不可逆算的特性,如果數(shù)值一樣,那么就表示文件沒有受到修改。反之,則表示修改了。
語(yǔ)法
md5sum [option] [file]
選項(xiàng)
生產(chǎn)案例
利用md5sum命令來(lái)檢驗(yàn)備份文件是否遭到損壞。
md5sum命令用于備份任務(wù)的指紋檢查。每次在備份完成之后生成指紋文件,將備份和指紋文件發(fā)送到備份服務(wù)器上,在備份服務(wù)器上又會(huì)通過(guò)md5sum命令和校驗(yàn)文件校驗(yàn)備份是否正確。這樣做的目的是為了在第一時(shí)間發(fā)現(xiàn)可能因?yàn)?a href="http://www.delux-kingway.cn/v/tag/1722/" target="_blank">網(wǎng)絡(luò)傳輸而造成的文件損壞。
(22)chown:改變文件或目錄的用戶和用戶組
說(shuō)明
chown命令用于改變文件或目錄的用戶和用戶組。
語(yǔ)法
chown [option] [OWNER] [:[GROUP]] [file]
常用格式
chown 用戶 文件或目錄 # 僅僅授權(quán)用戶
chown :組 文件或目錄 # 僅僅授權(quán)組
chown 用戶:組 文件或目錄 # 表示授權(quán)用戶和組
1.其中的 : 可以用 . 來(lái)代替
2.要授權(quán)的用戶和組名,必須是Linux系統(tǒng)實(shí)際存在的。
選項(xiàng)
范例
# 更改文件所屬用戶屬性
[root@iZ8 /home]$ll
total 0
-rw-r–r-- 1 root root 0 Jan 4 14:09 file.txt
drwx------ 2 testuser testuser 62 Jan 4 14:05 testuser
[root@iZ8 /home]$chown testuser file.txt
[root@iZ8 /home]$ll
total 0
-rw-r–r-- 1 testuser root 0 Jan 4 14:09 file.txt
drwx------ 2 testuser testuser 62 Jan 4 14:05 testuser
# 更改文件所屬組屬性
[root@iZ8 /home]$chown .testuser file.txt
[root@iZ8 /home]$ll
total 0
-rw-r–r-- 1 testuser testuser 0 Jan 4 14:09 file.txt
drwx------ 2 testuser testuser 62 Jan 4 14:05 testuser
(23)chmod:改變文件或目錄權(quán)限
說(shuō)明
chmod命令是用來(lái)改變文件或目錄權(quán)限的命令,但是只有文件的屬主和超級(jí)用戶root才能夠執(zhí)行這個(gè)命令。
語(yǔ)法
chmod [option] [mode] [file]
模式有兩種格式:一種是采用權(quán)限字母和操作符表達(dá)式;另一種是采用數(shù)字。
選項(xiàng)
字母和數(shù)字權(quán)限轉(zhuǎn)換圖
目錄權(quán)限說(shuō)明
(24)umask:顯示或設(shè)置權(quán)限掩碼
說(shuō)明
umask是通過(guò)八進(jìn)制的數(shù)值來(lái)定義用戶創(chuàng)建文件或目錄的默認(rèn)權(quán)限。
語(yǔ)法
umask [option] [mode]
選項(xiàng)
文件權(quán)限計(jì)算
創(chuàng)建文件默認(rèn)最大的權(quán)限為666(-rw-rw-rw-),默認(rèn)創(chuàng)建的文件沒有可執(zhí)行權(quán)限x位。
對(duì)于文件來(lái)說(shuō),umask的設(shè)置是在假定文件擁有八進(jìn)制666的權(quán)限上進(jìn)行的,文件的權(quán)限就是666減umask(umask的各個(gè)位數(shù)字也不能大于6,比如077就不符合條件)的掩碼數(shù)值,如果得到的3位數(shù)字其每一位都是偶數(shù),那么這就是最終結(jié)果;如果有若干位的數(shù)字是奇數(shù),那么這個(gè)奇數(shù)需要加1變成偶數(shù),最后得到全是偶數(shù)的結(jié)果。
示例
1.umask 022 所有位為偶數(shù)
6 6 6 # 文件的起始權(quán)限值
0 2 2 - # umask 的值
-----------
6 4 4
2.umask 045 其他用戶組為奇數(shù)
6 6 6 # 文件的起始權(quán)限值
0 4 5 - # umask值
6 2 1 # 計(jì)算出來(lái)的權(quán)限,由于umask最后一位是奇數(shù)5,所以,其他用戶組位+1
0 0 1 + # umask 對(duì)應(yīng)的奇數(shù)位+1
6 2 2 # 真實(shí)文件權(quán)限
目錄權(quán)限計(jì)算(沒有奇偶之分)
創(chuàng)建目錄默認(rèn)最大權(quán)限777(-rwx-rwx-rwx),默認(rèn)創(chuàng)建的目錄屬主是有x權(quán)限的,允許用戶進(jìn)入。
文件權(quán)限計(jì)算
創(chuàng)建文件默認(rèn)最大的權(quán)限為666(-rw-rw-rw-),默認(rèn)創(chuàng)建的文件沒有可執(zhí)行權(quán)限x位。
對(duì)于文件來(lái)說(shuō),umask的設(shè)置是在假定文件擁有八進(jìn)制666的權(quán)限上進(jìn)行的,文件的權(quán)限就是666減umask(umask的各個(gè)位數(shù)字也不能大于6,比如077就不符合條件)的掩碼數(shù)值,如果得到的3位數(shù)字其每一位都是偶數(shù),那么這就是最終結(jié)果;如果有若干位的數(shù)字是奇數(shù),那么這個(gè)奇數(shù)需要加1變成偶數(shù),最后得到全是偶數(shù)的結(jié)果。
示例
1.umask 022 所有位為偶數(shù)
6 6 6 # 文件的起始權(quán)限值
0 2 2 - # umask 的值
-----------
6 4 4
2.umask 045 其他用戶組為奇數(shù)
6 6 6 # 文件的起始權(quán)限值
0 4 5 - # umask值
6 2 1 # 計(jì)算出來(lái)的權(quán)限,由于umask最后一位是奇數(shù)5,所以,其他用戶組位+1
0 0 1 + # umask 對(duì)應(yīng)的奇數(shù)位+1
6 2 2 # 真實(shí)文件權(quán)限
目錄權(quán)限計(jì)算(沒有奇偶之分)
創(chuàng)建目錄默認(rèn)最大權(quán)限777(-rwx-rwx-rwx),默認(rèn)創(chuàng)建的目錄屬主是有x權(quán)限的,允許用戶進(jìn)入。
對(duì)于目錄來(lái)說(shuō),umask的設(shè)置是在假定文件擁有八進(jìn)制777權(quán)限上進(jìn)行,目錄八進(jìn)制權(quán)限777減去umask的掩碼數(shù)值。
審核編輯:湯梓紅
-
Linux
+關(guān)注
關(guān)注
87文章
11342瀏覽量
210308 -
文件
+關(guān)注
關(guān)注
1文章
570瀏覽量
24812 -
命令
+關(guān)注
關(guān)注
5文章
696瀏覽量
22098 -
變量
+關(guān)注
關(guān)注
0文章
613瀏覽量
28459
原文標(biāo)題:干貨:Linux 文件和目錄操作命令
文章出處:【微信號(hào):良許Linux,微信公眾號(hào):良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論