一、上周回顧
? ? ? ? 1.1.Linux介紹\GNU\GLP\歷史\發(fā)行版
? ? ? ? 1.2.VmWare安裝Centos7系統(tǒng)
? ? ? ? 1.3.Vmware快照
? ? ? ? 2.Bash
? ? ? ? ? ?2.1.Bash能做什么
? ? ? ? ? ?2.2.Bash怎么使用
? ? ? ? ? ? ? ? ? ?單條命令? 效率低 適合簡單剥懒,或者少量的任務(wù)
? ? ? ? ? ? ? ? ? ? Shell腳本 效率高 適合復(fù)雜内舟,重復(fù)性的工作
? ? ? ? ? ?2.3.Bash提示符
? ??????????????[root@caoweiqiang ~]#
? ? ? ? ? ? ? ? ? ? ? ?當(dāng)前登錄系統(tǒng)的用戶----->root
? ? ? ? ? ? ? ? ? ? ? ?當(dāng)前系統(tǒng)的主機(jī)名稱----->caoweiiqnag
? ? ? ? ? ? ? ? ? ? ? ?當(dāng)前用戶所在的家目錄-----> ~
? ? ? ? ? ? ? ? ? ? ? ?通常情況下是超級(jí)管理員? #? ? 普通用戶是 $
? ? ? ? ? ?2.4.Bash基礎(chǔ)語法
? ? ? ? ? ? ? ? ? ? ? ? 命令? ? 【選項(xiàng)】? ?【參數(shù)】
? ? ? ? ? ? ? ? ? ? ? ? 命令(打針)
? ? ? ? ? ? ? ? ? ? ? ? 選項(xiàng)(輕重)
? ? ? ? ? ? ? ? ? ? ? ? 參數(shù)(往哪打)
? ? ? ? ? ? ? ? ? ? ? ? ls -la /home/? #以長格式顯示 /home/所有內(nèi)容,包括隱藏文件
? ? ? ? ? ? 2.5.Bash 常用特性
? ? ? ? ? ? ? ? ? ? ? ? 1.tab補(bǔ)全(必須會(huì))
? ? ? ? ? ? ? ? ? ? ? ? 2.快捷鍵? Ctrl+a,e,c,l,w,u,k,r
? ? ? ? ? ? ? ? ? ? ? ? 3.命令別名? alias? unalias
? ? ? ? ? ? ? ? ? ? ? ? 4.歷史記錄? history
? ? ? ? ? ? ? ? ? ? ? ? 5.命令幫助? man? ? ? --help
? ? ? ? ? ? 2.6.系統(tǒng)目錄結(jié)構(gòu)
? ? ? ? ? ? ? ? ? ? ? ? Windows C :\? D :\? ?E:\
? ? ? ? ? ? ? ? ? ? ? ? Linux /? ----->單根組織結(jié)構(gòu)
? ? ? ? ? ? ? ? ? ? ? ? 在Linux / 目錄下有很多的二級(jí)目錄初橘,那么目錄都是什么意思验游?
? ? ? ? ? ? ? ? ? ? ? ? /bin #存放都是二進(jìn)制可執(zhí)行行的命令
? ? ? ? ? ? ? ? ? ? ? ? /sbin? #超級(jí)管理員可執(zhí)行的二進(jìn)制命令
? ? ? ? ? ? ? ? ? ? ? ? /home #普通用戶的家目錄? ?/home/caoweiqiang
? ? ? ? ? ? ? ? ? ? ? ? /root? #超級(jí)管理員用戶的家目錄(普通用戶無權(quán)限)
? ? ? ? ? ? ? ? ? ? ? ?/etc? ?#系統(tǒng)的配置文件存放路徑,包括后續(xù)安裝的一些服務(wù)
? ? ? ? ? ? ? ? ? ? ? ?/dev? #存放設(shè)備目錄
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/dev/null? #黑洞設(shè)備保檐,只進(jìn)不出
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? /dev/random #隨機(jī)設(shè)備
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? /dev/zero #能源源不斷的產(chǎn)生數(shù)據(jù)? ?(提款機(jī))
? ? ? ? ? ? ? ? ? ? ? ?/proc #虛擬系統(tǒng)文件(顯示系統(tǒng)當(dāng)前進(jìn)程正在運(yùn)行的狀態(tài))
? ? ? ? ? ? ? ? ? ? ? ?/usr? #存放系統(tǒng)文件和Windows的C盤下的Windows目錄一樣
? ? ? ? ? ? ? ? ? ? ? ?/usr/local#? ?軟件安裝的目錄
? ? ? ? ? ? ? ? ? ? ? ?/usr/bin #和/bin一致耕蝉,只不過/usr/bin才是真實(shí)的命令存放路徑
? ? ? ? ? ? ? ? ? ? ? ?/usr/sbin#和/sbin一致,只不過/usr/bin才是真實(shí)的命令存放路徑
? ? ? ? ? ? ? ? ? ? ? ?/usr/lib #庫文件夜只,命令所依賴的庫文件
? ? ? ? ? ? ? ? ? ? ? ?/usr/lib64#64庫文件垒在,命令所依賴的庫文件
? ? ? ? ? ? ? ?/boot #系統(tǒng)啟動(dòng)時(shí)的引導(dǎo)目錄,存放的是kernel,grub菜單
? ? ? ? ? ? ? ?/run #存放進(jìn)程鎖文件
? ? ? ? ? ? ? ?/opt#早起第三方廠商安裝軟件存放的目錄
? ? ? ? ? ? ? ?/mnt#掛載扔亥,將目錄與設(shè)備進(jìn)行關(guān)聯(lián)场躯,比武硬盤,光盤
? ? ? ? 2.7.文件路徑定位
? ? ? ? ? ? ? ?/etc/hostname文件位置+文件名稱=路徑? ? 換句話說:路徑則是對(duì)文件定義的一種方式
? ? ? ? ? ? ? ?絕對(duì)路徑:只要以/開始的路徑旅挤,都算絕對(duì)路徑
? ? ? ? ? ? ? ?相對(duì)路徑: 相對(duì)于當(dāng)前目錄來說的路徑踢关,.當(dāng)前目錄? ?..當(dāng)前目錄的上一級(jí)目錄
? ? ? ? 2.8.文件管理命令
? ? ? ? ? ? ? ? mkdir? #創(chuàng)建目錄
? ? ? ? ? ? ? ? touch? #創(chuàng)建文件
? ? ? ? ? ? ? ? ?mv? ? ?#移動(dòng)或重新命名
? ? ? ? ? ? ? ? ?rm? ? ?#刪除文件
二、今日內(nèi)容
文件管理-->創(chuàng)建? 移動(dòng)? 刪除? 復(fù)制
cp? 復(fù)制
#選項(xiàng):
? ? ? ? ? ? #:? -v:詳細(xì)顯示命令執(zhí)行的操作
? ? ? ? ? ? #:? ?-r:? 遞歸處理目錄與子目錄
? ? ? ? ? ? #:? ?-p:? 保留源文件或目錄的屬性
#1.將當(dāng)前目錄下的file文件谦铃,復(fù)制到/tmp/目錄下耘成,并重新命名為file_copy
[root@caoweiqiang ~]# cp file /tmp/file_copy
[root@caoweiqiang ~]# ls /tmp/file_copy
/tmp/file_copy
? #2.將file復(fù)制到/tmp目錄下
? [root@caoweiqiang ~]# cp file1 /tmp/
? #3.在拷貝文件的過程中,文件權(quán)限和身份都發(fā)生變化了
? ? ?[root@caoweiqiang ~]# cp file /tmp
? ? ?[root@caoweiqiang ~]# ll /tmp/file
? ? ? ?-rw-r--r--. 1 root root 0 Jul 29 17:40 /tmp/file
? ? ? #在拷貝過程中加上-p參數(shù)驹闰,保存文件原有的屬性
? ? ? ?[root@caoweiqiang ~]# cp -p file /tmp/
? ? ? ?[root@caoweiqiang ~]# ll /tmp/file
? ? ? #4.如何拷貝一個(gè)文件夾瘪菌,并且文件夾中有很多的子文件,-r遞歸復(fù)制(文件夾===目錄)
? ? ? ?[root@caoweiqiang ~]# cp /etc/ /tmp/
? ? ? ? ? ? cp: omitting directory ‘/etc/’
? ? ? ? ? ? anaconda-ks.cfg? file? file1? hostname? job? student.txt
? ? ? ?[root@caoweiqiang ~]# cp /etc/ /tmp/ -r
? ? ? ? ?#5.拷貝文件路徑下的不同文件至同一個(gè)目錄下? ?-v是顯示詳細(xì)過程
? ? ? ? ? [root@caoweiqiang ~]# cp -rp file1 oldboy1/ file /etc/ /mnt/ opt/? ?-v
????????#6.拷貝不同路徑下的不同文件+不同目錄???至同一個(gè)位置
? ? ? ? ? ? ?[root@caoweiqiang ~]# cp -rp file1 oldboy1/ file /etc/ /mnt? ?/opt/
? ? ? ? ? ? #7.在復(fù)制過程中頻繁觸發(fā)重復(fù)復(fù)制嘹朗,提示確認(rèn)操作
? ? ? ? ? ? ?[root@caoweiqiang ~]# \cp -r /etc/ /opt/
? ? ? ? ? ? ?[root@caoweiqiang ~]# /bin/cp -r /etc/ /opt/
2.文件管理之:查看文件內(nèi)容(cat? less? more head? tail grep... )
#------cat
? ? ? ? ? ? ? [root@caoweiqiang ~]# cp /etc/passwd ./pass
? ? ? ? ? ? ? [root@caoweiqiang ~]# cat pass? ? ?#查看文件的全部內(nèi)容师妙,從頭到尾
? ? ? ? ? ? ? ?[root@caoweiqiang ~]# cat -n pass? #查看一個(gè)文件有多少行? ? -n
? ? ? ? ? ? ? ? [root@caoweiqiang ~]# cat -A pass? ? ? ?#查看文件的特殊符號(hào),比如文件中存在tab鍵
#cat擴(kuò)展使用屹培,創(chuàng)建一個(gè)文件默穴,并往里寫入內(nèi)容
? ? ? ? ? ? ? ? [root@caoweiqiang ~]# cat >> test.txt <<EOF
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? > test1
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? > test2
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?> test3
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?> EOF? ? ? ?#EOF代表結(jié)束
? ? ? ? ? ? ? ? ?[root@caoweiqiang ~]# cat test.txt
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? test1
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? test2
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? test3
#--------less怔檩、more
#less /etc/service? ? ?#使用光標(biāo)上下翻動(dòng),空額進(jìn)行翻頁蓄诽,q退出
#more /etc/service? ? #使用回車上下翻動(dòng)薛训,空格進(jìn)行翻頁,q退出
#------------head
[root@caoweiqiang ~]# head pass? ? #用head仑氛,默認(rèn)查看頭部前10行內(nèi)容
[root@caoweiqiang ~]# head -5 pass? ?#查看頭部5行乙埃,用-n指定
[root@caoweiqiang ~]# ps aux | head -5? ? ?#了解
#-------------tail? 尾部
#tail? ?pass? ? ? #查看文件尾部默認(rèn)十行
[root@caoweiqiang ~]# tail -14 /var/log/secure
[root@caoweiqiang ~]# tail -f /var/log/messages? ? ?#-f查看文件尾部的變化
[root@caoweiqiang ~]# tailf /var/log/messages? ? #查看文件尾部的變化
[root@caoweiqiang ~]# ps aux | tail -5? ? ? ? ?#了解
#-----------grep過濾文件內(nèi)容
#1.過濾出pass文件中的root相關(guān)的行
[root@caoweiqiang ~]# grep "root" pass
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
#2.過濾pass文件中,匹配以root開頭的行
[root@caoweiqiang ~]# grep "^root" pass
root:x:0:0:root:/root:/bin/bash
#3.過濾pass文件中锯岖,匹配以bash結(jié)尾的行[root@caoweiqiang ~]# gerp "bash$" pass
#4.顯示行號(hào)
[root@caoweiqiang ~]# grep -n "bash$" pass
1:root:x:0:0:root:/root:/bin/bash
#5.過濾出包含ftp 的行
[root@caoweiqiang ~]# grep "ftp" pass
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
#6.過濾除了ftp的行介袜,其他的都全部顯示
[root@caoweiqiang ~]# grep -v "ftp" pass
#7.忽略大小寫方式? ?
[root@caoweiqiang ~]# grep -i "ftp" pass
#8.過濾pass文件中以sync結(jié)尾的,或者ftp相關(guān)的行出吹,打印出來遇伞,同時(shí)不區(qū)分大小寫
[root@caoweiqiang ~]# grep -Ei "sysn$|ftp" pass
###grep篩選的目標(biāo),會(huì)將整行打印出來