目錄
1、循環指令
2、輸出重定向
3、壓縮檔案
4、計數
5、產生數字
6、管理你的SSH金鑰
7、查找过去的命令
8、将多个命令作为一个整体传递
首頁 運維 Nginx 八個 Shell 指令,讓你瞬間成為 Linux 命令列大師

八個 Shell 指令,讓你瞬間成為 Linux 命令列大師

Jun 17, 2023 am 09:38 AM
命令 程式碼 bash

擁有紮實的程式設計基礎顯然是一位優秀軟體工程師的必備素質。掌握至少一門程式語言是非常重要的,無論是解釋型語言如Python,或是編譯型語言如C 。然而,這只是成為一個真正全面發展的工程師的一個面向。如果你迷失在Shell環境中,那些基礎知識就沒有任何用處。

Bash指令的靈活應用可以讓你進入傳統程式語言無法涉及的領域。有時候,你其實並不需要使用更強大的程式語言。使用Shell,您可以更快速、更方便地完成所需任務,而且無需額外的依賴項。

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

在本文中,我們將探討一些非常實用的Bash指令。這些命令可以幫助你避免編寫比實際上需要更多的程式碼。下次遇到問題時,不妨試試這些指令。

1、循環指令

linuxmi@linuxmi:~/www.linuxmi.com$ while true; do echo "hello $(date)"; sleep 1; done
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

你不必為了循環一些東西而跳進一個龐大的程式語言中。在Bash中很容易實現定期獲得輸出或對基本資料進行迭代。

這行程式碼示範如何在Shell中建立一個簡單的無限while循環。你只要用分號把所有內容拼接在一起,就完成了。你可以隨意更改執行的命令,並相應地調整sleep的計時器。

當你執行這個指令時,你應該在終端機上看到日期每秒變化一次。

2、輸出重定向

linuxmi@linuxmi:~/www.linuxmi.com$ echo "hello linux迷 www.linuxmi.com" | tee linuxmi.rs | less
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

tee指令可以做到在其他語言中需要多行程式碼才能實現的功能。使用這個方便的小工具,你可以將某些輸入發送到檔案或其他命令,然後再將其傳遞給另一個命令。它實際上就像在水管中安裝一個“T”形閥門。你可以將一部分輸出引出,而它會繼續沿著管道流動。

上面的範例將從echo命令獲取的「hello linux迷 www.linuxmi.com」文字發送到linuxmi.rs文件,然後繼續將其發送到less。一種重寫方式是:你將獲得一個帶有輸出內容的文件,同時可以在螢幕上使用less命令進行查看。

3、壓縮檔案

linuxmi@linuxmi:~/www.linuxmi.com$ tar -czvf linuxmi.tar.gz linuxmi.sh
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

在命令列上移動檔案和目錄是一項重要的技能。如果你正在處理某個東西並需要在主機之間移動它,或者只是想壓縮檔案以進行離線存儲,tar命令是你的好幫手。

使用以上指令和選項,可以將目錄壓縮為全新的tar.gz壓縮包。現在你可以快速地帶上你的文件了。

4、計數

linuxmi@linuxmi:~/www.linuxmi.com$ echo -e "linuxmi\n linuxmi.com\n www.linuxmi.com\n www.93139.com" > linuxmi.txt | wc -l
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

想知道檔案中有多少行?很簡單。使用wc實用程式。 「word count」(單字計數)是它實際上的含義,但是它也可以用來計算許多其他內容,例如行數。

上面的片段將四行文字輸出到一個檔案中,然後使用wc計算行數。如果你需要操作一定數量的行或確認進程是否寫入了新行,這個工具將非常實用。

5、產生數字

linuxmi@linuxmi:~/www.linuxmi.com$ seq 95 100
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

如此簡單,但非常有幫助。在Bash中產生數字非常容易,只需使用seq實用程式。這個巧妙的小指令可輸出數字序列,你可以在循環、文字檔或其他需要數字列表的地方使用。

你也可以根據需要更改分隔符號:

seq -s " " 1 10
登入後複製

echo {0..10}
登入後複製

這將以空格而不是預設的換行符分隔所有數字。你也可以使用echo命令和..操作符來獲得相同類型的結果。

6、管理你的SSH金鑰

