命令補全: tab
shell程序在接收到用戶執行命令的請求,分析完成后,最左側的字符串會被當做命令
命令查找機制:
查找內部命令:
根據PATH環境變量中設定的目錄,自左而右逐個搜索目錄下的文件名
給定的打頭字符如果能唯一標識某命令文件程序,則直接補全
給定的打頭字符如果不能唯一標識某命令文件程序,在一次tab,會給出列表
路徑補全:tab
在給定的起始路徑下,以對應路徑下的打頭字串來逐一匹配其實路徑下的每個文件
如果能唯一標識,則直接補全
否則,再一次tab,給出列表
雙擊Tab:
/2Tab 顯示所有根目錄下一級目錄,包括隱藏目錄
./2Tab 當前目錄下子目錄,包括隱藏目錄
*2Tab 當前目錄下子目錄,不包括隱藏目錄
~2Tab 所有用戶列表
$2Tab 所有變量
@2Tab /etc/hosts記錄 (CentOS7不支持)
=2Tab 相當于ls –A (CentOS7 不支持)
mkdir:新建一個目錄
mkdir -p:自動按需創建父目錄
-v:顯示詳細過程
-m:直接給定權限
注意:路徑基名方為命令的作用對象,基名之前的路徑必須得存在
rmdir: 刪除目錄
rmdir -p:刪除某目錄后,如果其父目錄為空,則一并刪除
-v:顯示過程
命令行展開:
~:自動展開為用戶的家目錄,或指定的用戶的家目錄
{}: 可承載一個以逗號分隔的路徑列表,并能夠將其展開多個路徑
例如:/tmp/{a,b}相當于 /tmp/a /tmp/b
命令的執行狀態結果:
bash通過狀態返回值來輸出次結果
成功:0
失敗:1-255
命令執行完成后,其狀態返回值保存于bash的特殊變量$?中
引用:
強引用:”
弱引用:””
命令引用:“
bash快捷鍵:
Ctrl + l 清屏,相當于clear命令
Ctrl + c 終止命令
Ctrl + s 鎖定屏幕
Ctrl + q 解鎖
Ctrl + a 光標移到命令行首,相當于Home
Ctrl + e 光標移到命令行尾,相當于End
Ctrl + u 從光標處刪除至命令行首
Ctrl + k 從光標處刪除至命令行尾
cp命令:copy
單源復制:cp [OPTION]… [-T] SOURCE DEST
如果DEST不存在:則事先創建次文件,并復制源文件的數據流至DEST中
如果DEST存在:
如果DEST是非目錄文件:則覆蓋目標文件
如果DEST目錄文件:則先在DEST目錄下創建一個與源文件同名的文件,并復制其數據流
多源復制:cp [OPTION]… SOURCE… DIRECTORY
如果DEST不存在: 錯誤
如果DEST存在:
如果DEST是非目錄文件:錯誤
如果DEST是目錄文件:分別復制每個文件至目錄中,并保持原名
cp [OPTION]… -t DIRECTORY SOURCE…
常用選項:
-i:交互式復制,即覆蓋前提醒用戶確認
-f:強制覆蓋目標文件
-r:遞歸復制目錄
history:命令行歷史
命令歷史一般記錄在.bash_history文件中,默認記錄1000條
當前shell中的歷史記錄會被記錄在內存中,只有退出之后才會保存在.bash_history中
-c:清空命令歷史
-d offset:刪除歷史中指定的第offset個命令
n:顯示最近的第n條歷史
-a:追加本次會話新執行的命令歷史列表至歷史文件
-n:讀歷史文件中未讀過的行到歷史列表
-r:讀歷史文件附加到歷史列表
-w:保存歷史列表到指定的歷史文件
-p:展開歷史參數成多行,但不存在歷史列表中
-s:展開歷史參數成一行,附加在歷史列表后
HISTSIZE 修改history存儲條數
HISTFILE 指定歷史文件的存放位置,默認為~/.bash_history
HISTFILESIZE 指定歷史文件的命令的存儲條數
HISTTIMEFORMAT=”%F %T” 顯示每條命令的具體執行時間
HISTIGNORE=”str1:str2″ 把某些命令敏感的字符串給屏蔽掉不予顯示
控制命令歷史記錄方式:
環境變量:HISTCONTROL
ignoredups 默認,忽略重復的命令,連續且相同為“重復”
ignorespace 忽略所有以空白開頭的命令
ignoreboth 相當于ignoredups, ignorespace的組合
erasedups 刪除重復命令
!n:執行history命令歷史輸出對應序號n的命令
!n:執行history歷史中倒數第n個命令
總結:
對于命令與快捷鍵一定要背熟,多實際操作幾次,能更好的加深印象。
原創文章,作者:Linux.rookie,如若轉載,請注明出處:http://www.www58058.com/72035