day3_Bash基礎(chǔ)

? ? ? ?關(guān)于linux系統(tǒng)目錄結(jié)構(gòu)? ??

? ? ? Windows: 以多根的方式組織 文件C:\ D:\ E:\ F:\

? ? ? ? Linux:以單根的方式組織文件 /

1.存放命令相關(guān)的目錄/bin, 普通用戶使用的命令 /bin/ls, /bin/date/sbin,管理員使用的命令 /sbin/service

2.存放用戶相關(guān)數(shù)據(jù)的家目錄,比如:windows不同的用戶登陸系統(tǒng)顯示的桌面背景不一樣/home,普通用戶的家目錄, 默認(rèn)為/home/username /home/test? 環(huán)境變量的設(shè)定/root,超級(jí)管理員root的家目錄, 普通用戶無權(quán)操作

3.系統(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

4.啟動(dòng)目錄/boot 存放的系統(tǒng)啟動(dòng)相關(guān)的文件,例如:kernel,grub(引導(dǎo)裝載程序)

5.配置文件目錄/etc,極其重要,后續(xù)所有服務(wù)的配置都在這個(gè)目錄中/etc/sysconfig/network-script/ifcfg-,網(wǎng)絡(luò)配置文件/etc/hostname,系統(tǒng)主機(jī)名配置文件/etc/resolv.conf,dns客戶端配置文件/etc/hosts,本地域名解析配置文件? C:\Windows\System32\drivers\etc

6.可變的目錄與臨時(shí)目錄/var,存放一些變化文件,比如/var/log/下的日志文件/var/tmp,進(jìn)程產(chǎn)生的臨時(shí)文件/tmp,系統(tǒng)臨時(shí)目錄(類似于公共廁所)

7.設(shè)備目錄文件/dev,存放設(shè)備文件,比如硬盤,硬盤分區(qū),光驅(qū),等等/dev/sd? ? sda sdb sdc4/dev/null,黑洞設(shè)備,只進(jìn)不出。類似于垃圾回收站/dev/random,生成隨機(jī)數(shù)的設(shè)備./dev/zero,能源源不斷的產(chǎn)生數(shù)據(jù),類似于取款機(jī),隨時(shí)隨地取錢

8.虛擬的文件系統(tǒng) (如對(duì)應(yīng)的進(jìn)程停止則/proc下對(duì)應(yīng)目錄則會(huì)被刪除)/proc,反映當(dāng)前系統(tǒng)正在運(yùn)行進(jìn)程的實(shí)時(shí)狀態(tài)PS:類似于汽車在運(yùn)行過程中的儀表板,能夠看到汽車的油耗、時(shí)速、轉(zhuǎn)向燈、故障等等

9.PS: 在Linux7系統(tǒng)中, /bin, /sbin, /lib, /lib64都以軟鏈接的形式鏈接到/usr/目錄下/bin --> /usr/bin/sbin --> /usr/sbinlib -> usr/liblib64 -> usr/lib64

? media #提供設(shè)備的掛載點(diǎn) mnt #提供設(shè)備的掛載點(diǎn)opt #第三方工具默認(rèn)安裝的目錄run #進(jìn)程運(yùn)行的pid,(放在一個(gè)文件中)? lock相關(guān)文件

2.文件定義

比如: /etc/hostname,整個(gè)文件中包含文件名稱以及文件所在的位置,我們將這個(gè)叫做路徑,也就是說我們是通過路徑對(duì)文件進(jìn)行定位。

提問FQ: /home/oldboy/file 和/home/oldgirl/file是否是同一個(gè)文件?提問FQ: /abc/test 和 abc/test 是一樣的嗎?

絕對(duì)路徑: 只要以 / 開始的都算絕對(duì)路徑 ls /a.txt相對(duì)路徑: 相對(duì)于當(dāng)前目錄來說? ? ? ? ? ls? a.txt? ls ./a.txt ls ../a.txt? [/home/oldboy]

. 和 .. 是什么什么? . 代表當(dāng)前目錄 .. 代表當(dāng)前目錄的上一級(jí)目錄 [root@oldboyedu network-scripts]# cd /usr/ #進(jìn)入/usr[root@oldboyedu usr]# pwd #打印當(dāng)前所在的位置/usr

相對(duì)路徑方式

[root@oldboyedu usr]# #cd local/[root@oldboyedu usr]# cd ./local/[root@oldboyedu local]# pwd/usr/local

絕對(duì)路徑的方式

[root@oldboyedu local]# cd /usr/local

#絕對(duì)路徑 ~ 當(dāng)前用戶的家目錄 root = /root? ? oldboy = /home/oldboy[root@bgx /]# ls /home/alice/file1[root@bgx /]# ls ~/file2 #/root/file2[root@bgx /]# ls ~/alice/file3 #/root/alice/file3

#相對(duì)路徑[root@bgx /]# mkdir abc #創(chuàng)建一個(gè)abc目錄? ? /abc目錄[root@bgx /]# ls ../file3 #查看上一級(jí)目錄的file3文件? ? [檢查當(dāng)前所在的位置][root@bgx /]# ls file4 #查看當(dāng)前目錄file4文件[root@bgx /]# ls abc/file5 #查看當(dāng)前目錄下的abc目錄下的file5文件

使用相對(duì)路徑和絕對(duì)路徑,到底使用哪一個(gè)?? 沒有明確的說法[root@oldboyedu ~]# cd /etc/sysconfig/network-scripts/[root@oldboyedu network-scripts]# #cd /tmp/[root@oldboyedu network-scripts]# cd ../../../tmp/[root@oldboyedu tmp]# pwd/tmp

cd改變目錄,常見的使用方法

#空格cd 絕對(duì)路徑 cd /etc/hostname

#空格cd 相對(duì)路徑 cd test/abc cd . cd ..

#空格cd? ? ? #切換目錄,例: cd /etc

#空格cd -? ? #切換回上一次所在的目錄

#空格cd ~? ? #切換回當(dāng)前用戶的家目錄,注意:root和普通用戶是否有所不同嗎?

#空格cd .? ? #代表當(dāng)前目錄,一般在拷貝、移動(dòng)等情況下使用 cp /etc/hostname ./

#空格cd ..? #切換回當(dāng)前目錄的上級(jí)目錄

3.基本 創(chuàng)建 復(fù)制 移動(dòng) 刪除? 命令mkdir: 創(chuàng)建目錄[root@oldboyedu ~]# mkdir oldboy1 #在當(dāng)前目錄下創(chuàng)建oldboy1目錄[root@oldboyedu ~]# mkdir oldboy1/oldboy2/oldboy3/oldboy4/ -pv #一次創(chuàng)建多個(gè)目錄

1.創(chuàng)建從1-100個(gè)目錄.[root@oldboyedu ~]# mkdir {1..100}

2.創(chuàng)建dir-1到dir-50個(gè)目錄怎么辦[root@oldboyedu ~]# mkdir dir-{1..50}

3.了解即可[root@oldboyedu ~]# mkdir /opt/{bin,logs,conf}/test -pv

touch: 創(chuàng)建一個(gè)空的文件[root@oldboyedu ~]# touch ribao.txt

mv: 移動(dòng)文件? mv 源文件 目標(biāo)位置[root@oldboyedu ~]# mv ribao.txt dir-7/ #將ribao.txt移動(dòng)到dir-7目錄中[root@oldboyedu ~]# mv file /tmp/tttt #將當(dāng)前目錄下的file文件移動(dòng)到/tmp/下并修改名稱為tttt[root@oldboyedu ~]# mv hostname test #將hostname文件名稱修改為test[root@oldboyedu ~]# mv dir-1 dir-2 dir-3 test? dir-15/ #將多個(gè)文件或目錄移到到指定的位置[root@oldboyedu ~]# ls dir-15/dir-1? dir-2? dir-3? test

rm: 刪除文件或者目錄? -f 強(qiáng)制刪除 -r 遞歸刪除[root@oldboyedu ~]# rm -f file1 #刪除一個(gè)文件[root@oldboyedu ~]# rm -rf 99/[root@oldboyedu ~]# rm -rf dir-* PS: 在使用rm刪除時(shí), 文件用-f 目錄才加-r? 盡可能不要-rf一起使用? ?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容