search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

非常實用的Linux命令行技巧

關鍵時刻,第一時間送達!

作者丨Seco Max

翻譯lloog

譯者註:當我們不經常練習時,人們很容易忘記過去我們學到了什麼。這同樣經常發生在當我們使用Linux命令行時。作者介紹了一些有用的linux命令行使用技巧。

我們每天使用許多Linux命令行。我們從網上知道一些技巧,但如果我們不去練習,我們就有可能忘記。我決定做一個關於技巧和竅門的列表,這些技巧和竅門對於你來說可能是已經忘記的,或者可能是全新的。

輸出顯示為一個表

有時候,當你看到一個命令的輸出,由於過度擁擠的字元串可能就無法識別輸出(例如,mount命令的輸出)。那通過表格顯示呢?這很容易做到!

mount | column –t:

在這個例子中,因為空格,輸出是格式良好的。如果分隔符是別的東西,像冒號?(例如,在cat/etc/passwd的輸出中)。

指定分隔符-s參數,就像下面。

cat /etc/passwd | column -t -s:

重複一個命令,直到它運行成功

如果您在Google上搜索此功能,您會發現很多人會問到如何重複該命令,直到它成功返回並運行正常。 例如包括ping伺服器,直到它在線,檢查是否從特定目錄上傳具有特定擴展名的文件,檢查特定URL是否已經存在等。

您可以使用while true循環來實現:

在這個例子中, >/dev/null 2>&1 重定向你的程序的輸出到 /dev/null。 同時包括了Standard Error和 Standard Out。

對於我來說這是最酷的linux命令行技巧之一。

通過內存利用率排序進程

ps aux | sort -rnk 4:

通過CPU利用率排序進程

ps aux | sort -nk 3:

檢查你的架構,執行getconf LONG_BIT。

同時查看多個日誌文件

你可以用tail命令看你日誌沒有問題,但有時,你可能想看多個日誌文件。你需要使用支持文本高亮顯示、過濾和更多的功能的multi-tail命令:

如果在你的系統上沒有這個命令,你可以用apt-get install multitail。

回到你以前的目錄

只要輸入cd -,你將返回到前面的目錄。

做一個非互動式Shell會話互動

做到這一點, 需要改變設置從 ~/.bashrc 到 ~/.bash_profile.

定期監控命令輸出

使用觀察命令(watch df - h),你可以看任何命令的輸出。例如,你可以查看空閑空間,以及它是如何增長的。

通過watch命令,你可以想象你能用變數做什麼。

在關閉會話后運行程序

當您在後台運行的任何程序,它都會被你的shell關閉。如何才能在關閉shell后,你仍然可以繼續運行這個程序?

這可以通過使用nohup命令——這代表沒有hang-up:

nohup wget site.com/file.zip

這個命令是一種最被遺忘的Linux命令行技巧,因為我們很多人使用另一個命令screen:

在同一個目錄中將會生成一個叫nohup.out的文件,其中包含正在運行的程序的輸出:

命令很酷,對嗎?

對任何命令自動回答是或者否

如果你想自動實現用戶輸入yes的過程

你可以使用yes命令:yes | apt-get update。

或者你想自動輸入no,你可以使用yes no | command。

創建指定大小的文件

你可以使用dd命令創建指定大小的文件:dd if=/dev/zero of=out.txt bs=1M count=10。

下面創建裡面填充0,大小為10MB的文件:

以root用戶身份運行最後的命令

有時,你想以root身份運行命令,但忘記輸入sudo命令。你不必重新輸入;僅僅只需輸入sudo!

記錄你的命令行會話

如果你想記錄你在shell上輸入的內容,你可以使用腳本命令來保存你所有輸入的內容到一個叫typescript:script的文件中。

一旦你輸入exit,所有你輸入的命令將會寫入到那個文件,後面你可以重新查看它。

用佔位符代替空格

你可以使用tr命令代替任何其他字元,這很方便: cat geeks.txt | tr 『:[space]:』 『\t』 > out.txt。

將文件轉換為大寫或小寫

你可以使用:

cat myfile | tr a-z A-Z> output.txt

強大的Xargs命令

xargs命令是最重要的Linux命令行技巧之一。 您可以使用此命令將命令的輸出作為參數傳遞給另一個命令。 例如,您可以搜索PNGpng文件並對其進行壓縮或對其進行任何操作:

find. -name *.png -type f -print | xargs tar -cvzf images.tar.gz

或者,也許你在一個文件中有一個URL清單,你想要去下載它們或者用不同的方式處理它們:

cat urls.txt | xargs wget

記住,第一個命令的輸出傳遞到xargs命令的結尾。

如果你的命令需要在中間輸出怎麼辦?簡單!

僅僅使用{}結合-i參數,如下,用第一個命令輸出結果去代替參數的位置:

ls /etc/*.conf | xargs -i cp {} /home/likegeeks/Desktop/out



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