上周回顧
1.Linux介紹/歷史/發(fā)行版
2.VmWare安裝CentOS7系統(tǒng)
3.VmWare快照
4.Bash能做什么
5.Bash怎么使用
單條命令
Shell腳本
6.Bash提示符
[root@oldboyedu ~]#
7.Bash基礎(chǔ)語法
命令 [選項] [參數(shù)]
ls -la /home/
8.Bash常用特性
tab補全(必須)
快捷鍵 ctrl+a,e,c,l,w,u,k,r
命令別名 alias
歷史記錄 history
命令幫助 man --help
9.系統(tǒng)目錄結(jié)構(gòu)
Windows C:\ D:\ E:\ —>多根組織結(jié)構(gòu)
Linux / —>單根組織結(jié)構(gòu)
在Linux的 / 目錄下有很多的二級目錄眉枕,這些目錄都是什么意思
存放命令相關(guān)的目錄
/bin 普通用戶使用的二進(jìn)制命令
/sbin 只有超級管理員才能執(zhí)行的
存放用戶相關(guān)數(shù)據(jù)的家目錄
/home 普通用戶家目錄 默認(rèn)在 /home/username
/root 超級管理員的家目錄
系統(tǒng)文件目錄
/usr 相當(dāng)于C:\Windows
/usr/local 軟件安裝的目錄,相當(dāng)于C:\Program File
/usr/bin 普通用戶使用的應(yīng)用程序(重要)
/usr/sbin 管理員使用的應(yīng)用程序(重要)
/usr/lib 庫文件Glibc 32bit
/usr/lib64 庫文件Glibc 64bit
啟動目錄
/boot 存放系統(tǒng)啟動的相關(guān)文件亡哄,例如:kernel 等...
配置文件目錄
/etc 極其重要原在,后期所有服務(wù)的配置都在這個目錄中
/etc/sysconfig/network-… 網(wǎng)卡配置文件
/etc/hostname 系統(tǒng)主機名配置文件
/etc/resolv.conf dns客戶端配置文件
/etc/hosts 本地域名解析配置文件
可變的目錄與臨時目錄
/var 存放一些可變的文件,比如/var/log/下的日志文件
/tmp 系統(tǒng)臨時存放的一些文件
/var/tmp 進(jìn)程產(chǎn)生的臨時文件
設(shè)備目錄文件
/dev 存放設(shè)備文件剑梳,比如硬盤等
/dev/sd sda sdb sdc4
/dev/null 黑洞設(shè)備诡蜓,只進(jìn)不出
/dev/random 生成隨機數(shù)的設(shè)備
/dev/zero 能源源不斷的產(chǎn)生數(shù)據(jù)
虛擬的文件系統(tǒng)
/proc 反映當(dāng)前系統(tǒng)正在運行進(jìn)程的實時狀態(tài)
10.文件路徑定位
/etc/hostname 文件位置+文件名稱=路徑 換句話說:路徑則是對文件定義的一種方式
絕對路徑
相對路徑 . 和 ..
11.文件管理命令
mkdir
touch
mv
rm
今天
文件管理
cp復(fù)制
復(fù)制并重命名
cp file /tmp/file_copy 將當(dāng)前目錄下的file文件,復(fù)制到/tmp/目錄下唉锌,并重新命名為file_copy
復(fù)制單個文件
cp file1 /tmp/ 將file1復(fù)制到/tmp目錄下
復(fù)制一個目錄
cp /etc/ /tmp/ -r 復(fù)制一個目錄,并且目錄中有很多子目錄
復(fù)制不同路徑的不同文件
cp file1 /etc/hostname /etc/hosts /opt/ 復(fù)制不同路徑下的不同文件到同一個目錄下
復(fù)制不同路徑的文件及目錄
cp -rp file1 oldboy1/ file /opt/ 復(fù)制不同路徑下的文件及目錄到同一個目錄下
Ps:在復(fù)制過程中頻繁觸發(fā)提示可以加 \ 反斜線或用命令的絕對路徑
\cp -r /etc/ /opt/
/bin/cp -r /etc/ /opt/
擴展
cp {file5,file5-bak} 復(fù)制一份file5命名為file5-bak
選項
? -v:詳細(xì)顯示命令執(zhí)行的操作
? -r: 遞歸處理目錄與子目錄
? -p: 保留源文件或目錄的屬性
查看
cat
cat pass 查看文件的所有內(nèi)容
cat -n pass 查看文件有多少行
cat -A pass 查看文件的特殊符號竿奏,比如說文件中存在tab鍵
cat擴展使用袄简,創(chuàng)建一個文件,并往里寫入內(nèi)容
cat >> test.txt <<EOF
EOF代表開始泛啸,再碰到EOF結(jié)束
less绿语、more
less /etc/services 光標(biāo)上下移動,空格翻頁
more /etc/services 回車換行,空格翻頁
head
默認(rèn)查看頭部內(nèi)容吕粹,前十行
head -3 pass 前三行
head -n3 pass
ps aux | head -5 了解
tail
tail pass 查看文件尾部十行
tail -20 pass 查看文件尾部20行
tail -f 或 tailf
ps aux | tail -5 了解
選項
? -f 實時顯示文件最新內(nèi)容
grep
grep "root" pass 匹配出pass文件中的root相關(guān)的行
grep "^root" pass 匹配出pass文件中以root開頭的行
grep "bash$" pass 匹配出pass文件中以bash結(jié)尾的行
grep -n -A 2 "bash" pass 匹配bash關(guān)鍵詞向下2行
grep -v "ftp" pass 除了ftp的行
grep -i "ftp" pass 忽略大小寫匹配
grep -Ei "sync$|ftp" pass 匹配出pass文件中以sync結(jié)尾的种柑,或者ftp相關(guān)的行,忽略大小寫
選項
? -n 顯示行號
? -A 顯示關(guān)鍵詞向下幾行
? -B 向上幾行
? -C 上下各幾行
? -v 除了什么的行
? -i 不區(qū)分大小寫
? -E "ftp|^root" |或者
Ps:grep篩選的目標(biāo),會將整行打印出來.
grep相關(guān)練習(xí)題
0匹耕、顯示當(dāng)前pass文件中,root聚请、adm或ftp用戶相關(guān)的信息
grep -E "root|adm|^ftp" pass
1、顯示/proc/meminfo文件中以不區(qū)分大小的s開頭的行稳其;
grep -i "^s" /proc/meminfo
2驶赏、顯示/etc/passwd中以nologin結(jié)尾的行;
grep "nologin$" /etc/passwd
3、顯示/etc/inittab中以#開頭既鞠,而后又跟了任意字符的行母市;
grep "^# .*" /etc/inittab
? . 表示任意單個字符
? * 表示所有
? .* 表示所有的任意字符
總結(jié)
1.文件命令
cp
cat
less
more
head
tail
tailf
grep
明天
文件的下載 wget curl
文件的上傳 rz sz 不支持上傳文件夾
文件內(nèi)容進(jìn)行排序sort,去重uniq损趋,統(tǒng)計
文件的截取 cut awk sed ...
相關(guān)命令
cp
cp 復(fù)制
? -r 遞歸拷貝,通常用來拷貝目錄
? -p 保持拷貝源文件的屬性不變
? -v 顯示拷貝的過程
cat
cat 查看文件內(nèi)容椅寺,從頭到尾查看
? -n 顯示行號
? -A 顯示特殊字符浑槽,使用較少
cat >> test.txt <<EOF
neirong1
neirong2
EOF
less
less 查看大文件,空格翻頁返帕,光標(biāo)上下滾動桐玻,q退出
more
more 查看大文件顯示百分比,空格翻頁荆萤,回車換行镊靴,q退出
tail
tail 查看文件尾部內(nèi)容,默認(rèn)10行
? -n 指定查看尾部多少行
? -f 動態(tài)追蹤一個文件尾部的實時變化链韭,在后面故障排查會使用到
head
head 查看文件頭部內(nèi)容偏竟,默認(rèn)10行
? -n 指定查看頭部多少行
grep
grep (過濾|匹配)一個文件中的內(nèi)容
? -n 顯示文件所在的行
? -i 忽略大小寫
? -v 取反
? -E 匹配多個條件 a|b|c
^
以什么開頭
$
以什么結(jié)尾
.
任意單個字符
*
所有內(nèi)容
.*
所有的任意字符都匹配
^$
表示空行