控制命令歷史的記錄方式:
環(huán)境變量:HISTCONTROL
Ignoredups:忽略重復(fù)的命令(連續(xù)且相同方為重復(fù))
Ignorespace:忽略所有以空白字符開(kāi)頭的命令
Ignoreboth:ignoredups,ignorespace
修改環(huán)境變量值得方式:export 變量名=“值”
(2)命令補(bǔ)全
直接補(bǔ)全:Tab,用戶(hù)給定的字符字符串只有一條唯一對(duì)應(yīng)的命令
(3)路徑不全
把用戶(hù)給出的字符串當(dāng)作路徑開(kāi)頭,并在其指定上級(jí)目錄下搜索以指定的字符串開(kāi)頭的文件名
如果唯一:則直接補(bǔ)全
否則:再次敲Tab鍵給出列表
目錄管理類(lèi)命令:
Cd,pwd,ls,mkdir,rmdir,tree
Mkdir [options] /path/to/somewhere
-p:存在時(shí),不報(bào)錯(cuò),且自動(dòng)創(chuàng)建所需的各目錄
-v:顯示詳細(xì)信息
-m MODE:創(chuàng)建目錄時(shí)直接指定權(quán)限
Rmdir [options]……DIRECTORY
-v:顯示詳細(xì)過(guò)程
Tree:查看目錄結(jié)構(gòu)
-d:只顯示目錄
-L Level:指定顯示的層級(jí)目錄
-P Pattern
(4)命令行展開(kāi)
~:展開(kāi)為用戶(hù)的主目錄
~USERNAME:展開(kāi)為指定用戶(hù)的主目錄
{}:可承載一個(gè)以逗號(hào)分隔的列表,并將其展開(kāi)為各個(gè)路徑
/tmp/{a,b}=>/tmp/a /tmp/b
/tmp/{a,b}/h=>/tmp/a/h /tmp/b/h
(5)命令的執(zhí)行結(jié)果狀態(tài)
成功:0
失。1-255
Bash使用特殊變量$?保存最近一條命令的執(zhí)行狀態(tài)結(jié)果
0:成功
1-255:失敗
程序執(zhí)行有兩類(lèi)結(jié)果:
程序的返回值
程序的執(zhí)行狀態(tài)結(jié)果
文本文件查看類(lèi)命令:
Cat,tac,morelinux命令,less,tail,head
Head [option]……[FILE]……
-c #:獲取前#字節(jié)
-n #:獲取前#行
-#:獲取指定前#行
Tail [option]……[FILE]……
-c #:獲取后#字節(jié)
-n #:獲取后#行
#:獲取后#行
-f:跟蹤顯示文件新追加的內(nèi)容
文件的時(shí)間戳管理工具:Touch
三個(gè)時(shí)間戳:
Access time:訪問(wèn)時(shí)間,簡(jiǎn)寫(xiě)為atime 讀取文件內(nèi)容
Modify time:修改時(shí)間,簡(jiǎn)寫(xiě)為mtime 改變文件內(nèi)容
Change time:改變時(shí)間,簡(jiǎn)寫(xiě)為ctime 元數(shù)據(jù)發(fā)生改變
Touch命令:
Touch [option]……FILE……
-a:only atime
-m:only mtime
-t STAMP:
[[cc]yy]MMDDHHMM[.ss]
-c:如果文件不存在,則不予創(chuàng)建
文件管理
Cp,mv,rm
復(fù)制命令:cp
常用選項(xiàng):
-i:交互式
-R,-r:遞歸復(fù)制目錄及內(nèi)部所有文件內(nèi)容
-a:歸檔復(fù)制(保留文件的所有原屬性)相當(dāng)于-dR –preserv=all
-d:拷貝時(shí),保留鏈接
·-f:強(qiáng)制復(fù)制
-p:–preserve=mode,ownership,timestamps
-v:顯示詳細(xì)信息
Mv:move移動(dòng)文件
常用選項(xiàng):
-i:交互式
-f:強(qiáng)制移動(dòng)
Rm:remove刪除
Rm[option]……FILE……
-i:交互式
-f:強(qiáng)制刪除
-r:遞歸
Bash的基本特性
1、 命令別名(alias)
通過(guò)alias命令實(shí)現(xiàn)
(1) alias
顯示當(dāng)前shell進(jìn)程所有可有的命令別名
(2) alias NAME=‘VALUE’
定義別名NAME,其相當(dāng)于執(zhí)行命令“VALUE”