[created_at:2020-05-22]
Linux 下有非常多的命令,通過這些命令在 Shell 環(huán)境下與機(jī)器進(jìn)行交互調(diào)度資源,Linux可操作的資源通常分為3類:文件、網(wǎng)絡(luò)、進(jìn)程
Linux操作文件目錄常用命令
- ls:列出目錄
cd:切換目錄
pwd:顯示當(dāng)前的目錄
mkdir:創(chuàng)建一個(gè)新的目錄
rmdir:刪除一個(gè)空的目錄
cp:復(fù)制文件或目錄
rm:移除文件或目錄
mv:移動(dòng)文件與目錄,或修改文件與目錄的名稱
Linux文件屬性
ll:列出所有文件和目錄的詳細(xì)屬性
在Linux系統(tǒng)執(zhí)行的
[root@iZmZ learndir]# ll
total 12
-rwxr--r-- 1 root root 26 May 22 22:19 1.sh
drwxr-xr-x 2 root root 4096 May 22 22:30 a
在Windows執(zhí)行的
wzz@LAPGW64 /f/learbash/tmp
$ ll
total 0
-rw-r--r-- 1 wzz 197609 4 5月 22 08:23 1.txt
drwxr-xr-x 1 wzz 197609 0 5月 22 21:22 test/
| 權(quán)限屬性 | 連接 | 所有者 | 用戶組 | 大小 | 修改日期 | 文件或目錄名 |
|---|---|---|---|---|---|---|
| -rwxr--r-- | 1 | root | root | 26 | May 22 22:19 | 1.sh |
| drwxr-xr-x | 2 | root | root | 4096 | May 22 22:30 | a |
權(quán)限屬性:
| 文件類型 | 所有者 | 用戶組 | 其他人 |
|---|---|---|---|
| - | rw- | r-- | r-- |
| d | rwx | r-x | r-x |
文件類型:
d 目錄;- 文件;l 連接文件;b 設(shè)備文件;c 串行端口設(shè)備
修改文件屬性
- rwx:讀/寫/執(zhí)行;對(duì)應(yīng)值:4/2/1
chmod命令,如chmod 777 1.txt 修改1.txt為所有人都有所有權(quán)限
Linux文件操作
- 閱讀:
cat:顯示所有內(nèi)容,一頁很長
more:翻頁閱讀,但不夠靈活
less:可以實(shí)現(xiàn)交互式閱讀
- 編輯:
vim- 鍵入i切換為輸入模式
退出輸入模式:ESC鍵
鍵入:切換為底線命令模式
q:退出
w:保存
wq:保存并退出
- 鍵入i切換為輸入模式
Linux進(jìn)程
ps 命令查看當(dāng)前進(jìn)程
[root@iZm5Z learndir]# ps
PID TTY TIME CMD
23195 pts/0 00:00:00 bash
23247 pts/0 00:00:00 ps
top命令動(dòng)態(tài)查看整個(gè)機(jī)器的狀態(tài)
[root@iZmZ learndir]# top
top - 22:59:00 up 100 days, 12:22, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 67 total, 1 running, 66 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.7 us, 0.3 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1882232 total, 1035684 free, 86152 used, 760396 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1625056 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3600 root 10 -10 124208 12668 9724 S 1.0 0.7 487:38.83 AliYunDun
1 root 20 0 43528 3804 2576 S 0.0 0.2 1:50.28 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.23 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:13.09 ksoftirqd/0
實(shí)時(shí)命令中斷運(yùn)行:CTRL+c
Linux網(wǎng)絡(luò)
有的時(shí)候進(jìn)程之間需要通信,這個(gè)時(shí)候就會(huì)開啟一個(gè) socket,socket 就是對(duì)外建立連接的一個(gè)窗口,然后借助 TCP 協(xié)議進(jìn)行通信,但進(jìn)行通信之前首先需要進(jìn)程開啟一個(gè)端口。如何查看這些端口的情況呢?
netstat -tlnp 命令查看 TCP 協(xié)議進(jìn)程端口
- -t 指的是 TCP 協(xié)議
-l (listen)監(jiān)聽端口
-n 指不需要解析遠(yuǎn)程服務(wù)器的名字
-p 指打印進(jìn)程
[root@iZmZ learndir]# netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1016/sshd
netstat -tnp:本地機(jī)器上有多少個(gè)鏈接正在與外部進(jìn)行通信
[root@iZm5e43t3oxhfbtpgsitwcZ learndir]# netstat -tnp
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 64 172.31.0.0:22 124.65.0.0:22824 ESTABLISHED 23193/sshd: root@pt
tcp 0 0 172.31.0.0:46944 100.100.0.0:80 ESTABLISHED 3600/AliYunDun