Linux指令:export

快速指南介紹了“export”指令,該指令用於將變量導出到子進程中 “export”指令用於將變量導出到子進程中。 這意味著什麼呢? 假設您以以下方式定義了一個名為TEST的變量: TEST="test" 您可以使用echo $TEST來打印其值: 但是,如果您嘗試在名為script.sh的文件中定義一個包含上述命令的Bash腳本: 然後,您設置chmod u+x script.sh,並使用./script.sh執行此腳本,echo $TEST將不打印任何內容! 這是因為在Bash中,TEST 變量是在shell本地定義的。在執行shell腳本或其他命令時,將啟動一個子shell來執行它,該子shell不包含當前shell的本地變量。 為了使該變量在子shell中可用,我們需要使用以下方式定義TEST變量: export TEST="test" 嘗試這樣做,現在運行./script.sh應該會打印出“test”: 有時您需要將內容附加到變量中。這在 PATH變量中經常使用。您可以使用以下語法: export PATH=$PATH:/new/path 通常在以這種方式創建新變量時使用export,同樣地,當使用Bash在.bash_profile或.bashrc配置文件中創建變量時,或者使用Zsh在.zshenv中創建變量時也要使用export。 要刪除一個變量,可以使用 -n 選項: export -n TEST 調用export而不帶任何選項將列出所有導出的變量。 export指令適用於Linux、macOS、WSL以及任何具有UNIX環境的地方。

Linux指令:gzip

gzip指令是用來壓縮檔案的快速指南,它使用gzip壓縮協議(也稱為LZ77)。 以下是最簡單的使用方式: gzip 檔案名稱 這個指令會將檔案壓縮,並在檔案名稱後面加上.gz的擴展名,同時刪除原始檔案。如果不想刪除原始檔案,可以使用-c選項並使用輸出重定向將輸出寫入檔案名稱.gz檔案中: gzip -c 檔案名稱 > 檔案名稱.gz -c選項指定輸出將被寫入標準輸出,並且保留原始檔案不變。 或者可以使用-k選項: gzip -k 檔案名稱 gzip有不同的壓縮等級。壓縮等級越高,壓縮(和解壓縮)所需時間越長。等級範圍從1(最快、壓縮率最差)到9(最慢、壓縮率較好),預設為6。 可以使用-<數字>選項選擇指定的壓縮等級: gzip -1 檔案名稱 可以列出多個檔案進行壓縮: gzip 檔案名稱1 檔案名稱2 使用-r選項可以遞迴地壓縮目錄中的所有檔案: gzip -r 目錄名稱 -v選項可以輸出壓縮的百分比資訊。以下是使用-k(保留)選項的範例: gzip指令還可以使用-d選項來解壓縮檔案: gzip -d 檔案名稱.gz gzip指令可以在Linux、macOS、WSL以及任何擁有UNIX環境的地方使用。

Linux指令:history

這是一個關於history指令的快速指南,該指令用於查看命令行歷史記錄。 每次執行一個指令,它都會記錄在歷史中。 您可以使用以下命令顯示所有的歷史記錄: history 這會顯示帶有編號的歷史記錄: 您可以使用語法!<command number>來重複執行存儲在歷史記錄中的指令,在上面的例子中輸入!121將重複執行ls -al | wc -l指令。 通常,最近的500個指令都會被保存在歷史中。 您可以結合使用grep來查找您運行的指令: history | grep docker 要清除歷史記錄,執行history -c命令。 history指令可在Linux、macOS、WSL以及任何具有UNIX環境的地方使用。

Linux指令:mv

快速指南mv命令,用於移動文件和文件夾 一旦你有了一個文件,你可以使用“mv”命令將其移動。您需要指定文件的當前路徑和新路徑: touch test mv pear new_pear “pear”文件現已移動到“new_pear”。這是如何重命名文件和文件夾的方法。 如果最後一個參數是一個文件夾,則位於第一個參數路徑的文件將被移動到該文件夾中。在這種情況下,您可以指定一個文件列表,它們將全部移動到由最後一個參數識別的文件夾路徑中: touch pear touch apple mkdir fruits mv pear apple fruits #将pear和apple移動到fruits文件夹中 本命令適用於Linux、macOS、WSL和任何具有UNIX環境的地方

Linux指令:ping