linuxmi@linuxmi:~/www.linuxmi.com$ eval $(ssh-agent) && ssh-add && ssh-add -l
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

#對SSH金鑰的基本了解和如何管理它們是絕對必要的。你會發現了解ssh-add和ssh-agent實用程式可以比你想像的更有益。

上述指令執行了幾個重要的動作:

  • eval命令将为你执行ssh-agent,并确保它在后台运行。
  • ssh-add命令将添加你的默认SSH密钥。如果你为默认密钥设置了密码,它将提示你输入密码。
  • 最后,ssh-add -l命令显示当前在你的代理中添加的所有密钥。

这个简单的一行命令确保你的代理工作正常,并包含了正确的密钥。当你需要连接到某个服务或获取一些代码时,下一步就可以直接开始了。

7、查找过去的命令

linuxmi@linuxmi:~/www.linuxmi.com$ history | grep "top"
登入後複製
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

或者按下CTRL + R,然后输入top

还记得很久以前运行的那个命令吗?我也不记得了。在历史记录中搜索它吧。

如果你像我一样记忆力不太好,那么history命令非常有用。它会显示当前终端会话中所有已运行的命令列表。反向交互式搜索或grep工具的真正威力在于能够找到之前执行的命令。

如果你只是想查看命令历史记录而不是执行它,你可以使用grep搜索。要统一搜索和执行操作,你可以使用CTRL + R的反向交互式搜索历史记录组合键。一旦按下快捷键,一个交互提示符就会出现,当你开始输入命令时,控制台会显示相应的匹配命令。

8、将多个命令作为一个整体传递

linuxmi@linuxmi:~/www.linuxmi.com$ history | grep "top"
登入後複製
登入後複製

八个 Shell 命令,让你瞬间成为 Linux 命令行大师

有时Bash会变得有点奇怪。变量插值可能出错,嵌套引号可能会混乱且难以跟踪。情况将变得更加复杂,尤其是当你需要在不同的二进制文件或服务中传递命令字符串时。在这种情况下,你可以使用bash命令将一组命令作为单个实体进行评估。

这个指令将接收纯文本字符串,然后按照常规的Bash语法来进行解析。对于外部shell来说,你只是运行一个命令并传递一个参数,但实际上你是在指示Bash解析多个命令的字符串并执行它们。

以上是八個 Shell 指令,讓你瞬間成為 Linux 命令列大師的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在Windows 11/10中執行SUDO命令 如何在Windows 11/10中執行SUDO命令 Mar 09, 2024 am 09:50 AM

透過sudo指令,使用者可以在提升權限模式下執行指令,而無需切換到超級使用者模式。本文將介紹如何在Windows系統中模擬類似sudo指令的功能。什麼是數道司令部? Sudo(「超級使用者do」的縮寫)是一種命令列工具,允許基於Unix的作業系統(如Linux和MacOS)的使用者以提升的權限執行命令,這些權限通常是管理員所擁有的。在Windows11/10中執行SUDO命令然而,隨著最新發布的Windows11Insider預覽版推出,Windows用戶現在也可以體驗到這項功能。這項新功能使用戶能夠

藍色畫面代碼0x0000001怎麼辦 藍色畫面代碼0x0000001怎麼辦 Feb 23, 2024 am 08:09 AM

藍屏代碼0x0000001怎麼辦藍屏錯誤是電腦系統或硬體出現問題時的一種警告機制,代碼0x0000001通常表示出現了硬體或驅動程式故障。當使用者在使用電腦時突然遇到藍色畫面錯誤,可能會感到驚慌失措。幸運的是,大多數藍色畫面錯誤都可以透過一些簡單的步驟來排除和處理。本文將為讀者介紹一些解決藍屏錯誤代碼0x0000001的方法。首先,當遇到藍色畫面錯誤時,我們可以嘗試重

win11網卡mac位址怎麼查? Win11使用指令取得網路卡MAC位址方法 win11網卡mac位址怎麼查? Win11使用指令取得網路卡MAC位址方法 Feb 29, 2024 pm 04:34 PM

