Linux世界充滿了樂趣,我們越深入進去,就會發現越多有趣的事物。我們會努力給你提供一些小技巧,讓你和其他人有所不同,下面就是我們準備的3個小技巧。
1. 如何在不使用Cron的情況調度Linux下的任務
在Linux下,調度一個任務/命令稱之為Cron。當我們需要調度一個任務時,我們會使用Cron,但你知道我們在不使用Cron的情況也可以調度一個在將來時間運行的任務嗎?你可以按照如下建議操作……
每5秒鐘運行一個命令(date)然后將結果寫入到一個文件(data.txt)。為了實現這一點,我們可以直接在命令提示符運行如下單行腳本。
$ while true; do date 》 date.txt ; sleep 5 ; done &
上述腳本的解釋:
while true :讓腳本進入一個條件總為真的循環中,也就是制造一個死循環,將里邊的命令一遍遍地重復運行。
do :do是while語句中的關鍵字,它之后的命令會被執行,在它后邊可以放置一個或一系列命令。
date 》 date.txt :運行date命令,并將其輸出寫入到data.txt文件中。注意我們使用》,而不是>。
》 :對文件(date.txt)進行追加寫的操作,這樣每次運行命令后,輸出內容會被追加到文件中。如果使用>的話,則會一遍遍地覆蓋之前的內容。
sleep 5 :讓腳本處于5秒睡眠狀態,然后再運行之后的命令。注意這里的時間單位只能用秒。也就是說如果你想讓命令每6分鐘運行一次,你應該使用sleep 360。
done :while循環語句塊結束的標記。
& :將整個進程放到后臺運行。
類似地,我們可以這樣運行任何腳本。下邊的例子是每100秒運行一個名為script_name.sh的腳本。
另外值得一提的是上面提到的腳本文件必須處于當前目錄中,否則需要使用完整路徑(/home/$USER/…/script_name.sh)。實現如上功能的單行腳本如下:
$ while true; do /bin/sh script_name.sh ; sleep 100 ; done &
總結:上述的單行腳本并不是Cron的替代品,因為Cron工具支持眾多選項,更加靈活,可定制性也更高。然而如果我們想運行某些測試,比如I/O評測,上述的單行腳本也管用。
還可以參考:Linux 下 11 個定時調度任務例子
2. 如何不使用clear命令清空終端的內容
你如何清空終端的內容?你可能會認為這是一個傻問題。好吧,大家都清楚可以使用clear命令。如果養成使用ctrl + l快捷鍵的習慣,我們會節省大量時間。
Ctrl + l快捷鍵的效果和clear命令一樣。所以下一次你就可以使用ctrl + l來清空終端的內容了。
總結:因為ctrl + l是一個快捷鍵,我們不可以在腳本中使用。所以如果我們需要在腳本中清空屏幕內容,還是需要使用clear命令。但我能想到的所有其他情況,ctrl + l都更加有效。
3. 在其它目錄運行一個命令,然后自動返回當前工作目錄
這是一個很多人可能不知道的令人吃驚的技巧。你可能想在其它目錄運行任何一個命令,然后再回到當前目錄。要實現這樣的目的,你只需要將命令放在一個圓括號里。
我們來看一個例子:
avi@deb:~$ (cd /home/avi/Downloads/)
示例輸出:
avi@deb:~
它首先會cd到Downloads目錄,然后又回到了之前的家目錄。也許你認為里邊的命令根本沒有執行,或者是出了某種錯誤,因為從命令提示符看不出任何變化。讓我們簡單修改一下這個命令:
avi@deb:~$ (cd /home/avi/Downloads/ && ls -l)
示例輸出:
-rw-r----- 1 avi avi 54272 May 3 18:37 text1.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text2.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text3.txt avi@deb:~$
在上述命令中,它首先進入Downloads目錄,然后列出文件內容,最后又回到了當前目錄。并且它證明了命令成功執行了。你可以在括號中包含任何命令,執行完都會順利返回到當前目錄。
via: http://www.tecmint.com/useful-linux-hacks-commands/
作者:Avishek Kumar
譯者:goreliu
校對:wxy
本文由 LCTT 原創翻譯,Linux中國 榮譽推出
都說程序員的工資高,卻很少了解他們加班的痛苦,你是不是每次也在心里想,按時間折算下來這個工資都給少了,于是會想在心里吶喊,要么漲工資,要么漲工資,要么漲工資,為什么??因為不讓我們加班,這是不可能的!?。?/p>
想要顛覆自己的工作模式嗎?想要減少自己的加班時間嗎?加入我們,和我們一起探尋屬于我們程序員的自由模式吧!
一款針對程序員的原生APP,以共享知識技能為目的,以懸賞方式在線互動交互平臺。
我們擁有高達近20人頂尖的技術團隊,以及優秀的產品及運營團隊。團隊領軍人物均在行業內有10年以上的豐富經驗。
現在我們正在招募原始的參與英雄,您將同我們一起改變程序員的工作方式,改變程序員的世界!同時也會有豐厚的報酬。作為我們的原始的參與者,您將同我們一起體驗這款程序員神器,您可以提出專業的建議,我們會虛心采納。每一個人都會是英雄,而您就會是我們需要的英雄!同時您也可以邀請您的朋友一起參與這場英雄的招募互動。
我們不會耽誤你太多時間,我們只需要您的專業看法,只要您從一個月內抽出1個小時,以后您每天都可以節省兩個小時,一切都是為了我們自己!
來?還是不來?
接頭人暗號:1955246408 (QQ)
新聞熱點
疑難解答