新幹貨:開發人員都應該知道的CLI命令

大雄45發表於2020-02-06
導讀 在本文中,我們不會介紹ls,rm和cd等基本 。本文適合那些對 行有一定經驗並瞭解基本命令的使用者。

在本文中,我們不會介紹ls,rm和cd等基本命令。看到這些命令應該不會令您感到震驚。您甚至可能對它們非常熟悉,特別是如果您非常瞭解命令列的方式。我假設您之前至少已經在命令列上工作(或嘗試過工作)。如果您以前從未使用過命令列,建議您先閱讀一些基礎知識。

新幹貨:開發人員都應該知道的CLI命令新幹貨:開發人員都應該知道的CLI命令

本文適合那些對命令列有一定經驗並瞭解基本命令的使用者。對於那些覺得是時候該深入研究使用命令列的可能性的人來說。我在本文中為您列出了六個命令,並且提供了一些技巧。

wget

在類似Unix的作業系統上,wget命令透過網路下載HTTP、HTTPS或FTP服務的檔案。預設情況下,它包含在所有自重的 發行版中。

使用wget的最簡單方法是為它提供要透過HTTP下載的檔案的位置。使用wget下載檔案

http://website.com/static/images/header.jpg可以透過以下命令完成:

wget http://website.com/static/images/header.jpg

wgetwget的一大優點是它是非互動式的,這意味著它可以在使用者未登入時在後臺執行。這使您可以開始檢索並與系統斷開連線,讓wget完成工作。

scp

您是否曾經遇到過需要從本地計算機上的遠端伺服器獲取檔案的問題?例如,獲取使用者上傳的檔案會造成一些麻煩。

您可以使用scp命令透過命令列下載此檔案。Scp是安全複製的簡稱。但是,更重要的是它是一個遠端安全複製。該命令類似於您可能已經知道的cp命令,但是源或目標位於另一個系統上。

以下命令將檔案foobar.txt從遠端伺服器複製到本地目錄。

scp username@remotehost.com:/path/to/foobar.txt / some / local / directory

但是scp也可以用於將檔案從本地目錄複製到遠端伺服器。

scp /some/local/directory/foobar.txt username@remotehost.com:/ destination / path /

使用-r選項可以對目錄執行相同的操作,該選項以遞迴方式複製整個目錄。

ssh-keygen

ssh-keygen命令用於生成新的SSH金鑰對。可以在Gitlab或Bitbucket中使用此命令生成的公共SSH金鑰來建立安全連線。

將SSH金鑰新增到Gitlab或Bitbucket後,每次嘗試將檔案推送到遠端分支時都不會提示您輸入密碼。

要生成SSH金鑰對,請使用以下命令:

ssh-keygen -t ed25519

請注意,在上面的示例中,我們使用了ED25519簽名演算法。儘管ED25519被認為是最佳實踐,但您應該始終對不同的可用簽名演算法進行一些研究。

生成SSH金鑰對並在Gitlab或Bitbucket中正確設定它最多花費十分鐘(大約三分鐘),但這是完全值得的!

chmod

在Unix和類似Unix的作業系統中,chmod是命令和系統呼叫,用於更改檔案系統物件(檔案和目錄)的訪問許可權。

根據Wikipedia,這是chmod命令的定義。由於檔案許可權配置錯誤,導致伺服器無法訪問某個檔案。

chmod命令本身非常簡單,但是賦予檔案和目錄正確的許可權又是另一回事。

ssh-keygen -t ed25519

第一個示例向robots.txt檔案的使用者和組授予讀寫許可權。對該檔案授予了他人讀取許可權。

第二個示例為public / images資料夾授予使用者和組讀取、寫入和執行許可權。其他人被授予對該資料夾的讀取和執行許可權。

如果您想了解有關設定檔案和目錄的正確許可權的更多資訊,建議您閱讀有關chmod的Wikipedia頁面。

tar

Linux tar代表磁帶存檔。它用於將許多檔案收集到一個存檔檔案中。Tar是建立壓縮歸檔檔案最廣泛使用的命令。

讓我們從如何為特定目錄建立存檔檔案開始:

tar -cvf my-archive.tar /path/to/directory

該命令將導致一個名為my-archive.tar的存檔檔案,tar檔案,它包含在當前工作目錄中建立的/path/to/目錄的所有檔案。

建立存檔檔案是第一步。第二部分包括解壓縮存檔檔案,因為在某些時候我們想使用tar檔案中的檔案。您可以透過鍵入以下命令將檔案解壓縮到特定目錄:

tar -xvf my-archive.tar -C / home / myfolder / 
alias

每個人都使用一些太長或太複雜而無法完全記住的命令。幸運的是,您可以為該命令建立一個alias,因此您不必記住整個命令。

alias short-command="your custom and very long command here"

儘管以這種方式建立alias存在一個問題:此alias是臨時的。如果以此方式建立,則該alias僅可用於當前的終端會話。

要在會話之間保留alias,可以將其儲存在使用者的 配置配置檔案中。如果您分別使用Bash或ZSH,則此配置檔案可能位於〜/ .bashrc或〜/ .zshrc中。

技巧1:直接輸出

螢幕是標準輸出裝置。但有時您不想在螢幕上輸出所有內容。在某些情況下,您可能希望將某些命令的結果輸出到檔案中。

例如,用於日誌記錄的目的。要重定向輸出,可以使用>。在以下命令中,ls -al的輸出重定向到檔案myfile而不是螢幕。

ls -al> myfile

在此示例中,我使用了ls,但實際上它可以是任何具有某些輸出的命令。為了確認這是可行的,您可以檢查myfile檔案。

技巧2:合併命令

一次可以執行兩個或多個命令。分號(;)運算子允許您執行此操作。您可以連續執行多個命令,而不管每個先前的命令是否成功。

ls -al; pwd;

如果要僅在第一個命令成功的情況下執行第二個命令,請使用邏輯和運算子(即&&)分隔命令。

mkdir images && cd images

如果我們設法建立一個資料夾,我們只想CD到images資料夾。

有時您可能只想在第一個命令不成功的情況下執行第二個命令。為此,我們使用邏輯OR運算子,即||。

原文來自:  https://www.linuxprobe.com/commands-that-developers.html


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2674686/,如需轉載,請註明出處,否則將追究法律責任。

相關文章