本文將向讀者介紹在Win11系統中如何使用命令提示字元(CommandPrompt)來尋找網路介面卡的實體位址(MAC位址)。 MAC位址是網路介面卡(NIC)的唯一標識符,它在網路通訊中扮演著重要角色。透過命令提示符,使用者可以輕鬆地獲取到當前電腦上所有網路適配器的MAC位址信息,這對於網路故障排查、配置網路設定等任務非常有幫助。方法一:使用「命令提示字元」1、按【Win+X】組合鍵,或【右鍵】點選工作列上的【Windows標誌】,在開啟的選單項目中,選擇【執行】;2、執行窗口,輸入【cmd】指令,然

hyperv增強會話模式在哪? Win11用指令啟用或停用Hyper-V增強會話模式技巧 hyperv增強會話模式在哪? Win11用指令啟用或停用Hyper-V增強會話模式技巧 Feb 29, 2024 pm 05:52 PM

Win11系統中,可以透過指令來啟用或停用Hyper-V增強會話模式。本文將介紹如何使用指令來進行操作,幫助使用者更好地管理和控制系統中的Hyper-V功能。 Hyper-V是Microsoft提供的一種虛擬化技術,它內建在WindowsServer和Windows10、11(家用版除外)中,允許使用者在Windows系統中執行虛擬作業系統。雖然虛擬機器與宿主機作業系統隔離,但透過設置,它們仍然能夠使用宿主機的資源,如音效卡和儲存設備等。其中一個關鍵設定就是啟用「增強會話模式」。增強會話模式是Hyper

超實用!讓你成為Linux大神的Sar命令 超實用!讓你成為Linux大神的Sar命令 Mar 01, 2024 am 08:01 AM

一、概述sar命令透過從系統活動中收集的資料來展示系統的使用報告。這些報告由不同部分組成,每個部分都包含資料類型和收集資料的時間。 sar指令的預設模式顯示存取CPU的各種資源(如使用者、系統、I/O調度等)在不同時間增量下的CPU使用率。此外,它還顯示給定時間段內空閒CPU的百分比。報告底部列出了每個數據點的平均值。 sar預設每10分鐘報告一次收集的數據,但您可以使用各種選項來篩選和調整這些報告。與uptime指令類似,sar指令也可協助您監控CPU的負載狀況。透過sar,您可以了解過度負載發

GE通用遠端程式碼可在任何裝置上編程 GE通用遠端程式碼可在任何裝置上編程 Mar 02, 2024 pm 01:58 PM

如果您需要遠端編程任何設備,這篇文章會為您帶來幫助。我們將分享編程任何設備的頂級GE通用遠端代碼。通用電氣的遙控器是什麼? GEUniversalRemote是一款遙控器,可用於控制多個設備,如智慧電視、LG、Vizio、索尼、藍光、DVD、DVR、Roku、AppleTV、串流媒體播放器等。 GEUniversal遙控器有各種型號,具有不同的功能和功能。 GEUniversalRemote最多可以控制四台設備。頂級通用遙控器代碼,可在任何裝置上編程GE遙控器配備一組代碼,使其能夠與不同設備配合。您可

Linux 重啟服務的正確方式是什麼? Linux 重啟服務的正確方式是什麼? Mar 15, 2024 am 09:09 AM

Linux重啟服務的正確方式是什麼?在使用Linux系統時,經常會遇到需要重新啟動某個服務的情況,但是有時我們可能會在重新啟動服務時遇到一些問題,例如服務沒有真正停止或啟動等情況。因此,掌握正確的重啟服務的方式是非常重要的。在Linux中,通常可以使用systemctl指令來管理系統服務。 systemctl指令是systemd系統管理員的一部分

win11小元件怎麼刪除? 一條指令卸載 Windows11小元件功能技巧 win11小元件怎麼刪除? 一條指令卸載 Windows11小元件功能技巧 Apr 11, 2024 pm 05:19 PM

小組件是Win11系統的新增功能,預設是開啟狀態,但是難免會出現有部分用戶不太使用到小組件,看著佔位置,因此想要禁用小組件的情況,那麼應該如何操作呢?下面小編就教大家操作方法,大家可以去試試看。什麼是小組件?小元件是小卡片,用於在Windows桌面上顯示你最喜愛的應用程式和服務中的動態內容。它們顯示在小組件板上,你可以在其中發現、固定、取消固定、排列、調整大小和自訂小組件以反映你的興趣。小組件板經過最佳化,可根據使用情況顯示相關小組件和個人化內容。從工作列的左角開啟小組件板,可在其中看到即時天氣

See all articles