Ⅰ Linux下5個有趣的命令行技巧介紹
你有將Linux物盡其用嗎?對很多Linux用戶來說,有很多看起來是技巧的有用特性。有些時候你會需要這些技巧。本文會幫助你更好得使用一些命令,發揮其更強大的功能。
圖1:5個命令行技巧
我們開始一個新的系列,在這里我們還會寫一些技巧,並且用盡量小的篇幅寫清楚。
1.
我們可以使用history命令來查看曾經運行過的命令。
這里是一個history命令的示例輸出。
代碼如下:
#
history
從history命令輸出看,很明顯,命令的執行時間沒有被打出來。有解決方法嗎?有的!運行如下命令:
代碼如下:
#
HISTTIMEFORMAT="%d/%m/%y
%T
"
#
history
如果你想讓這個修改永久生效,添加如下的一行內容到~/.bashrc文件中:
代碼如下:
export
HISTTIMEFORMAT="%d/%m/%y
%T
"
然後,在終端中運行:
代碼如下:
#
source
~/.bashrc
命令和選項的解釋:
history
–
查看運行過的命令
HISTIMEFORMAT
–
設置時間格式的環境變數
%d
–
天
%m
–
月
%y
–
年
%T
–
時間戳
source
–
簡而言之就是將文件內容發送給shell來執行
.bashrc
–
BASH以交互方式啟動時運行的腳本文件
2.
如何測試磁碟寫入速度?
一行dd命令腳本就可以實現。
代碼如下:
#
dd
if=/dev/zero
of=/tmp/output.img
bs=8k
count=256k
conv=fdatasync;
rm
-rf
/tmp/output.img
命令和選項的解釋:
dd
–
轉換和復制文件
if=/dev/zero
–
指定輸入文件,默認為stdin(標准輸入)
of=/tmp/output.img
–
指定輸出文件,默認為stdout(標准輸出)
bs
–
一次讀和寫的塊大小,最大可以以MB為單位
count
–
復制次數
conv
–
使用逗號分隔的策略來轉換文件(LCTT
譯註:比如將大寫字母轉換成小寫,echo
AA
|
dd
conv=lcase)
rm
–
刪除文件和目錄
-rf
–
(-r)
遞歸地刪除目錄和其中的內容,(-f)強行刪除而不輸出確認信息
3.
你如何獲取吃掉你磁碟空間的最大的6個文件?
一個使用命令的簡單單行腳本即可實現,命令主要用於獲取文件的空間使用情況。
代碼如下:
#
-hsx
*
|
sort
-rh
|
head
-6
命令和選項的解釋:
–
估計文件的空間使用情況
-hsx
–
(-h)更易讀的格式,(-s)匯總輸出,(-x)跳過其他文件系統的文件
sort
–
對文本文件按行排序
-rf
–
(-r)將比較的結果逆序輸出,(-f)忽略大小寫
head
–
輸出文件的頭幾行
4.
獲取一個文件的詳細狀態信息
可以使用stat命令
代碼如下:
#
stat
filename_ext
(例如:stat
abc.pdf)
5.
顯示幫助
最後一個技巧是為那些入門者准備的,如果你是有經驗的用戶,可能不需要它,除非你想從中尋找樂趣。入門者可能有Linux命令行恐懼症,下面的命令會隨機顯示一個man手冊頁。對入門者來說,好處是總會學到新的東西,而且不會厭倦。
代碼如下:
#
man
$(ls
/bin
|
shuf
|
head
-1)
命令和選項的解釋:
man
–
Linux
man手冊
ls
–
列出文件
/bin
–
系統可執行文件的路徑
shuf
–
把輸入內容按行隨機打亂並輸出
head
–
輸出文件的頭幾行