快速指南到ping命令,用於ping一個網絡主機 ping命令用於ping一個特定的網絡主機,可以是本地網絡或互聯網上的主機。 使用語法ping <host>,其中<host>可以是域名或IP地址。 這是一個ping google.com的示例: 該命令發送一個請求到服務器,服務器返回一個響應。 默認情況下,ping每秒發送一次請求,并且會一直運行,直到用Ctrl-C停止它,除非通過-c選項傳遞您想要嘗試的次數:ping -c 2 google.com。 一旦停止ping,它將打印有關結果的一些統計信息:丟包的百分比以及有關網絡性能的統計信息。 正如您所看到的屏幕上顯示主機的IP地址以及獲得響應所花費的時間。 並非所有的服務器都支持ping,如果請求超時: 有時這是故意的,為了“隱藏”服務器,或者只是為了減少負載。 ping數據包也可能被防火牆過濾。 ping使用ICMP協議 (Internet Control Message Protocol)工作,這是一個與TCP或UDP一樣的網絡層協議。 該請求將一個帶有ECHO_REQUEST消息的數據包發送到服務器,服務器返回一個ECHO_REPLY消息。我不會詳細介紹,但這是基本概念。 ping主機對於了解主機是否可到達(假設它支持ping)以及它與您之間的距離有多遠是有用的。通常情況下,就地理位置而言,服務器越接近,返回您的時間就越短,這是由於線纜引入更多延遲的簡單物理原則。 ping命令在Linux、macOS、WSL以及任何具有UNIX環境的地方可用。

Linux指令:printenv

printenv指令的快速指南,用於打印環境變量的值 在任何shell中,都有許多環境變量,它們可以由系統設置,也可以由您自己的shell腳本和配置文件設置。 您可以使用printenv指令將它們全部打印到終端窗口。輸出結果將類似於以下內容: HOME=/Users/flavio LOGNAME=flavio PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin PWD=/Users/flavio SHELL=/usr/local/bin/fish 通常還會有更多的行。 您可以附加一個變量名作為參數,僅顯示該變量的值: printenv PATH printenv指令可以在Linux、macOS、WSL以及任何其他UNIX環境中使用。

Linux指令:rmdir

快速指南:rmdir命令用於刪除文件夾 就像您可以使用mkdir命令創建文件夾一樣,您可以使用rmdir命令刪除文件夾: mkdir fruits rmdir fruits 您也可以同時刪除多個文件夾: mkdir fruits cars rmdir fruits cars 需要注意的是,您要刪除的文件夾必須是空的。 若要刪除包含文件的文件夾,我們將使用更通用的rm命令,該命令可刪除文件和文件夾,使用-rf選項: rm -rf fruits cars 請小心使用此命令,它不會要求確認操作,並且將立即刪除您要求刪除的任何內容。 在命令行界面中刪除文件時,文件將無法恢復,並且恢復丟失的文件可能會比較困難。 該命令在Linux、macOS、WSL和任何UNIX環境中均適用。

Linux指令:tail

tail指令的快速指南,用於監視文件的變化 在我看來,tail的最佳用例是使用-f選項調用時。它打開文件並監視文件的變化。每次文件中有新內容時,它都會在窗口中打印出來。這對於監視日誌文件非常有用,例如: tail -f /var/log/system.log 要退出,請按下ctrl-C。 您可以打印文件中的最後10行: tail -n 10 <filename> 您可以從特定行開始打印整個文件內容,使用該行號前面的+: tail -n +10 <filename> tail可以做更多的事情,我總是建議檢查man tail。 這個指令在Linux、macOS、WSL以及任何具有UNIX環境的地方都可以使用

Linux指令:type

快速介紹type指令,它用於確定指令的類型。 指令可以分為以下4種類型: 可執行檔 Shell內建程式 Shell函數 別名 使用type指令可以幫助我們確定指令的類型,不論是出於好奇還是其他需求。它會告訴你指令將如何解釋和解析。 輸出結果取決於所使用的Shell。這是Bash的輸出: 這是Zsh的輸出: 這是Fish的輸出: 其中一個最有趣的地方是,對於別名,它會告訴你它所對應的指令。你可以在Bash和Zsh的輸出中看到ll別名,但Fish默認提供它作為內建Shell函數。 type指令可在Linux、macOS、WSL和任何UNIX環境中使用

Linux指令:who

快速指南介紹 who 指令,用於顯示系統中已登入的使用者。 who 指令顯示已登入系統的使用者。 除非你使用的是一個多人存取的伺服器,否則很有可能你將是唯一已登入的使用者,但可能存在多個不同的shell。 你可以看到所使用的終端名稱以及會話開始的時間/日期。 加上 -aH 標誌會顯示更多資訊,包括閒置時間和終端的程序ID: 特殊的 who am i 指令會列出目前終端會話的詳細資訊: who 指令可在Linux、macOS、WSL以及任何具有UNIX環境中使用。