bash的基礎(chǔ)特性:
命令補全:
shell程序在接收到用戶執(zhí)行命令的請求,分析完成之后,最左側(cè)的字符串會被當作命令;
命令查找機制:
首先查找內(nèi)部命令;
然后根據(jù)PATH環(huán)境變量中設(shè)定的目錄,自左而右逐個搜索目錄下的文件名;
給定的打頭字符串如果能惟一標識某命令程序文件,則直接補全;
? ? ? ? ? ? ? ? ? ? 不能惟一標識某命令程序文件,再擊tab鍵一次,會給出列表;
路徑補全:
在給定的起始路徑下,以對應(yīng)路徑下的打頭字串來逐一匹配起始路徑下的每個文件:
tab:
如果能惟一標識,則直接補全;
否則,再一次tab,給出列表;
目錄管理類的命令:
mkdir, rmdir
mkdir:創(chuàng)建目錄
mkdir [OPTION]... DIRECTORY...
-p: 自動按需創(chuàng)建父目錄;
-v: verbose,顯示詳細過程;
-m MODE:直接給定權(quán)限;
注意:路徑基名方為命令的作用對象;基名之前的路徑必須得存在;
[root@localhost test]# mkdir -pvm 444 mytest.4/{a,b,c}_{1,2,3}
此命令創(chuàng)建的mytest.4的權(quán)限不是444,為默認的
rmdir: 移除空目錄
rmdir [OPTION]... DIRECTORY...
-p:刪除某目錄后,如果其父目錄為空,則一并刪除之;
-v: 顯示過程;
bash的基礎(chǔ)特性之:命令行展開
~:自動展開為用戶的家目錄,或指定的用戶的家目錄;
{}:可承載一個以逗號分隔的路徑列表,并能夠?qū)⑵湔归_為多個路徑;
例如:/tmp/{a,b} 相當于 /tmp/a /tmp/b
tree命令:
tree [options] [directory]
-L level:指定要顯示的層級;如果不指定顯示所有的層級
bash的基礎(chǔ)特性:命令的執(zhí)行狀態(tài)結(jié)果
命令執(zhí)行的狀態(tài)結(jié)果:
bash通過狀態(tài)返回值來輸出此結(jié)果:
成功:0
失敗:1-255
命令執(zhí)行完成之后,其狀態(tài)返回值保存于bash的特殊變量$?中;
命令正常執(zhí)行時,有的還會有命令返回值:
根據(jù)命令及其功能不同,結(jié)果各不相同;
引用命令的執(zhí)行結(jié)果:
$(COMMAND)
或`COMMAND`
bash的基于特性:引用
強引用:''
弱引用:""
命令引用:``
bash基礎(chǔ)特性:快捷鍵
Ctrl+a:跳轉(zhuǎn)至命令行行首
Ctrl+e:跳轉(zhuǎn)至命令行行尾
Ctrl+u:刪除行首至光標所在處之間的所有字符;
Ctrl+k:刪除光標所在處至行尾的所有字符;
Ctrl+l:清屏,相當于clear
文件查看類命令:cat, tac, head, tail, more, less
分屏查看命令:more和less
more命令:
more FILE
特點:翻屏至文件尾部后自動退出;
less命令:
less FILE
head命令:
查看文件的前n行;
head [options] FILE
-n #
-#
tail命令:
查看文件的后n行;
tail [options] FILE
-n #
-#
-f:查看文件尾部內(nèi)容結(jié)束后不退出,跟隨顯示新增的行;
stat命令:
stat - display file or file system status
顯示文件或文件系統(tǒng)的狀態(tài)
stat FILE...
文件:每個文件都有兩類數(shù)據(jù)
元數(shù)據(jù):metadata
數(shù)據(jù): data
時間戳:
access time:2018-03-29 16:13:26.586422592 +0800
modify time:2018-03-29 16:13:26.586422592 +0800
change time:2018-03-29 16:13:26.586422592 +0800
touch命令:
touch - change file timestamps
touch [OPTION]... FILE...
-c: 指定的文件路徑不存在時不予創(chuàng)建;
-a: 僅修改access time;
-m:僅修改modify time;
-t STAMP
[[CC]YY]MMDDhhmm[.ss]