Linux我是跟著韓順平的教程學的。Linux命令超級多,推薦隨便找一本linux 書,視頻講到哪里在書上在找到相應部分學習,哪個命令沒學過可以使用 命令 --help
或者 man 命令
查看具體用法或者問問度娘,谷大爺。
上機操作: ① 騰訊云實驗室 ② 實驗樓 ③ 虛擬機裝Linux ④ 樹莓派 這些都挺不錯的
不會因為我是騰訊云版主才推薦的,初學者剛剛使用Linux往往特別不習慣命令行下操作在實驗室左側正好可以看到Linux的目錄結構,非常方便。附上Linux的目錄結構和用途
一、目錄操作
①創建目錄
使用 mkdir 命令創建目錄
mkdir $HOME/testFolder
②切換目錄
使用 cd 命令切換目錄
cd $HOME/testFolder
使用 cd ../ 命令切換到上一級目錄
cd ../
③移動目錄
使用 mv 命令移動目錄
mv $HOME/testFolder /var/tmp
④刪除目錄
使用 rm -rf 命令刪除目錄
rm -rf /var/tmp/testFolder
⑤查看目錄下的文件
使用 ls 命令查看 /etc
目錄下所有文件和文件夾
ls /etc
二、文件操作
① 創建文件
使用 touch 命令創建文件
touch ~/testFile
執行 ls
命令, 可以看到剛才新建的 testFile 文件
>ls ~
~是當前用戶的家目錄
1. 不帶任何選項列出文件
不帶選項的ls命令來光禿禿地列出文件和目錄,我們是不能看到像文件類型、大小、修改日期和時間、權限以及鏈接這樣具體的信息的。
2 帶 –l 選項列出文件列表
你看,ls -l(-l是字母不是“1”)就能展示出是文件還是目錄,它的大小、修改日期和時間、文件或目錄的名字以及文件的屬主和它的權限。
3. 瀏覽隱藏文件
列出所有文件包括以‘.’開頭的隱藏文件。
ls -a
4. 用 -lh 選項來以易讀方式列出文件
用-lh組合選項,以易讀方式來顯示大小。
ls -lh
5. 以尾部以‘/’字符結尾的方式列出文件和目錄
使用 ls 命令的 -F 選項,會在每個目錄的末尾添加“/”字符顯示。
ls -F
6. 倒序列出文件
ls -r 選項能以倒序方式顯示文件和目錄。
ls -r
7. 遞歸列出子目錄
ls -R 選項能列出非常長的目錄樹,來看看示例輸出:
ls -R
8. 以修改時間倒序列出
帶-ltr組合選項能以文件或目錄的最新修改時間的次序來顯示它們。
ls -ltr
9. 按文件大小排序
帶-lS組合選項能按文件從大到小的次序顯示。
ls -lS
10. 顯示文件或目錄的索引節點號
我們有時候可以看到一些數字打印在文件或目錄名之前,帶-i選項就能列出文件或目錄的索引節點號。
ls -i
11. 顯示ls命令的版本
查看ls命令的版本。
ls --version
12. 顯示幫助頁面
列出ls命令的選項幫助頁面。
ls --help
13. 列出目錄信息
用ls -l命令列出/tmp目錄下的文件,其中-ld參數可以只顯示/tmp目錄的信息。
② 復制文件
使用 cp 命令復制文件
cp ~/testFile ~/testNewFile
③ 刪除文件
使用 rm 命令刪除文件, 輸入 y
后回車確認刪除
rm ~/testFile
rm是一個危險的命令,使用的時候要特別當心,尤其對于新手,否則整個系統就會毀在這個命令(比如在/(根目錄)下執行rm * -rf)。所以,我們在執行rm之前最好先確認一下在哪個目錄,到底要刪除什么東西,操作時保持高度清醒的頭腦。
1.命令格式:
rm [選項] 文件…
2.命令功能:
刪除一個目錄中的一個或多個文件或目錄,如果沒有使用- r選項,則rm不會刪除目錄。如果使用 rm 來刪除文件,通常仍可以將該文件恢復原狀。
3.命令參數:
-f, --force 忽略不存在的文件,從不給出提示。
-i, --interactive 進行交互式刪除
-r, -R, --recursive 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除。
-v, --verbose 詳細顯示進行的步驟
--help 顯示此幫助信息并退出
--version 輸出版本信息并退出
④ 查看文件內容
使用 cat 命令查看 .bash_history 文件內容
cat ~/.bash_history
三、過濾, 管道與重定向
① 過濾
過濾出 /etc/passwd 文件中包含 root
的記錄
grep 'root' /etc/passwd
遞歸地過濾出 /var/log/ 目錄中包含 linux
的記錄
grep -r 'linux' /var/log/
② 管道
簡單來說, Linux 中管道的作用是將上一個命令的輸出作為下一個命令的輸入, 像 pipe 一樣將各個命令串聯起來執行, 管道的操作符是 |
比如, 我們可以將 cat 和 grep 兩個命令用管道組合在一起
cat /etc/passwd | grep 'root'
過濾出 /etc 目錄中名字包含 ssh
的目錄(不包括子目錄)
ls /etc | grep 'ssh'
③ 重定向
暑假看C Primer Plus 時在看第8章字符輸入 輸出和輸入確認時就發現 重定向這部分沒看懂,稍后補上重定向在Linux下操作的截圖
可以使用 > 或 < 將命令的輸出重定向到一個文件中
echo 'Hello World' > ~/test.txt
四、運維常用命令
① ping 命令
對 cloud.tencent.com 發送 4 個 ping 包, 檢查與其是否聯通
ping -c 4 cloud.tencent.com
② netstat 命令
netstat 命令用于顯示各種網絡相關信息,如網絡連接, 路由表, 接口狀態等等
列出所有處于監聽狀態的tcp端口
netstat -lt
查看所有的端口信息, 包括 PID 和進程名稱
netstat -tulpn
③ ps 命令
過濾得到當前系統中的 ssh 進程信息
ps -aux | grep 'ssh'
在文本中查找grep 使用格式 grep '關鍵字' 文件名
ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
ps u 以用戶為主的格式來顯示程序狀況。
ps x 顯示所有程序,不以終端機來區分。
linux 下幾個命令可以連起來寫 ps -aux
PS 命令是什么
查看它的man手冊可以看到,ps命令能夠給出當前系統中進程的快照。它能捕獲系統在某一事件的進程狀態。如果你想不斷更新查看的這個狀態,可以使用top命令。
這里有在日常生活中使用較多的ps命令的例子。
- 不加參數執行ps命令
這是一個基本的 ps 使用。在控制臺中執行這個命令并查看結果。
不加選項執行ps命令
結果默認會顯示4列信息。
PID: 運行著的命令(CMD)的進程編號
TTY: 命令所運行的位置(終端)
TIME: 運行著的該命令所占用的CPU處理時間
CMD: 該進程所運行的命令
這些信息在顯示時未排序。
- 顯示所有當前進程
使用 -a 參數。-a 代表 all。同時加上x參數會顯示沒有控制終端的進程。
ps -ax
這個命令的結果或許會很長。為了便于查看,可以結合less命令和管道來使用。
ps -ax | less
ps all 信息
- 根據用戶過濾進程
在需要查看特定用戶進程的情況下,我們可以使用 -u 參數。比如我們要查看用戶'pungki'的進程,可以通過下面的命令:
ps -u user
-u userlist
Select by effective user ID (EUID) or name. This selects the processes
whose effective user name or ID is in userlist.
通過用戶過濾
- 通過cpu和內存使用來過濾進程
也許你希望把結果按照 CPU 或者內存用量來篩選,這樣你就找到哪個進程占用了你的資源。要做到這一點,我們可以使用 aux 參數,來顯示全面的信息:
ps -aux | less
將ps -aux 命令的結果通過管道發給less。
less 工具也是對文件或其它輸出進行分頁顯示的工具,應該說是linux正統查看文件內容的工具,功能極其強大。
less 的用法比起 more 更加的有彈性。在 more 的時候,我們并沒有辦法向前面翻,
只能往后面看,但若使用了 less 時,就可以使用 [pageup] [pagedown] 等按鍵的功能來往前往后翻看文件,
更容易用來查看一個文件的內容!除此之外,在 less 里頭可以擁有更多的搜索功能,不止可以向下搜,也可以向上搜。
顯示全面信息
當結果很長時,我們可以使用管道和less命令來篩選。
默認的結果集是未排好序的。可以通過 --sort命令來排序。
根據 CPU 使用來升序排序
ps -aux --sort -pcpu | less
根據 內存使用 來升序排序
ps -aux --sort -pmem | less
根據內存使用來排序
我們也可以將它們合并到一個命令,并通過管道顯示前10個結果:
ps -aux --sort -pcpu,+pmem | head -n 10
- 通過進程名和PID過濾
使用 -C 參數,后面跟你要找的進程的名字。比如想顯示一個名為getty的進程的信息,就可以使用下面的命令:
ps -C netns
通過進程名和PID過濾
如果想要看到更多的細節,我們可以使用-f參數來查看格式化的信息列表:
ps -f -C getty
通過進程名和PID過濾
最后我們來回顧一下文章:
① 目錄操作
- 創建目錄
- 切換目錄
- 移動目錄
- 刪除目錄
- 查看目錄下的文件
② 文件操作
- 創建文件
- 復制文件
- 刪除文件
- 查看文件內容
③ 過濾, 管道與重定向
- 過濾
- 管道
- 重定向
④ 運維常用命令
- ping 命令
- netstat 命令
- ps 命令 重點說了這一部分ps可以給出當前系統中進程