你是Linux新手還是有點生疏?以下是您需要知道的所有命令。可以將此作為Linux終端的重要參考。這也適用於macOS命令列。
Linux包含了大量的命令,但是我們選擇了37個最重要的命令在這裡展示。學習這些命令,您就可以在Linux命令提示符下更加熟悉了。
以下列表按字母順序排列。命令在列表中的位置並不代表它的有用性或簡單性。有關命令用法的最後一句話,請參閱其手冊頁。人的命令在我們的名單上,當然是“手動”的縮寫
alias命令允許您為命令或命令序列指定自己的名稱。然後您可以鍵入您的短名稱,shell將為您執行命令或命令序列。
alias cls=clear這將設定一個名為cls的別名。這將是clear的另一個名字。當您鍵入cls時,它將清除螢幕,就像您鍵入clear一樣。你的別名可以省下一些按鍵,當然。但是,如果您經常在Windows和Linux命令列之間移動,您會發現自己在一臺Linux機器上鍵入windowscls命令,而這臺機器不知道您的意思。現在它會知道的。
別名可能比那個簡單的例子複雜得多。這裡有一個名為pf(用於processfind)的別名,它稍微複雜一點。注意在命令序列周圍使用引號。如果命令序列中有空格,則這是必需的。此別名使用ps命令列出正在執行的程序,然後透過grep命令對它們進行管道傳輸。grep命令在ps的輸出中查詢與命令列引數$1匹配的條目。
alias pf="ps -e | grep $1"如果您想發現shutter程序的程序ID(PID),或者想知道shutter是否正在執行,您可以使用這樣的別名。鍵入pf、空格和您感興趣的程序的名稱:
pf shutter命令列上定義的別名將隨著終端視窗而消失。當你關上它,它們就不見了。要使您的別名始終可用,請將其新增到.bash\u別名主目錄中的檔案。
cat命令(concatenate的縮寫)將檔案的內容列出到終端視窗。這比在編輯器中開啟檔案要快,而且不可能意外更改檔案。要讀取.bash\u log\u檔案的內容,請在主目錄是當前工作目錄時鍵入以下命令,預設情況下是這樣的:
cat .bash_logout當檔案長度超過終端視窗中的行數時,文字將以過快的速度閃過,使您無法閱讀。您可以透過較少的管道傳遞cat的輸出,使過程更易於管理。使用較少的資源,您可以使用上下箭頭鍵、PgUp和PgDn鍵以及Home和End鍵在檔案中前後滾動。鍵入q從less退出。
cat .bashrc | lesscd命令更改當前目錄。換句話說,它將您移動到檔案系統中的一個新位置。
如果要更改到當前目錄中的目錄,只需鍵入cd和另一個目錄的名稱即可。
cd work如果要更改到檔案系統目錄樹中其他位置的目錄,請使用前導/,提供指向該目錄的路徑。
cd /usr/local/bin要快速返回主目錄,請使用~(tilde)字元作為目錄名。
cd ~還有一個竅門:你可以用雙點符號。。表示當前目錄的父目錄。您可以鍵入以下命令進入目錄:
cd ..假設你在一個目錄裡。父目錄中有其他目錄,以及您當前所在的目錄。要切換到其他目錄之一,可以使用。。符號來縮短您必須鍵入的內容。
cd ../gameschmod命令設定檔案或資料夾的檔案許可權標誌。標誌定義誰可以讀取、寫入或執行檔案。當您使用-l(長格式)選項列出檔案時,您將看到一個字串
-rwxrwxrwx如果第一個字元是a,則專案是檔案,如果是d,則專案是目錄。字串的其餘部分是三組三個字元。從左邊開始,前三個代表所有者的檔案許可權,中間三個代表組的檔案許可權,最右邊的三個字元代表其他人的許可權。在每個集合中,r代表讀取,w代表寫入,x代表執行。
如果存在r、w或x字元,則授予檔案許可權。如果信件不存在,而出現-則不授予該檔案許可權。
使用chmod的一種方法是將要授予所有者、組和其他人的許可權作為3位數字提供。最左邊的數字代表所有者。中間的數字代表組。最右邊的數字代表其他數字。此處列出了您可以使用的數字及其代表的內容:
看看我們的示例.txt檔案中,我們可以看到這三組字元都是rwx。這意味著每個人都有讀取、寫入和執行檔案的許可權。
要為所有者設定讀、寫和執行許可權(列表中的7);為組設定讀和寫許可權(列表中的6);為其他組設定讀和執行許可權(列表中的5),我們需要使用chmod命令中的數字765:
chmod -R 765 example.txt要為所有者設定讀、寫和執行許可權(列表中的7),為組和其他組設定讀和寫許可權(列表中的6),我們需要使用chmod命令中的數字766:
chmod 766 example.txtchown命令允許您更改檔案的所有者和組所有者。列出我們的示例.txt我們可以在檔案描述中看到戴夫。其中第一個表示檔案所有者的名稱,在本例中是使用者dave。第二個條目顯示組所有者的名稱也是dave。每個使用者都有一個在建立使用者時建立的預設組。該使用者是該組的唯一成員。這表明該檔案不與任何其他使用者組共享。
可以使用chown更改檔案的所有者或組,或同時更改兩者。必須提供所有者和組的名稱,並用:字元分隔。你需要使用sudo。要保留dave作為檔案的所有者,但要將mary設定為組所有者,請使用以下命令:
sudo chown dave:mary example.txt要將所有者和組所有者都更改為mary,可以使用以下命令:;
sudo chown mary:mary example.txt要更改檔案,使dave再次成為檔案所有者和組所有者,請使用以下命令:
sudo chown dave:dave example.txtcurl命令是從統一資源***(url)或internet地址檢索資訊和檔案的工具。
curl命令可能不是Linux發行版的標準部分。如果您使用的是Ubuntu或其他基於Debian的發行版,請使用apt get將此軟體包安裝到您的系統上。在其他Linux發行版上,請改用Linux發行版的包管理工具。
sudo apt-get install curl假設您想從GitHub儲存庫中檢索單個檔案。沒有官方支援的方法。您必須克隆整個儲存庫。但是,使用curl,我們可以自己檢索所需的檔案。
此命令為我們檢索檔案。請注意,您需要使用-o(output)選項指定要儲存的檔案的名稱。如果不這樣做,檔案的內容將在終端視窗中快速滾動,但不會儲存到計算機。
curl https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.c如果不想檢視下載進度資訊,請使用-s(靜默)選項。
curl -s https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.cdf命令顯示計算機上已裝入的檔案系統的大小、已用空間和可用空間。
兩個最有用的選項是-h(人類可讀)和-x(排除)選項。“人類可讀”選項以Mb或Gb為單位顯示大小,而不是以位元組為單位。exclude選項允許您告訴df不要考慮您不感興趣的檔案系統。例如,使用snap命令安裝應用程式時建立的squashfs偽檔案系統。
df -h -x squashfs相關:如何從Linux終端檢視可用磁碟空間和磁碟使用情況
diff命令比較兩個文字檔案並顯示它們之間的差異。有許多選項可根據您的要求定製顯示器。
-y(並排)選項並排顯示行差異。使用-w(width)選項可以指定用於避免環繞線的最大線寬。這兩個檔案在本例中稱為alpha1.txt和alpha2.txt。--suppress common line阻止diff列出匹配的行,使您可以將注意力集中在有差異的行上。
diff -y -W 70 alpha1.txt alpha2.txt --suppress-common-lines相關:如何比較Linux終端中的兩個文字檔案
echo命令將文字字串列印(回顯)到終端視窗。
下面的命令將在終端視窗上列印“一串文字”。
echo A string of textecho命令可以顯示環境變數的值,例如,$USER、$HOME和$PATH環境變數。它們包含使用者名稱、使用者的主目錄以及使用者在命令列中鍵入內容時搜尋匹配命令的路徑的值。
echo $USER echo $HOME echo $PATH以下命令將導致發出bleep。e(轉義碼)選項將轉義的a字元解釋為“bell”字元。
echo -e "\a"echo命令在shell指令碼中也是非常有用的。指令碼可以使用此命令生成可見的輸出,以指示指令碼執行時的進度或結果。
exit命令將關閉終端視窗,結束shell指令碼的執行,或使您退出SSH遠端訪問會話。
exit如果記不起放在哪裡,可以使用find命令來跟蹤已知存在的檔案。你必須告訴他們從哪裡開始搜尋以及它在找什麼。在本例中,是。匹配當前資料夾,-name選項告訴find查詢名稱與搜尋模式匹配的檔案。
可以使用萬用字元,其中*表示任意字元序列,而?表示任何單個字元。我們使用*ones*來匹配任何包含“ones”序列的檔名。這將匹配像bones,stones和lonesome這樣的詞。
find . -name *ones*如我們所見,find返回了一個匹配列表。其中之一是一個名為Ramones的目錄。我們可以告訴find只搜尋檔案。我們使用帶有f引數的-type選項來實現這一點。f引數代表檔案。
find . -type f -name *ones*如果希望搜尋不區分大小寫,請使用-iname(不區分大小寫的名稱)選項。
find . -iname *wild*finger命令提供有關使用者的簡簡訊息轉儲,包括使用者上次登入的時間、使用者的主目錄和使用者帳戶的全名。
free命令提供計算機記憶體使用情況的摘要。它對主隨機存取儲存器(RAM)和交換儲存器都這樣做。-h(human)選項用於提供人性化的數字和單位。如果沒有此選項,則數字以位元組表示。
free -hgrep實用程式搜尋包含搜尋模式的行。當我們檢視alias命令時,我們使用grep搜尋另一個程式ps的輸出。grep命令還可以搜尋檔案的內容。在這裡,我們在當前目錄的所有文字檔案中搜索單詞“train”。
grep train *.txt輸出列出檔名並顯示匹配的行。匹配的文字將高亮顯示。
grep的功能性和純粹的實用性肯定讓您可以檢視它的手冊頁。
groups命令告訴您使用者是哪個組的成員。
groups dave groups marygzip命令壓縮檔案。預設情況下,它會刪除原始檔案並保留壓縮版本。要保留原始版本和壓縮版本,請使用-k(keep)選項。
gzip -k core.chead命令提供檔案前10行的列表。如果希望看到更少或更多的行,請使用-n(number)選項。在本例中,我們使用head,其預設值為10行。然後我們重複這個命令,只需要五行。
head -core.c head -n 5 core.chistory命令列出以前在命令列上發出的命令。您可以透過鍵入感嘆號來重複歷史記錄中的任何命令!以及歷史記錄列表中命令的編號。
!188鍵入兩個感嘆號將重複上一個命令。
!!kill命令允許您從命令列終止程序。您可以透過提供要終止的程序的程序ID(PID)來實現這一點。不要隨便殺掉程序。你需要有充分的理由這樣做。在本例中,我們將假設快門程式已鎖定。
為了找到shutter的PID,我們將使用上面關於alias命令一節中的ps和grep技巧。我們可以搜尋快門過程並獲得其PID,如下所示:
ps -e | grep shutter.在這種情況下,一旦我們確定了PID-1692,我們可以按如下方式殺死它:
kill 1692less命令允許您在不開啟編輯器的情況下檢視檔案。它使用起來更快,而且您不會無意中修改檔案。使用更少的資源,您可以使用上下箭頭鍵、PgUp和PgDn鍵以及Home和End鍵在檔案中前後滾動。按Q鍵退出less。
要檢視檔案,請按以下方式將其名稱提供給less:
less core.c您還可以將其他命令的輸出透過管道傳輸到更少的記憶體中。要檢視ls輸出的整個硬碟的列表,請使用以下命令:
ls -R / | less使用/在檔案中向前搜尋並使用?向後搜尋。
這可能是大多數Linux使用者遇到的第一個命令。它列出了指定目錄中的檔案和資料夾。預設情況下,ls在當前目錄中查詢。有很多選擇,你可以使用ls,我們強烈建議審查其手冊頁。這裡給出了一些常見的例子。
要列出當前目錄中的檔案和資料夾,請執行以下操作:
ls要列出當前目錄中的檔案和資料夾以及詳細列表,請使用-l(long)選項:
ls -l要使用人性化的檔案大小,請使用-h(人類)選項:
ls -lh要包含隱藏檔案,請使用-a(所有檔案)選項:
ls -lhaman命令以較少的時間顯示命令的“手冊頁”。手冊頁是該命令的使用者手冊。因為man使用less來顯示手冊頁,所以可以使用less的搜尋功能。
例如,要檢視chown的手冊頁,請使用以下命令:
man chown使用上下箭頭或PgUp和PgDn鍵滾動文件。按q退出手冊頁,或按h尋求幫助。
mkdir命令允許您在檔案系統中建立新目錄。必須向mkdir提供新目錄的名稱。如果新目錄不在當前目錄中,則必須提供新目錄的路徑。
要在當前目錄中建立兩個名為“invoices”和“quotes”的新目錄,請使用以下兩個命令:
mkdir invoices mkdir quotes要在“invoices”目錄中建立名為“2019”的新目錄,請使用以下命令:
mkdir invoices/2109如果要建立一個目錄,但其父目錄不存在,可以使用-p(parents)選項讓mkdir也建立所有必需的父目錄。在下面的命令中,我們正在“quotes”目錄中的“annual”目錄中建立“2019”目錄。“年度”目錄不存在,但我們可以讓mkdir一次建立所有指定的目錄:
mkdir -p quotes/yearly/2019還將建立“年度”目錄。
mv命令允許您將檔案和目錄從一個目錄移動到另一個目錄。它還允許您重新命名檔案。
要移動檔案,必須告訴mv檔案的位置以及要將其移動到的位置。在本例中,我們移動一個名為阿帕奇.pdf從“~/Document/ukule”目錄中,並將其放置在當前目錄中,由單個表示。性格。
mv ~/Documents/Ukulele/Apache.pdf .要重新命名該檔案,請將其“移動”到具有新名稱的新檔案中。
mv Apache.pdf The_Shadows_Apache.pdf檔案移動和重新命名操作可以透過一個步驟實現:
mv ~/Documents/Ukulele/Apache.pdf ./The_Shadows_Apache.pdfpasswd命令允許您更改使用者的密碼。只需鍵入passwd來更改您自己的密碼。
您也可以更改另一個使用者帳戶的密碼,但必須使用sudo。系統將要求您輸入兩次新密碼。
sudo passwd maryping命令允許您驗證是否與另一個網路裝置有網路連線。它通常用於幫助解決網路問題。要使用ping,請提供其他裝置的IP地址或計算機名。
ping 192.168.4.18ping命令將一直執行,直到您用Ctrl+C停止它。
這裡發生了什麼:
要要求ping執行特定次數的ping嘗試,請使用-c(count)選項。
ping -c 5 192.168.4.18要聽到ping聲,請使用-a(可聽)選項。
ping -a 192.168.4.18ps命令列出正在執行的程序。使用ps而不使用任何選項會導致它列出當前shell中執行的程序。
ps要檢視與特定使用者相關的所有程序,請使用-u(user)選項。這可能是一個很長的列表,所以為了方便,管道透過它較少。
ps -u dave | less要檢視正在執行的每個程序,請使用-e(每個程序)選項:
ps -e | less非常簡單,pwd命令從root/目錄列印工作目錄(當前目錄)。
pwdshutdown命令允許您關閉或重新啟動Linux系統。
使用無引數關機將在一分鐘內關閉您的計算機。
關閉
要立即關閉,請使用now引數。
shutdown now您還可以安排關機,並將掛起的關機通知任何登入的使用者。要讓shutdown命令知道您希望它何時關閉,您需要為它提供一個時間。這可以是一個固定的分鐘數,例如+90,也可以是一個精確的時間,例如23:00。您提供的任何文字訊息都會廣播給登入的使用者。
shutdown 23:00 Shutdown tonight at 23:00, save your work and log out before then!要取消關機,請使用-c(cancel)選項。在這裡,我們計劃從現在起關閉15分鐘,然後改變主意。
shutdown +15 Shutting down in 15 minutes! shutdown -c相關:如何使用命令列重新啟動或關閉Linux
使用ssh命令連線到遠端Linux計算機並登入到您的帳戶。要建立連線,必須提供您的使用者名稱和遠端計算機的IP地址或域名。在本例中,使用者mary正在192.168.4.23登入計算機。一旦建立了連線,就會要求她輸入密碼。
ssh [email protected]她的使用者名稱和密碼已被驗證和接受,她已登入。注意,她的提示已從“Nostromo”更改為“howtogeek”
Mary發出w命令列出“howtogeek”系統中的當前使用者。她被列為從pts/1連線,pts/1是一個偽終端從機。也就是說,它不是直接連線到計算機的終端。
要關閉會話,mary鍵入exit並返回到“Nostromo”計算機上的shell。
w exit在執行需要root或超級使用者許可權的操作(例如更改另一個使用者的密碼)時,需要sudo命令。
sudo passwd marytail命令提供檔案最後10行的列表。如果希望看到更少或更多的行,請使用-n(number)選項。在本例中,我們使用預設值為10行的tail。然後我們重複這個命令,只需要五行。
tail core.c tail -n 5 core.c使用tar命令,您可以建立一個可以包含許多其他檔案的歸檔檔案(也稱為tarball)。這使得分發檔案集合更加方便。您還可以使用tar從存檔檔案中提取檔案。通常要求tar壓縮歸檔檔案。如果不要求壓縮,則會以未壓縮的方式建立存檔檔案。
要建立存檔檔案,您需要告訴tar要在存檔檔案中包含哪些檔案,以及希望存檔檔案具有的名稱。
在本例中,使用者將歸檔當前目錄中的Ukulele目錄中的所有檔案。
他們使用了-c(create)選項和-v(verbose)選項。verbose選項透過在將檔案新增到歸檔檔案時向終端視窗列出這些檔案來提供一些視覺反饋。-f(filename)選項後跟所需的存檔名稱。在這種情況下,它是歌曲.tar.
tar -cvf songs.tar Ukulele/將檔案新增到存檔檔案時,這些檔案將列在終端視窗中。
有兩種方法可以告訴tar您想要壓縮存檔檔案。第一種是使用-z(gzip)選項。這告訴tar在建立存檔檔案後使用gzip實用程式壓縮它。
通常將“.gz”作為字尾新增到這種型別的存檔中。這使得從中提取檔案的任何人都可以知道哪些命令要傳遞給tar以正確地檢索檔案。
tar -cvzf songs.tar.gz Ukulele/這些檔案與以前一樣新增到存檔檔案時,會列在終端視窗中,但由於壓縮所需的時間,建立存檔檔案的時間會稍長一些。
要建立一個使用高階壓縮演算法壓縮的歸檔檔案,使用-j(bzip2)選項可以得到一個較小的歸檔檔案。
tar -cvjf songs.tar.bz2 Ukulele/同樣,在建立存檔檔案時會列出這些檔案。-j選項明顯慢於-z選項。
如果要歸檔大量檔案,則必須在-z選項中進行選擇,以獲得適當的壓縮和合理的速度,或者選擇-j選項以獲得更好的壓縮和較慢的速度。
如下面的螢幕截圖所示,“.tar”檔案是最大的,也是最大的。焦油.gz“是小的,和”。焦油bz2“是檔案中最小的。
要從存檔檔案中提取檔案,請使用-x(extract)選項。-v(verbose)和-f(filename)選項的行為與建立存檔時相同。使用ls確認要從哪種型別的存檔中提取檔案,然後發出以下命令。
ls tar -xvf songs.tar檔案在解壓縮時列出。請注意,還將為您重新建立Ukulele目錄。
從檔案中提取檔案。焦油.gz“存檔,使用-z(gzip)選項。
tar -xvzf songs.tar.gz最後,從“檔案”中提取檔案。焦油bz2“使用-j選項而不是-z(gzip)選項。
tar -xvjf songs.tar.bz2相關:如何從檔案中提取檔案。焦油.gz或者。焦油bz2Linux上的檔案
top命令顯示與Linux機器相關的資料的實時顯示。螢幕頂部是狀態摘要。
第一行顯示您的計算機執行的時間和時間,有多少使用者登入到它,以及過去一分鐘、五分鐘和十五分鐘的平均負載。
第二行顯示任務的數量及其狀態:running、stopped、sleeping和zombie。
第三行顯示CPU資訊。欄位的含義如下:
第四行顯示了實體記憶體的總量,以及空閒、使用、緩衝或快取的記憶體量。
第五行顯示交換記憶體的總量,以及空閒、已用和可用的記憶體量(考慮到預期可以從快取中恢復的記憶體)。
使用者按了E鍵,將顯示改為更易於理解的數字,而不是表示位元組的長整數。
主顯示中的列包括:
(命令列與螢幕截圖不符。)
程序的狀態可以是:
按Q鍵退出頂部。
相關:如何在Linux上使用nice和renice設定程序優先順序
您可以使用uname命令獲得有關正在使用的Linux計算機的一些系統資訊。
w命令列出當前登入的使用者。
w使用whoami來找出您是以誰的身份登入的,或者誰是以無人Linux終端的身份登入的。
whoami相關:如何在Linux中確定當前使用者帳戶
學習Linux就像學習其他東西一樣。在熟悉這些命令之前,你需要一些練習。一旦你掌握了這些命令,你就可以很好地達到熟練程度。
有一個可能和Unix本身一樣古老的笑話說,您需要知道的唯一命令是man命令。這裡面有一點道理,但是有些手冊頁沒有介紹是無法穿透的。本教程將為您提供所需的介紹。
... 在途中,它在每一個重要的命令停止,給你上下文和背景。這些都是學習的重要方面,可以防止事情變得枯燥。更好的是,加農炮的評論貫穿始終,其重點是使用終端作為一種工具。 ...
...則,您的Linux裝置具有多個分割槽。這樣做通常是為了將重要和不重要的系統檔案彼此分割開來。另一種方法是檢視“Mountpoint”條目下的內容。作為Linux框一部分的條目將已裝入。 ...
...驅動器之間移動的資料時非常有用。例如,您可能正在將重要的個人資料遷移到輔助驅動器或分割槽。 ...
...是,防毒軟體對於任何計算機、Windows、Linux或Mac都是至關重要的。此外,隨著惡意軟體和勒索軟體的流行,以及針對Linux系統的惡意軟體的增加,安裝Linux防病毒套件至關重要。 ...
...正確。USB鍵盤和USB滑鼠對於安裝Kali Linux後與之互動非常重要。當您完全啟動並執行時,可以設定一個遠端連線來訪問和使用Kali,但目前,乙太網連線和常規外圍裝置更容易掌握。 ...
...代表“change group”,將檔案分配給另一個組。知道這些很重要,但不像chmod那樣常用。 ...