第一部分 Linux系統如何獲取命令幫助
1、命令類型以及簡單幫助的獲取
linux系統上,基本命令分為兩類,一類是內建命令,一類是外部命令。所謂內建命令,是指由linux內核自帶的系統命令,而外部命令是后期一些程序軟件安裝過后生成的一些命令。
<1>可以通過type命令來查看命令的類型,type的基礎用法為:type COMMAND
例如:type cd
例如:type date
<2>可以通過whatis COMMAND獲取命令的簡單功能介紹,通過which COMMAND來獲取命令的完整路徑信息,whereis來獲取命令的全部路徑信息
<3>通過上述方法得到命令的相關信息后,針對內部命令,可以利用help COMMAND進行簡單用法的幫助獲?。会槍ν獠棵?,可以利用COMMAND –help 來獲取命令的簡單使用說明
2、man和info的使用
通過第一步分對命令的簡單用法和簡單說明信息的了解后,基本知道了一個命令的簡單功能和簡單的使用方法,那么對于外部命令的詳細的使用方法以及完整性的說明信息就得借助man來進一步了解
man是一種格式化輸出相關幫助手冊信息的工具,通過man幫助,我們可以了解到外部命令的詳細說明信息,使用信息等等一些詳細的說明,當然,man的功能不僅僅是輸出命令的幫助信息,對于一些配置文件的信息,我們也可以通過man來獲取詳細的幫助,具體man的功能按章節可以分為幾部分:
1:用戶命令的幫助信息章節
2:系統調用的幫助信息章節
3:C庫調用的幫助信息章節
4:設備文件及特殊文件的幫助信息章節
5:配置文件的幫助信息章節
6:游戲的幫助信息章節
7:雜項
8:管理類命令的幫助信息章節
9:Linux內核API的幫助信息章節
針對初期學習過程中,我們主要關注1、5、8章節的相關信息即可
如何使用man來獲取外部命令幫助,針對上述的已知的命令,我們可以利用whereis獲取到該命令的相關章節之后直接man [章節號] COMMAND來進行相關命令的幫助信息獲取
例如:
通過查看該詳情頁,即可獲得到命令的完整性用法
針對配置文件的幫助,可以利用man 5 FILENAME即可獲取配置文件的相關幫助信息
例如:查看fstab配置文件的幫助信息
通過查看詳細的信息即可獲取到配置文件的相關語法說明和介紹
man在使用過程中的一些方法和技巧:
man實際是調用less來進行文本的讀取的
可利用:
空格鍵 進行向后翻一頁
b鍵 向前翻一頁
d鍵 向后翻半頁
u鍵 向前翻半頁
# 跳轉至指定的第#行
1G 跳轉到文件首部
G 跳轉到文件尾部
/STRING 以指定的字符搜索全文,搜索到后,可利用n鍵跳轉到下一個匹配到的位置,N鍵跳轉到上一個匹配到的位置
q鍵 退出man手冊頁
3、其他獲取幫助途徑介紹
除了上述基礎的一些獲取命令幫助的途徑和man的方式進行幫助獲取外,還可以利用一個額外的幫助渠道進行命令或其他信息的獲取
1、info頁面
2、本地文檔/usr/share/doc/目錄里面有關于一些軟件的相關說明信息
3、在線文檔獲取幫助,可到一些程序的官方站點的知識庫或者獲取軟件的官方說明文檔進行幫助的獲取
4、利用搜索引擎進行搜索
第二部分 history命令歷史詳解
1、history語法:
history [-c][-d 偏移量][n]
或history -anrw [文件名]
或history -ps [參數]
選項:
-c 表示刪除所有歷史命令
-d 數字 表示刪除指定的第多少條命令
-w 將當前內存中保留的命令歷史,保存到歷史命令文件中
-r 將歷史命令文件中的內容,讀取到內存中
例如:history -d 5 表示刪除第5條命令
history -d 5 10 表示刪除從第5條命令開始的往后的10條命令
history -c 表示清空所有歷史命令
history 10 表示顯示最近的10條歷史命令
2、有關history命令的配置文件和環境變量:
關于history命令的配置文件可定義在:
全局配置文件/etc/profile 全局生效,對所有用戶都有效
局部配置文件~.bash_profile 局部生效,只對定義在該用戶家目錄下的用戶有效
~.bash_history記錄了該用戶使用過的歷史命令
history命令的一些環境變量:
HISTSIZE:shell進程可保留的命令歷史的條數
HISTFILE:持久保存歷史命令的文件
HISTFILESIZE:命令歷史文件的大小
HISTCONTROL:控制歷史命令記錄方式的環境變量
其取值可以有4個:默認為ignoredups
ignoredups 忽略重復且相鄰的歷史命令
ignorespace 忽略以空格開頭的命令
ignoreboth 以上兩個同時生效
erasedups 去除重復的命令
多個取值之間可以用:分割
HISTTIMEFORMAT="%F %T"可以以指定時間顯示格式,顯示歷史命令的執行時間
HISTIGNORE="STRING1:STRING2。。。"表示不記錄相應的命令的歷史
修改變量的值直接 HISTCONTROL='ignoreboth' 立即生效,但退出后失效,要永久有效,寫入配置文件
例如HISTTIMEFORMAT="`hostname ` %F %T "
例如:HISTIGNORE="passwd:echo"不記錄passwd命令和echo命令,但是例如echo 111這樣的還是會記錄,要想不記錄要寫成這樣:
HISTIGNORE="passwd:echo*"
3、有關history命令常用的快捷鍵:
調用命令歷史中的命令:
!數字 再次執行命令歷史中的第幾條命令
?。?span id="8wywmse" class="Apple-tab-span"> 再次執行上一條命令
!STRING 再次執行歷史命令中最近一個以STRING開頭的命令
???STRING 執行最近一條命令中包含關鍵字的命令
!-1 表示執行倒數第一條命令
ctrl+r 搜索歷史命令關鍵字
ctrl+P 執行最后一條歷史命令
調用歷史命令中的參數:
ESC .執行最后一條命令中的最后一條參數
!$ 直接執行最后一條命令的最后一個參數
!^ 直接執行最后一條命令的第一個參數
?。? 直接執行最后一條命令的第#個參數
!* 直接執行最后一條命令的全部參數
!n:$ 直接執行第n條歷史命令的最后一個參數
!n:^ 直接執行第n條歷史命令的第一個參數
!n:# 直接執行第n條歷史命令的第#個參數
!n:* 直接執行第n條歷史命令的全部參數
!STING:^ 從歷史命令中搜索以STRING開頭的命令,并獲取其第一個參數
!STRING:$ 從歷史命令中搜索以STRING開頭的命令,并獲取其最后一個參數
!STING:n 從歷史命令中搜索以STRING開頭的命令,并獲取其第n個參數
!STING:* 從歷史命令中搜索以STRING開頭的命令,并獲取其所有參數
第三部分 課后練習
1、只顯示某目錄下的隱藏文件
ll -d .*
ls -a /PATH |grep "^\..*"
2、只顯示某目錄下的目錄列表
ll /PATH |grep "^d.*"
原創文章,作者:M20-1倪文超,如若轉載,請注明出處:http://www.www58058.com/26145