一名測試工程師的學習之路,所有博客鏈接已存放在該鏈接下:一個Tester
目錄
一、前言
Linux的命令有很多,但是常用的並不是很多,這裏將常用命令分爲基本常用命令
、文件類型相關命令
、進程類型相關命令
、網絡類型相關命令
。
二、基本命令
2.1 切換用戶
su
輸入su命令後,輸入root用戶密碼,切換到root用戶,但用戶個人目錄不變su - 用戶名
輸入su - 用戶名
切換到指定用戶,且用戶個人"家目錄"變化。切換到root用戶就爲su - root
,切換到普通用戶就爲su - yff
(切換到普通用戶不需要輸入密碼)。
- 用戶目錄
關於用戶目錄,可以參考下面鏈接:Linux下“/”和“~”的區別
2.2 查看IP地址
-
ifconfig
[root@localhost ~]# ifconfig
2.3 重啓和關機
-
重啓
init 6 或 reboot
-
關機
init 0 或 halt
2.4 清屏
clear
清空當前屏幕的之前的內容。
三、文件
在 Linux 環境下有一個很基本的設計原則,即 Everything is file,所有的內容都是以文件的形式來進行抽象的
,比如:進程、網絡、硬件等,都可以抽象成文件,可以對其進行打開、讀取、寫入等操作。
3.1 磁盤
df
或df -h
通過df
或df -h
命令,查看設備上掛載了多少磁盤設備,以及磁盤的可用空間。
3.2 目錄
pwd
查看當前目錄[yff@localhost ~]$ pwd /home/yff
cd 目錄名
(1)進入指定目錄——cd 目錄名
(2)進入上一級目錄——[yff@localhost Jmeter]$ cd apache-jmeter-5.1.1
cd ..
(3)進入用戶主目錄——[yff@localhost apache-jmeter-5.1.1]$ cd .. [yff@localhost Jmeter]$
cd
(4)進入系統根目錄——[yff@localhost apache-jmeter-5.1.1]$ cd [yff@localhost ~]$ ls Desktop Documents Downloads Jmeter jmeter.log Music Nmon NmonData Pictures Public Templates Videos
cd /
[yff@localhost ~]$ ls Desktop Documents Downloads Jmeter jmeter.log Music Nmon NmonData Pictures Public Templates Videos [yff@localhost ~]$ cd / [yff@localhost /]$ ls bin boot dev etc home jmeter.log lib lib64 media mnt myfile opt proc root run sbin srv sys tmp usr var [yff@localhost /]$
ls
(1)ls
顯示當前目錄的所有文件及目錄
(2)[yff@localhost ~]$ ls Desktop Documents Downloads Jmeter jmeter.log Music Nmon NmonData Pictures Public Templates Videos
ls -l
-l參數打印每個文件的基本信息
mkdir 目錄名
[yff@localhost AA]$ ls [yff@localhost AA]$ mkdir BB [yff@localhost AA]$ ls BB
rm 目錄名
選項 -r 可以刪除目錄,如果沒有-r只能刪除文件。rm [-rf] 目錄或文件列表
選項 -f表示強制刪除,[yff@localhost AA]$ ls BB [yff@localhost AA]$ rm -rf BB [yff@localhost AA]$ ls [yff@localhost AA]$
mv 舊目錄或文件名 新目錄或文件名
(1)文件或文件夾重命名
(2)移動文件或文件夾[yff@localhost AA]$ vim a.txt [yff@localhost AA]$ ls a.txt [yff@localhost AA]$ mv a.txt b.txt [yff@localhost AA]$ ls b.txt
[yff@localhost AA]$ mv b.txt ../BB/ [yff@localhost AA]$ ls [yff@localhost AA]$ cd ../BB [yff@localhost BB]$ ls b.txt
cp 舊目錄或文件名 新目錄或文件名
選項-r可以複製目錄,如果沒有選項-r只能複製文件。[yff@localhost BB]$ ls b.txt [yff@localhost BB]$ cp b.txt ../AA/ [yff@localhost BB]$ cd ../AA [yff@localhost AA]$ ls b.txt
3.3 文件查看
-
cat
:閱讀文件並查找文件內容,但缺點就是一頁的內容非常長。 -
more
:可以實現翻頁閱讀,缺點就是不夠靈活。 -
less
:它既可以實現上下滑動,還可以實現左右移動,可以實現交互式閱讀,是三種閱讀方法中最強大的。[yff@localhost AA]$ cat b.txt Linux 內容
3.4 文件編輯
vim
命令對文件進行編輯。vi 是最早的一個編輯器,vim 是後期的一個變種,在很多系統上 vi 與 vim 是等價的。
vim 文件名
命令進入界面,如果要查找相關內容,直接輸入/內容
,回車就高亮顯示搜索的字符。- 按下
i
鍵進入插入模式,修改內容。 - 按下
ESC
鍵退出insert模式。 - 輸入
:wq!
保存修改。
3.5 文件權限
- 查看文件權限
- 修改權限——
chmod
關於chmod命令的詳細教程,可以參考菜鳥教程。我比較經常用的是給文件夾賦予權限。
3.5 查找文件
find
命令find 目錄名 -name 文件名 -print
四、進程
4.1 ps
ps命令的使用可以歸爲ps [參數]
,由於參數較多,這裏就說一下常用的幾個。
-
ps -ef
:顯示所有進程信息,連同命令行。
-
ps -ef | grep 進程名
:查找進程並顯示進程信息。
ps -ef
是顯示進程
,grep
是查找的含義
。中間的 | 是管道命令
,指的是ps命令與grep命令同時執行。
4.2 top
top
命令:使用top命令可以在動態
的交互界面上顯示了整個機器的一個狀態。top命令也有很多參數,這裏就不一個個闡述了。關於top命令的詳細可以參考這篇博客:Linux top命令的用法詳細詳解top [-] [d] [p] [q] [c] [C] [S] [s] [n]
- 退出top可以使用
Ctrl+C
或者Q
鍵
五、網絡
當一個文件加載到 CPU 中被執行的過程中它就變成了一個進程,有的時候進程之間需要通信
,這個時候就會開啓一個 socket,socket
就是對外建立連接的一個窗口,然後藉助TCP
協議進行通信。但進行通信之前首先需要進程開啓一個端口,那我們如何查看本地開啓了多少端口?這些端口又是由哪些進程開啓的呢?
5.1 netstat
netstat
命令用於顯示與IP、TCP、UDP和ICMP協議相關的統計數據,一般用於檢驗本機各端口的網絡連接情況
。netstat是在內核中訪問網絡及相關信息的程序,它能提供TCP連接,TCP和UDP監聽,進程內存管理的相關報告。
由於nestst命令,有很多參數,這裏就不一個個闡述,具體可以參考下面這篇博客netstat命令詳解
-t
指的是TCP 協議
,-l
(listen)指哪幾個進程開啓了對外的鏈接,負責監聽端口
,-n
指不需要解析遠程服務器的名字,以加快運行速度
,-p
指打印進程
。
netstat -tlnp
netstat -tnp
六、寫在最後
Linux相關的命令有很多,上面寫的這些也只能算一小部分,而且關於進程和網絡相關的命令也沒有寫的很細,可以自行了解。最後給一個Xmind圖,方便記憶。