網站首頁 編程語言 正文
一、Linux的結構
Command [-option] [argument]
Command:即是要運行的命令的本身,說白了就是一個軟件(程序);
Option:是選項(可選),選項是控制命令運行狀態和行為的(可多個選項一起,如df -hT);
Argument:是參數(可選),是命令要操作對象如文件、路徑、數據、目錄等;
在指令的第一部分按[tab]鍵一下為[命令補全],兩下為所有命令選擇,在非第一部分按[tab]鍵兩下為[文件補全];
二、什么是linux命令?
Linux命令是在命令行上運行的程序或實用程序。命令行是一個界面,它接受文本行并將其處理為計算機的指令。
任何圖形用戶界面(GUI)都只是命令行程序的抽象。例如,當您通過單擊“X”關閉窗口時,該操作后面會運行一個命令。
標志(flag)是我們可以向您運行的命令傳遞選項的一種方式。大多數Linux命令都有一個幫助頁面,我們可以使用-h
標記調用該頁面。大多數情況下,標志是可選的。
argument或parameter是我們給命令的輸入,以便它可以正常運行。在大多數情況下,參數是一個文件路徑,但它可以是您在終端中鍵入的任何內容。
可以使用連字符 (-
) 和雙連字符 (--
)調用標志,而參數的執行取決于將它們傳遞給函數的順序。
三、常見的linux命令
1.ls
ls
可能是每個Linux用戶在其終端中鍵入的第一個命令。它允許您列出您想要的目錄的內容(默認情況下是當前目錄),包括文件和其他嵌套目錄。
它有很多選擇,所以最好使用?--help
?來獲得一些幫助。此標志返回所有可以與 ls一起使用的flags參數。
2.alias
命令
alias
命令允許您在shell會話中定義臨時別名。創建別名時,您指示shell用一系列命令替換單詞。
3.unalias
命令
顧名思義,unalias
命令旨在從已定義的別名中刪除alias
。要刪除以前的ls
別名,可以使用:
unalias ls
?4.pwd
命令
pwd
命令代表“打印工作目錄”,它輸出您所在目錄的絕對路徑。例如,如果您的用戶名是“john”,并且您位于文檔目錄中,則其絕對路徑將是?/home/john/Documents
.
要使用它,只需在終端中鍵入pwd
:
pwd
# My result: /home/wbolt/Documents/linux-commands
5.?cd
命令
cd
命令與ls
都非常流行。它指的是“更改目錄”,顧名思義,它會將您切換到您試圖訪問的目錄。
例如,如果您在Documents目錄中,并且試圖訪問其名為Videos的子文件夾之一,則可以通過鍵入以下內容來輸入:
cd Videos
您還可以提供文件夾的絕對路徑:
cd /home/wbolt/Documents/Videos
在使用cd
命令時,有一些技巧可以為您節省大量時間:
(1) 進入home文件夾
cd
(2) 向上移動一個級別
cd ..
(3)返回上一個目錄
cd -
6.?cp
?命令
直接在Linux終端上復制文件和文件夾非常容易,有時它可以取代傳統的文件管理器。
要使用cp
命令,只需將其與源文件和目標文件一起鍵入即可:
cp file_to_copy.txt new_file.txt
還可以使用遞歸標志復制整個目錄:
cp -r dir_to_copy/ new_copy_dir/
請記住,在Linux中,文件夾以正斜杠 (/
)結尾。
7.?rm
命令
既然您已經知道了如何復制文件,那么了解如何刪除它們將很有幫助。
您可以使用rm
命令刪除文件和目錄。但在使用時要小心,因為用這種方法恢復刪除的文件非常困難(但并非不可能)。
要刪除常規文件,請鍵入:
rm file_to_copy.txt
如果要刪除空目錄,可以使用遞歸(-r
)標志:
rm -r dir_to_remove/
另一方面,要刪除包含內容的目錄,需要使用force(-f)和recursive標志:
rm -rf dir_with_content_to_remove/
警告:誤用這兩個標志,你可能會抹掉一整天的工作!
8.?mv
命令
您可以使用mv
命令在文件系統中移動(或重命名)文件和目錄。
若要使用此命令,請將其名稱與源文件和目標文件一起鍵入:
mv source_file destination_folder/
mv command_list.txt commands/
要使用絕對路徑,請使用:
mv /home/wbolt/BestMoviesOfAllTime ./
…where?./
是您當前所在的目錄。
您還可以使用mv
重命名文件,同時將其保留在同一目錄中:
mv old_file.txt new_named_file.txt
9.?mkdir
命令
要在shell中創建文件夾,可以使用mkdir
命令。只需指定新文件夾的名稱,確保它不存在,然后就可以開始了。
例如,要創建一個保存所有圖像的目錄,只需鍵入:
mkdir images/
要使用簡單命令創建子目錄,請使用parent(-p
)標志:
mkdir -p movies/2004/
10.?man
命令
另一個重要的Linux命令是man
。它顯示任何其他命令的手冊頁面(只要有)。
要查看mkdir
命令的手冊頁,請鍵入:
man mkdir
您甚至可以查看?man
?命令手冊頁面:
man man
man命令手冊頁面。
基礎的命令只能保證您在這門技術上打好根基,如果需要在這方面有所造詣,還需要進行深度學習。比如參加知學堂APP的教程培訓……
知乎知學堂知乎旗下職業教育平臺立即聽課
11.?touch
命令
touch
命令允許您更新指定文件的訪問和修改時間。
舊日期。
要將其修改日期更改為當前時間,我們需要使用-m
標志:
touch -m old_file
現在日期與今天的日期相符(開始編寫本文時的日期為8月8日)。
新日期
盡管如此,大多數情況下,您不會使用touch
來修改文件日期,而是創建新的空文件:
touch new_file_name
12.?chmod
?命令
chmod
命令允許您快速更改文件的模式(權限)。它有很多可用的選項。
文件的基本權限包括:
- r (只讀)
- w (寫入)
- x (執行)
chmod
最常見的用例之一是使文件可由用戶執行。為此,請鍵入chmod
和標志+x
,然后鍵入要修改其權限的文件:
chmod +x script
您可以使用它使腳本可執行,從而允許您使用./
?符號直接運行它們。
13.?./
?命令
也許?./
?符號本身不是命令,但在這個列表中值得一提。它允許shell直接從終端運行可執行文件,并在系統中安裝任何解釋器。不再雙擊圖形文件管理器中的文件!
例如,使用此命令,您可以運行Python腳本或僅以.run格式提供的程序,如XAMPP。運行可執行文件時,請確保它具有可執行(x)權限,您可以使用chmod
命令修改該權限。
下面是一個簡單的Python腳本,以及如何使用?./
?符號運行它:
#! /usr/bin/python3
# filename: script
for i in range(20):
print(f"This is a cool script {i}")
下面是我們如何將腳本轉換為可執行文件并運行它:
chmod +x script
./script
14.?exit
?命令
exit
命令完全按照其名稱執行:使用它,您可以結束shell會話,并且在大多數情況下,可以自動關閉正在使用的終端:
exit
15.?sudo
?命令
此命令代表“超級用戶do”,它允許您在運行特定命令時充當超級用戶或根用戶。這就是Linux如何保護自己,防止用戶意外修改機器的文件系統或安裝不合適的軟件包。
Sudo通常用于安裝軟件或編輯用戶主目錄以外的文件:
sudo apt install gimp
sudo cd /root/
在運行您鍵入的命令之前,它會要求您輸入管理員密碼。
16.?shutdown
?命令
正如您可能猜到的,shutdown
命令允許您關閉機器電源。但是,它也可以用來停止和重新啟動它。
要立即關閉計算機電源(默認為一分鐘),請鍵入:
shutdown now
您還可以計劃以24小時格式關閉系統:
shutdown 20:40
要取消以前的shutdown
調用,可以使用-c
標志:
shutdown -c
17.?htop
?命令
htop
是一種交互式流程查看器,可讓您直接從終端管理計算機的資源。在大多數情況下,默認情況下它并沒有安裝,所以請確保在下載頁面上閱讀更多關于它的信息。
htop
“htop” 交互界面.
18.?unzip
?命令
unzip
命令允許您從終端提取.zip文件的內容。同樣,默認情況下可能不會安裝此軟件包,因此請確保使用package管理器安裝它。
下面命令行,指正在解壓一個包含圖像的.zip文件:
unzip images.zip
19.?apt
,?yum
,?pacman
?命令
無論您使用的是哪個Linux發行版,您都可能使用package管理器來安裝、更新和刪除您每天使用的軟件。
您可以通過命令行訪問這些package管理器,并根據您的計算機運行的發行版使用其中一個或另一個package管理器。
以下示例將安裝GIMP,這是一種通常在大多數package管理器中可用的免費開源軟件:
1. Debian-based (Ubuntu, Linux Mint)
sudo apt install gimp
2. Red Hat-based (Fedora, CentOS)
sudo yum install gimp
3. Arch-based (Manjaro, Arco Linux)
sudo pacman -S gimp
20.?echo
?命令
echo
命令在終端中顯示定義的文本-就這么簡單:
echo "Cool message"
echo命令
它的主要用途是在這些消息中打印環境變量:
echo "Hey $USER"
# Hey wbolt
知學堂目前已經發布了Python、Java、C/C++、前端、大數據和人工智能等類型的課程培訓,部分精選課程還是免費提供的,趕緊去深造吧!
知乎知學堂知乎旗下職業教育平臺立即聽課
21.?cat
?命令
cat
?是“concatenate”的縮寫,用于直接從終端創建、查看和連接文件。它主要用于在不打開圖形文本編輯器的情況下預覽文件:
cat long_text_file.txt
cat命令.
22.?ps
?命令
使用ps
,您可以查看當前shell會話正在運行的進程。它打印有關正在運行的程序的有用信息,如進程ID、TTY(電傳打字機)、時間和命令名。
ps
ps命令.
如果您想要更具交互性的內容,可以使用htop
。
23.?kill
?命令
當一個程序沒有響應,并且你不能用任何方法關閉它時,這是很煩人的。幸運的是,kill
命令解決了這類問題。
簡單地說,kill
向終止它的進程發送一個TERM或kill信號。
您可以通過輸入PID(進程ID)或程序的二進制名稱來終止進程:
kill 533494
kill firefox
使用此命令時要小心-使用kill
時,可能會意外刪除您正在執行的工作。
24.?ping
?命令
ping
?是用于測試網絡連接的最流行的網絡終端工具。ping
?有很多選項,但在大多數情況下,您將使用它來請求域或IP地址:
ping google.com
ping 8.8.8.8
25.?vim
?命令
vim
?是一個免費的開源終端文本編輯器,從90年代開始使用。它允許您使用高效的鍵綁定編輯純文本文件。
有些人認為使用困難——退出VIM是最常見的StackOverflow問題之一,但一旦習慣了,它就成為命令行中最好的盟友。
要啟動Vim,只需鍵入:
vim
vim文本編輯器.
26.?history
?命令
如果你正在努力記住一個命令,history
就會派上用場。此命令顯示一個枚舉列表,其中包含您過去使用過的命令:
history
history命令.
27.?passwd
?命令
passwd
?允許您更改用戶帳戶的密碼。首先,它會提示您輸入當前密碼,然后要求您輸入新密碼并確認。
它類似于您在其他地方看到的任何其他密碼更改,但在本例中,它直接在您的終端中:
passwd
passwd命令
使用時要小心-一不小心可能會混肴用戶密碼!
28.?which
?命令
which
命令輸出shell命令的完整路徑。如果它不能識別給定的命令,它將拋出一個錯誤。
例如,我們可以使用它來檢查Python和Brave web瀏覽器的二進制路徑:
which python
# /usr/bin/python
which brave
# /usr/bin/brave
29.?shred
?命令
如果您希望文件幾乎無法恢復,shred
?可以幫助您完成此任務。此命令會重復覆蓋文件的內容,因此,給定的文件極難恢復。
下面是一個內容很少的文件:
粉碎文件.
現在,讓我們通過鍵入shred
命令來完成工作:
shred file_to_shred.txt
覆蓋內容.
如果要立即刪除文件,可以使用-u
標志:
shred -u file_to_shred.txt
30.?less
?命令
less
(與more相反)是一個允許您前后檢查文件的程序:
less large_text_file.txt
less命令.
less
的優點在于它在其界面中包含了更多和vim
命令。如果您需要比cat
更具交互性的東西,less
是一個不錯的選擇。
學無止境。嘗試在測試環境這些基礎的Linux命令逐一體驗,或者可以有更好的收獲。有了這些扎實的基礎之后,再學習一些在線課程,或者會有更好的,意想不到的收獲哦!
知乎知學堂知乎旗下職業教育平臺立即聽課
31.?tail
?命令
與cat
類似,tail
打印文件內容時有一個主要警告:它只輸出最后幾行。默認情況下,它打印最后10行,但您可以使用-n
修改該數字。
例如,要打印大型文本文件的最后幾行,可以使用:
tail long.txt
tail命令.
要僅查看最后四行,請執行以下操作:
tail -n 4 long.txt
tail命令尾四行.
32.?head
?命令
這是對tail
命令的補充。head
輸出文本文件的前10行,但您可以使用-n
標志設置要顯示的任意行數:
head long.txt
head -n 5 long.txt
head命令.
33.?grep
?命令
Grep是處理文本文件的最強大的工具之一。它搜索與正則表達式匹配的行并打印它們:
grep "linux" long.txt
您可以使用-c
標志計算與給定條件匹配的次數:
grep -c "linux" long.txt
# 2
34.?whoami
?命令
該命令(who am I的縮寫)顯示當前使用的whoami
用戶名:
whoami
# wbolt
使用echo
和環境變量$USER可以得到相同的結果:
echo $USER
# wbolt
35.?whatis
?命令
whatis
?打印任何其他命令的單行說明,使其成為有用的參考:
whatis python
# python (1) - an interpreted, interactive, object-oriented programming language
whatis whatis
# whatis (1) - display one-line manual page descriptions
36.?wc
?命令
Wc代表“字數計數”,顧名思義,它返回文本文件中的字數:
wc long.txt
# 37 207 1000 long.txt
讓我們分析一下此命令的輸出:
- 37行
- 207字
- 1000字節大小
- 文件名(long.txt)
如果只需要字數,請使用-w
標志:
wc -w long.txt
207 long.txt
37.?uname
?命令
uname
(Unix name的縮寫)打印可操作的系統信息,當您知道當前的Linux版本時,這些信息很方便。
大多數情況下,您將使用-a
(–all)標志,因為默認輸出沒有那么有用:
uname
# Linux
uname -a
# Linux wboltmanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Thu Aug 5 12:15:21 UTC 2021 x86_64 GNU/Linux
38.?neofetch
?命令
Neofetch是一個CLI(命令行界面)工具,它在Linux發行版的ASCII徽標旁邊顯示有關系統的信息,如內核版本、shell和硬件:
neofetch
neofetch命令
在大多數計算機中,此命令在默認情況下不可用,因此請確保首先使用package管理器安裝它。
39.?find
?命令
find
命令根據regex表達式在目錄層次結構中搜索文件。要使用它,請遵循以下語法:
find [flags] [path] -name [expression]
要在當前目錄中搜索名為long.txt的文件,請輸入以下命令行:
find ./ -name "long.txt" # ./long.txt
要搜索以.py?(Python) 擴展名結尾的文件,可以使用以下命令行:
find ./ -type f -name "*.py" ./get_keys.py ./github_automation.py ./binarysearch.py
40.?wget
命令
wget
(World Wide Web get)是從互聯網檢索內容的實用工具。它擁有最大的flags之一。
以下是您如何從GitHub獲取一個Python文件:
wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py
?
原文鏈接:https://blog.csdn.net/smallmww/article/details/132224073
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-06-30 python實現水印圖片功能_python
- 2022-12-24 Golang實現組合模式和裝飾模式實例詳解_Golang
- 2022-11-02 利用Python+eval函數構建數學表達式計算器_python
- 2022-07-09 python如何給內存和cpu使用量設置限制_python
- 2023-07-10 Spring計時器StopWatch
- 2022-11-13 如何修改npm默認源為淘寶源
- 2022-08-25 python數學建模(SciPy+?Numpy+Pandas)_python
- 2022-06-26 利用ASP.Net?Core中的Razor實現動態菜單_實用技巧
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支