1. ifconfightml
用於獲取網卡信息與網絡狀態node
1)網卡名稱:eno167777728linux
2)IP 地址: inet後面的參數redis
3)MAC地址:ether參數後面數據庫
4)接受數據包大小:RX packages緩存
5)發送數據包大小: TX packagesbash
RX與TX的數據大小是累積的,直到下次重啓。網絡
2.uname架構
用於查看系統CPU負載ssh
用於查看系統內存負載
4.who
用於查看當前登錄主機的用戶終端信息
5last
用於查看系統的全部的登錄記錄。登錄記錄能夠被修改,因此不能以此來判斷是否被入侵。
6.history(重要命令)
條不夠時,能夠自定義/etc/profile中的HISTSIZE的值
history -c 清空全部命令的歷史記錄
!某個命令記錄的序號 能夠反覆執行該命令
歷史命令會被保存到家目錄的.bash_history文件中。
Linux系統中以(.)點開頭的文件均表明隱藏文件,能夠用cat命令查看文件內容。
8.sosresport,輸入命令後,須要再按兩次回車鍵。
用於收集系統配置及架構信息並輸出診斷文檔,大約70個信息,輸出的文檔格式爲.tar.xz壓縮包,找到這個壓縮吧解壓即可查看尋找問題。
9.pwd
顯示用戶當前所在的工做目錄/路徑
10.cd
cd .. 返回到上一級目錄
Cd ~ 切換到當前用戶的家目錄
cd ~username 切換到其餘用戶的家目錄
cd - 返回到上一次所在目錄
cd 切換到家目錄
[root@linuxprobe Desktop]# pwd
/root/Desktop 如今所在的目錄
[root@linuxprobe Desktop]# cd /etc/fonts/conf.d
[root@linuxprobe conf.d]# pwd
/etc/fonts/conf.d 切換到/etc/fonts/conf.d 目錄下
[root@linuxprobe conf.d]# cd ~
[root@linuxprobe ~]# pwd
/root 直接到了根目錄下
[root@linuxprobe ~]# cd /etc/fonts/conf.d 能夠直接用cd -切換到
[root@linuxprobe conf.d]# pwd
/etc/fonts/conf.d 能夠直接用cd -切換到/etc/fonts/conf.d目錄
[root@linuxprobe conf.d]# cd ..
[root@linuxprobe fonts]# pwd
/etc/fonts
[root@linuxprobe fonts]# cd -
/etc/fonts/conf.d
[root@linuxprobe conf.d]# pwd
/etc/fonts/conf.d
[root@linuxprobe conf.d]#
11.ls命令
ls -a (顯示全部文件,包括隱藏文件)
ls -l (顯示文件詳細信息,包括權限屬性等)
ls -d (查看目錄屬性信息)
ls -ld (顯示目錄屬性信息及目錄詳細信息)
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# pwd
/root
[root@linuxprobe ~]# ls 不顯示隱藏文件
A Desktop Downloads liming Pictures Templates
anaconda-ks.cfg Documents initial-setup-ks.cfg Music Public Videos
[root@linuxprobe ~]# ls -a 顯示隱藏文件
. .bash_profile Desktop 全部以點開頭的文 liming Templates 件都是 隱藏文件
.. .bashrc Documents .local Videos
A .cache Downloads 省略
[root@linuxprobe ~]# ls -l
total 8
-rw-r--r--. 1 root root 0 Feb 18 05:05 A
-rw-------. 1 root root 1196 Jan 26 17:06 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jan 28 00:11 Desktop
drwxr-xr-x. 2 root root 6 Jan 28 00:11 Documents
drwxr-xr-x. 2 root root 6 Jan 28 00:11 Downloads
-rw-r--r--. 1 root root 1247 Jan 26 09:08 initial-setup-ks.cfg
-rw-r--r--. 1 root root 0 Feb 18 04:45 liming
省略
[root@linuxprobe ~]# ls -d
.
[root@linuxprobe ~]# ls -ld
dr-xr-x---. 14 root root 4096 Feb 18 05:05 .
如下命令是文本編輯命令,在Linux系統中一切都是文件,包括程序服務,設備(鼠標鍵盤硬盤等)保存成文件形式。要對服務程序進行修改配置就是要對其對應的文件進行編輯。
Cat -n [文件名] 顯示內容及行號
[root@linuxprobe ~]# cat -n anaconda-ks.cfg
1 #version=RHEL7
2 # System authorization information
3 auth --enableshadow --passalgo=sha512
4
5 # Use CDROM installation media
6 cdrom
7 # Run the Setup Agent on first boot
8 firstboot --enable
9 ignoredisk --only-use=sda
10 # Keyboard layouts
11 keyboard --vckeymap=us --xlayouts='us'
12 # System language
13 lang en_US.UTF-8
14
15 # Network information
13.more
查看內容比較多的純文本文件,較大的文件 用cat命令時內容會快速翻轉,沒法看清,用more命令時內容會以分頁形式顯示,用回車鍵或者空格鍵繼續查看下面的信息。
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# head -10 anaconda-ks.cfg
#version=RHEL7
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
[root@linuxprobe ~]#
用cat/more/head/tail 命令顯示文件信息時字母都是小寫,經過tr 命令就能夠把小寫改爲大寫顯示在終端中。
cat [文件名] | tr [a-z] [A-Z]
| 管道符
[] 通配符
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# head -10 anaconda-ks.cfg 顯示前10行信息,字母都是小寫
#version=RHEL7
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
[root@linuxprobe ~]# head -10 anaconda-ks.cfg | tr [a-z] [A-Z] 顯示前10行信息,
#VERSION=RHEL7 切字母都變成大寫
# SYSTEM AUTHORIZATION INFORMATION
AUTH --ENABLESHADOW --PASSALGO=SHA512
# USE CDROM INSTALLATION MEDIA
CDROM
# RUN THE SETUP AGENT ON FIRST BOOT
FIRSTBOOT --ENABLE
IGNOREDISK --ONLY-USE=SDA
# KEYBOARD LAYOUTS
注意:僅僅是在查看時變成大寫了,並無把文件改爲大寫
wc -w [文件名] 只統計字數
wc -c [文件名] 只統計字節數
wc [文件名] 等於wc -lwc [文件名]
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# wc anaconda-ks.cfg
47 103 1196 anaconda-ks.cfg 數字分別是行數,字數,字節數
[root@linuxprobe ~]# wc -lwc anaconda-ks.cfg
47 103 1196 anaconda-ks.cfg 二者結果同樣
[root@linuxprobe ~]# wc -l anaconda-ks.cfg
47 anaconda-ks.cfg
[root@linuxprobe ~]# wc -w anaconda-ks.cfg
103 anaconda-ks.cfg
[root@linuxprobe ~]# wc -c anaconda-ks.cfg
1196 anaconda-ks.cfg
[root@linuxprobe ~]#
3)可用於統計當前系統有多少個用戶,passwd是用於保存系統帳戶的文件,即可以用 wc -l /etc/passwd 命令查詢
[root@linuxprobe ~]# wc -l /etc/passwd
38 /etc/passwd 查詢到系統有38個用戶
[root@linuxprobe ~]# who 查詢的是登錄主機的終端數,有3個終端數
root :0 2020-02-17 10:15 (:0)
root pts/0 2020-02-17 10:15 (:0)
root pts/1 2020-02-17 10:26 (:0)
[root@linuxprobe ~]#
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1196 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 68802476 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2020-02-17 09:21:27.145018849 -0500 最後一次查看文件內容的時間
Modify: 2020-01-26 17:06:51.421078736 -0500 最後一次修改文件內容的時間
Change: 2020-01-26 17:06:51.421078736 -0500 最後一次修改文件屬性的時間
Birth: -
1)用於按列提取文本字符
2)格式:cut [參數] [文件名]
參數: -d 來設置間隔符
-f 來設置須要看的列數
列子:查看用戶名稱,wc -l /etc/passwd命令中查詢到在etc路徑/目錄下passwd文件中有38個帳戶,那麼就能夠用 cut -d [間隔符] -f [列數] [文件名]來提取帳戶名稱。
[root@linuxprobe Desktop]# head -5 /etc/passwd 經過讀取paswd文件中前5行的
root:x:0:0:root:/root:/bin/bash 內容得知能夠提取冒號(:)做爲-d
bin:x:1:1:bin:/bin:/sbin/nologin 後面的分隔符,第一列是用戶名
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
提取用戶名:
[root@linuxprobe Desktop]# cut -d : -f1 /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
operator
games
ftp
nobody
dbus 後面省略
diff --brief [文件A] [文件B] 只比較A和B是否相同
diff -c[文件A] [文件B] 描述文件哪裏不一樣,以歎號!指示
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# diff --brief anaconda-ks.cfg initial-setup-ks.cfg
Files anaconda-ks.cfg and initial-setup-ks.cfg differ 表示文件不一樣
[root@linuxprobe ~]# diff -c anaconda-ks.cfg initial-setup-ks.cfg
*** anaconda-ks.cfg 2020-01-26 17:06:51.421078736 -0500
--- initial-setup-ks.cfg 2020-01-26 09:08:28.435022976 -0500
***************
*** 1,27 ****
省略
# Network information
network --bootproto=dhcp --device=eno16777728 --onboot=off --ipv6=auto
! network --hostname=linuxprobe.com !號後面就是不一樣的內容
# Root password
rootpw --iscrypted
省略
! network --bootproto=dhcp --hostname=linuxprobe.com
# Root password
rootpw --iscrypted $6$KDzGqxBFZ6W7u0uu$6Z3xZLfm36tw19WP5Cj14N6/SRgJR8YCi9J98zaliSMUrFbL/ 省略
bash: [root@linuxprobe: command not found...
如下是文件及文件目錄的管理命令:
[root@linuxprobe Desktop]# cd ~
[root@linuxprobe ~]# ls
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates
Desktop Downloads Music Public Videos
[root@linuxprobe ~]# touch A 在根目錄下新建一個叫A的文件
[root@linuxprobe ~]# ls 用ls命令即可以顯示出來A文件
anaconda-ks.cfg Documents initial-setup-ks.cfg Music Public Videos
Desktop Downloads A Pictures Templates
[root@linuxprobe ~]# cat A 用cat命令查看A的內容,顯示空白
[root@linuxprobe ~]#
touch -a 「時間」 [文件名] 修改文件的讀取時間
touch -m 「時間」 [文件名] 修改文件的修改時間
touch -d 「時間」 [文件名] 修改文件的讀取和修改時間
[root@linuxprobe Desktop]# ls
A~ AbbA~ DD~
[root@linuxprobe Desktop]# touch 1a1
[root@linuxprobe Desktop]# ls
1a1 A~ AbbA~ DD~
[root@linuxprobe Desktop]# cat 1a1 讀取1a1文件是空白
[root@linuxprobe Desktop]# ls -l 1a1
-rw-r--r--. 1 root root 0 Feb 18 07:47 1a1 文件修改的時間是07:47
[root@linuxprobe Desktop]# cat 1a1 對1a1文件進行編輯,讀取出內容
12111
[root@linuxprobe Desktop]# ls -l 1a1
-rw-r--r--. 1 root root 6 Feb 18 07:49 1a1 這時修改的時間爲07:49
[root@linuxprobe Desktop]#
[root@linuxprobe Desktop]# touch -d "07:47 " 1a1 把修改時間改回07:47
[root@linuxprobe Desktop]# ls -l 1a1
-rw-r--r--. 1 root root 6 Feb 18 07:47 1a1
mkdir -p/a/b/c/d/f 建立多層文件目錄
[root@linuxprobe Desktop]# pwd
/root/Desktop
[root@linuxprobe Desktop]# mkdir linux
[root@linuxprobe Desktop]# cd linux
[root@linuxprobe linux]# pwd
/root/Desktop/linux
[root@linuxprobe linux]# mkdir -p a/c/d/e
[root@linuxprobe linux]# cd a/c/d/e
[root@linuxprobe e]# pwd
/root/Desktop/linux/a/c/d/e
cp -r 源目錄 目標目錄
用於剪切文件或重命名
格式: mv 源文件 目標文件
mv -r 源目錄 目標目錄
rm -f 強制刪除文件,沒有任何提示
rm -r 刪除目錄
rm -rf 強制刪除目錄,
[root@linuxprobe Desktop]# ls
07:47 1a1~ 2a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# rm 07:47
rm: remove regular empty file ‘07:47’? n 提示是否刪除,選否就不會刪除
[root@linuxprobe Desktop]# ls
07:47 1a1~ 2a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# rm -f 07:47
[root@linuxprobe Desktop]# ls
1a1~ 2a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# rm -r linux
rm: descend into directory ‘linux’? y
rm: descend into directory ‘linux/a’? y
rm: descend into directory ‘linux/a/c’? y
rm: descend into directory ‘linux/a/c/d’? n
[root@linuxprobe Desktop]# ls
1a1~ 2a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# rm -rf linux
[root@linuxprobe Desktop]# ls
1a1~ 2a1 A~ AbbA~ DD~
參數 if(input file) 輸入的文件名稱
of(output file) 輸出的文件名稱
bs 設置文件/塊的大小,用數字表示字節數
count 設置要複製的文件/塊次數(個數)
dd if=[文件名A] of=[文件名B] bs=N count=M
將文件A取N個字節取M次輸出爲B的一個文件
[root@linuxprobe Desktop]# ls
1a1~ 2a1 2a1~ A~ AbbA~ DD~
[root@linuxprobe Desktop]# cat 2a1
111111111111111111111111111
222222222222222222222222222
3333333333333333333333333333
4444444444444444444444444
55555555555555555555555555555
66666666666666666666666666666666666
7777777777777777777777777777777777
[root@linuxprobe Desktop]# dd if=2a1 of=3a1 bs=100 count=1
1+0 records in 100字節取一次
1+0 records out
100 bytes (100 B) copied, 0.00022601 s, 442 kB/s
[root@linuxprobe Desktop]# cat 3a1
111111111111111111111111111
222222222222222222222222222
3333333333333333333333333333
444444444444444
[root@linuxprobe Desktop]# dd if=2a1 of=3a1 bs=100 count=2
2+0 records in 100字節取兩次
2+0 records out
200 bytes (200 B) copied, 0.000690034 s, 290 kB/s
[root@linuxprobe Desktop]# cat 3a1
111111111111111111111111111
222222222222222222222222222
3333333333333333333333333333
4444444444444444444444444
55555555555555555555555555555
66666666666666666666666666666666666
77777777777777777777777
tar czvf 壓縮包名.tar.gz 要打包的目錄或文件
c:表示建立壓縮文件
z=gzip:一種壓縮格式 j=bzip2 :一種壓縮格式
v:壓縮或打包的一個過程,能夠不用v 【zv沒用順序要求】
f:打包的文件名稱,必須放最後面,[root@linuxprobe Desktop]# ls
1a1~ 2a1 2a1~ 3a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# tar czvf 2a1.tar.gz 2a1
2a1
[root@linuxprobe Desktop]# ls
1a1~ 2a1 2a1~ 2a1.tar.gz 3a1 A~ AbbA~ DD~ linux
tar xzvf 壓縮包名.tar.gz 解壓到當前目錄
tar xzvf 壓縮包名.tar.gz -C [目錄] 解壓到指定目錄
x:解壓
-C:大寫字母C指定解壓位置
[root@linuxprobe Desktop]# ls
1a1~ 2a1~ 2a1.tar.gz 3a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# tar xzvf 2a1.tar.gz
2a1
[root@linuxprobe Desktop]# ls
1a1~ 2a1 2a1~ 2a1.tar.gz 3a1 A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# pwd
/root/Desktop
[root@linuxprobe Desktop]# ls
1a1~ 2a1 2a1~ 2a1.tar.gz 3a1 A A~ AbbA~ DD~ linux
[root@linuxprobe Desktop]# cd linux
[root@linuxprobe linux]# ls
a A A~ linux目錄下沒有2a1文件
[root@linuxprobe linux]# cd -
/root/Desktop
[root@linuxprobe Desktop]# tar xzvf 2a1.tar.gz -C /root/Desktop/linux
2a1
[root@linuxprobe Desktop]# cd linux
[root@linuxprobe linux]# ls
2a1 a A A~ 解壓後linux目錄下出來2a1文件
詞A的內容
grep -n [關鍵詞A] [文件名B] 顯示文件B中帶有關鍵詞A的內容,並顯示行號。
grep -c [關鍵詞A] [文件名B] 統計文件B中帶有關鍵詞A的一個有多少行,不顯示內容。
grep -v [關鍵詞A] [文件名B] 反向選擇,只顯示文件B中不帶有關鍵詞A的內容。
grep -vn[關鍵詞A] [文件名B] 反向選擇,只顯示文件B中不帶有關鍵詞A的內容和行號。
grep -vc[關鍵詞A] [文件名B] 反向選擇,統計文件B中不帶有關鍵詞A一共多少行。
[root@linuxprobe Desktop]# cat 2a1
111111111111111111111111111a
222222222222222222222222222
3333333333333333333333333333a
4444444444444444444444444
55555555555555555555555555555a
66666666666666666666666666666666666
7777777777777777777777777777777777a
8888888888888888888888888888888888
99999999999999999999999999999a
00000000000000000000000000000000000
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
[root@linuxprobe Desktop]# grep -n a 2a1
1:111111111111111111111111111a
3:3333333333333333333333333333a
5:55555555555555555555555555555a
7:7777777777777777777777777777777777a
9:99999999999999999999999999999a
[root@linuxprobe Desktop]# grep -c a 2a1
5 帶a的有5行
[root@linuxprobe Desktop]# grep -vc a 2a1
6 不帶a 的有6行
[root@linuxprobe Desktop]# grep -vn a 2a1
2:222222222222222222222222222
4:4444444444444444444444444
6:66666666666666666666666666666666666
8:8888888888888888888888888888888888
10:00000000000000000000000000000000000
11:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
[root@linuxprobe Desktop]#
以文件名來搜索:find / -name [文件名]
以文件全部者來搜索: find / -user [全部者名]
《Linux就該這麼學》
正文內容:
本書是由全國多名紅帽架構師(RHCA)基於最新Linux系統共同編寫的高質量Linux技術自學教程,極其適合用於Linux技術入門教程或講課輔助教材,目前是國內最值得去讀的Linux教材,也是最有價值的Linux實驗手冊。章節包括有:
第0章 我們先來談談學習方法和紅帽系統。
第1章 部署虛擬環境安裝linux系統。
第2章 新手必須掌握的Linux命令。
第3章 管道符、重定向與環境變量。
第4章 Vim編輯器與Shell命令腳本。
第5章 用戶身份與文件權限。
第6章 存儲結構與磁盤劃分。
第7章 使用RAID與LVM磁盤陣列技術。
第8章 Iptables與Firewalld防火牆。
第9章 使用ssh服務管理遠程主機。
第10章 使用Apache服務部署靜態網站。
第11章 使用Vsftpd服務傳輸文件。
第12章 使用Samba或NFS實現文件共享。
第13章 使用Bind提供域名解析服務。
第14章 使用DHCP動態管理主機地址。
第15章 使用Postfix與Dovecot部署郵件系統
第16章 使用Squid部署代理緩存服務。
第17章 使用iSCSI服務部署網絡存儲。
第18章 使用MariaDB數據庫管理系統。
第19章 使用PXE+Kickstart部署無人值守安裝。
第20章 使用LNMP架構部署動態網站環境。
對Linux感興趣的必定要加個收藏,在線學習網址是https://www.linuxprobe.com/chapter-00.html
附件: