linux學(xué)習(xí)筆記(二)

Linux發(fā)行版的系統(tǒng)目錄

目錄結(jié)構(gòu)

目錄結(jié)構(gòu).png

ps. /data目錄是博主自己創(chuàng)建的,不是原先linux自帶的目錄

  1. /bin 存放系統(tǒng)命令
  2. /boot 存放著系統(tǒng)的啟動(dòng)文件和內(nèi)核
  3. /dev 設(shè)備文件主目錄
  4. /proc 系統(tǒng)進(jìn)程和系統(tǒng)硬件信息
  5. /etc 系統(tǒng) 主配置文件 主目錄
    (eg. /etc/profile:環(huán)境變量配置文件)
  6. /var variable data file 常態(tài)型變動(dòng)的文件,包括緩存,登錄文件,以及某些軟件運(yùn)行所產(chǎn)生的文件,包括程序文件


    var目錄.png
  7. /home 普通用戶的家目錄
  8. /lib&lib64 系統(tǒng)庫(kù)文件存放的目錄 .dll
  9. /usr 系統(tǒng)幫助文檔以及源碼包安裝位置
    universal shared,read-only data :全局共享只讀數(shù)據(jù)
  10. /sbin 超級(jí)用戶使用的命令存放的目錄,鏈接文件,實(shí)際在/usr/sbin
  11. /mnt 用戶掛載目錄
  12. /run 存放當(dāng)前運(yùn)行程序庫(kù)的目錄(當(dāng)前運(yùn)行的目錄)
  13. /root 超級(jí)用戶root家目錄
  14. /tmp 臨時(shí)文件存放目錄 系統(tǒng)啟動(dòng)過(guò)程中會(huì)產(chǎn)生一些臨時(shí)文件,這些臨時(shí)文件就存放在tmp目錄下
  15. media 可移動(dòng)介質(zhì)掛載點(diǎn)(eg. 光驅(qū))
    16 /opt 第三方應(yīng)用程序文件存放目錄

命名法則及規(guī)定

文件命令規(guī)則:
  1. 除了/(根目錄)之外,所有的字符都合法。
  2. 有些字符最好不用,如空格符、制表符、退格符和字符@#¥()- 等。
  3. 避免使用 ? 作為普通文件名的第一個(gè)字符。
  4. 大小寫敏感。
變量命名規(guī)則:
  1. 變量名必須有一定的意義,并且意義準(zhǔn)確。
  2. 不要大小寫混用。
  3. 盡量避免使用全局變量

文件的元數(shù)據(jù)

元數(shù)據(jù)信息

stat
顯示文件的狀態(tài)信息
-L:支持符號(hào)連接;
-f:顯示文件系統(tǒng)狀態(tài)而非文件狀態(tài);
-t:以簡(jiǎn)潔方式輸出信息;
--help:顯示指令的幫助信息;
--version:顯示指令的版本信息。
`stat(選項(xiàng))(參數(shù))`
stat命令.png

信息:

  1. file:文件名
  2. size:文件大小
  3. block:文件占了多少個(gè)數(shù)據(jù)塊
  4. IO Block:文件所占數(shù)據(jù)塊的塊大小
  5. Device:硬件,既說(shuō)明該文件在硬盤的那個(gè)柱面
  6. Inode:節(jié)點(diǎn)號(hào)
  7. links:鏈接
  8. Access(第一個(gè)):權(quán)限
  9. Uid:該文件所屬的屬主
  10. Gid:該文件所屬的屬組
  11. context:安全上下文
  12. Access(第二個(gè)):文件上一次的訪問(wèn)時(shí)間
  13. Modify:文件上一次修改的時(shí)間
  14. Change:文件上一次屬性更改的時(shí)間

修改文件的時(shí)間戳

touch
把已存在文件的時(shí)間標(biāo)簽更新為系統(tǒng)當(dāng)前的時(shí)間
touch(選項(xiàng))(參數(shù))
更改時(shí)間戳.png

軟連接和硬連接區(qū)別

硬鏈接(hard link):

  1. b文件是a文件的硬鏈接,則代表一個(gè)inode節(jié)點(diǎn)對(duì)應(yīng)兩個(gè)不同的文件名,兩個(gè)文件名指向同一個(gè)文件。如果刪除了a或者b其中任一個(gè),對(duì)另外一個(gè)沒(méi)有影響。每增加一個(gè)文件名,inode節(jié)點(diǎn)上的鏈接數(shù)增加一,每刪除一個(gè)對(duì)應(yīng)的文件名,inode節(jié)點(diǎn)上的鏈接數(shù)減一,直到為0,inode節(jié)點(diǎn)和對(duì)應(yīng)的數(shù)據(jù)塊被回收。

軟鏈接(soft link):

  1. c文件是a文件的軟鏈接,c的inode節(jié)點(diǎn)號(hào)與a的inode節(jié)點(diǎn)號(hào)不相同,c和a指向兩塊不同的數(shù)據(jù)塊。但是c的數(shù)據(jù)塊中存放的只是a的路徑名(可以根據(jù)這個(gè)找到B的目錄項(xiàng))。c和a之間是“主從”關(guān)系,如果a被刪除了,c仍然存在(因?yàn)閮蓚€(gè)是不同的文件),但指向的是一個(gè)無(wú)效的鏈接。
ln 語(yǔ)法格式 
硬鏈接:ln 源文件 鏈接名   
軟鏈接:ln -s 源文件 鏈接名

eg.

  1. 創(chuàng)建文件a


    創(chuàng)建文件.png
  2. 創(chuàng)建a的硬鏈接b


    創(chuàng)建硬鏈接.png

    看到inode鏈接數(shù)變成了2

  3. 創(chuàng)建a的軟連接c


    創(chuàng)建軟連接.png

    產(chǎn)生文件符號(hào)是一個(gè)l的鏈接文件

  4. 刪除a,查看b和c


    刪除源文件.png

    看到b文件上的inode節(jié)點(diǎn)數(shù)變?yōu)?,而c文件變成一個(gè)無(wú)效文件(紅色方塊內(nèi)閃爍表示文件不存在了。)

Linux上的文件管理類命令

  1. ls 顯示文件信息


    ls.png
  2. touch 創(chuàng)建文件


    touch.png
  3. rm 刪除文件


    rm.png
  4. mkdir 創(chuàng)建目錄


    mkdir.png
  5. 顯示文件內(nèi)容
    • less 隨意瀏覽文件,向前向后滾動(dòng)都可以
    • more 瀏覽文件,可以向后滾動(dòng)
    • tail 顯示文件的尾部?jī)?nèi)容
    • cat 全部加載文件內(nèi)容


      cat.png
  6. cp 復(fù)制文件


    cp.png
  7. mv 移動(dòng)文件


    mv.png
  8. pwd 顯示當(dāng)前路徑


    pwd.png

    eg.

  9. 復(fù)制/etc/profile至/tmp/目錄,用查找替換命令刪除/tmp/profile文件中的行首的空白字符
cp /etc/profile /tmp
sed -i 's/^[ /t]*//g' ./profile
說(shuō)明:
1) ^[  /t],是以空格或者tab鍵開頭;
2)*是代表匹配0到多次
profile.png

有空白字符.png

行首空白字符被替換.png
  1. 在vim中設(shè)置tab縮進(jìn)為4個(gè)字符
    vim ~/.vimrc;set tabstop=4
    vim.png
tab4個(gè)字符.png
最后編輯于
?著作權(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)容