Liunx的 檔案 和 目錄 管理
包括了檔案和目錄的建立、刪除、修改,許可權、壓縮、搜尋、分割槽、掛載
簡單的一些命令:
【 pwd 】檢視當前所在目錄
【 cd .. 】上級目錄
【 cd ~ 】當前使用者的家目錄
【cd -】上次開啟目錄(回看)
【 rmdir 目錄名】刪除空目錄
【du -sh 檔案或目錄】檢視檔案或目錄的大小,耗費資源大
【echo 內容 >>檔名】追加內容
【wc 檔名】統計檔案行數(-l)、檔案單詞數(-w)、檔案位元組數(-c)
建立目錄( mkdir ):
【 mkdir 目錄名 】在存在的目錄下建立下一級目錄
【 mkdir -p 目錄1.1/目錄1.2/目錄1.3 】在存在的目錄下建立多個連續目錄
【 mkdir 目錄1 目錄2 】在存在的目錄下建立多個目錄
檢視( ls )命令:
【 ls 】 檢視當前目錄下所有檔案
【 ls -a 】檢視當前目錄下所有檔案,包括隱藏檔案,如(.filex)
【 ls -l 】檢視當前目錄下所有檔案詳細資訊/ L /
【 ls -lh 】l和h選項合用,加上h表示人性化顯示,改變在於檔案大小單位
【 ls -ld 】顯示當前目錄的詳情資訊
【 ls -i 】操控節點資訊,int裡的第一個字母
拷貝( cp )命令:
cp 選項 原 目標
選項有:( -p )攜帶原檔案時間等屬性
【 cp 原檔案 目標檔案 】複製或者檔案重新命名
【 cp 原檔案1 原檔案2 原檔案3 目標目錄 】複製多個檔案到目錄下
【 cp -rp 源目錄 目標目錄 】目錄的複製,攜帶原檔案時間等資訊
移動( mv )命令:
mv 原 目標
【 mv 原檔案 目標檔案】檔案重新命名
【 mv 原目錄/目錄1 目標目錄/目錄2】移動目錄,並把目錄1改名為目錄2
刪除( rm )命令:
rm 選項 檔名
選項:(-r)表示目錄
選項:(-f)強制刪除,不詢問
【 rm 檔名 】刪除檔案
【 rm -rf 目錄名】強制刪除目錄
建立檔案( vi 和 touch ):
【 touch 檔名1 檔名2 】建立檔案,不開啟編輯
【 touch “引號 解決空 格檔名問題”】建立帶空格的檔名
touch 建立檔案時如果檔案存在則只會更新建立時間
【 vi 檔名 】建立檔案並開啟編輯
連結( ln )命令:
軟連結:
ln -s 原地址 新地址
類似win快捷方式
操作與許可權問題全靠原檔案
刪除軟連線,可直接用rm,不影響原檔案或目錄
更新軟連線:ln -is 原檔案地址 新地址
選項:
-b 刪除,覆蓋以前建立的連結
-d 允許超級使用者製作目錄的硬連結
-f 強制執行
-i 互動模式,檔案存在則提示使用者是否覆蓋
-n 把符號連結視為一般目錄
-s 軟連結(符號連結)
-v 顯示詳細的處理過程
硬連結:
ln 原地址 新地址
相當於檔案的拷貝,但更新會是同步的
其中一個檔案丟失,不影響另外一個
不可跨檔案分割槽
許可權介紹及chmod:
目錄許可權是:
W:建立和刪除檔案必須要寫許可權,
X:進入目錄必須要執行許可權,
R:檢視目錄內容必須要有讀許可權
使用者類別(ugo): u為所有者,g為同組,o為其他人
檔案許可權(wrx): w為寫,r為讀,x為執行
+為新增許可權,-為去掉許可權
【 chmod ugo+w 檔名】新增寫許可權給所有人
【 chmod u+x,o+x 檔名】給所有者和其他使用者新增執行許可權
【 chmod u=--- 檔名】去掉所有者的全部許可權,減號佔位
【 chmod 777 檔名】新增所有許可權給所有人
【 chmod -R 770 目錄名】修改目錄及目錄下所有檔案和目錄的許可權
【 chown 使用者名稱 檔案 】更改檔案的所有者,chgrp更改所屬組
檔案搜尋(find):
find 範圍 條件
條件間的連線:(-a)前後條件滿足,(-o)前後條件滿足一個
型別:(-type)(f)檔案 (d)目錄 (l)軟連線
【find . -name 檔名】在當前目錄下查詢檔名相同的檔案
【find /home -name *檔名片段*】在家目錄下查詢有檔名片段的檔案
其中(*)表示0或多個字元,(?)表示單個任意字元
【find . -iname D*】當前路徑查詢以D或者d開頭的檔案,-iname
【find /home -user 使用者1】檢視所有者為使用者1的檔案,所屬組:-group
【find . -type f -exec ls -l {} \;】查詢檔案並列出詳細資訊
檔案內容的增刪改查:
【 cat -n 檔名 】檢視檔案內容,顯示行號
【 cat -n 檔名 】檢視檔案內容,並顯示行號
【 sort 檔名】預設進行數字到字母排序
【 less 檔名 】分頁檢視檔案內容
下一頁:page dn或者 空格
上一頁:page up
下一行:下箭頭
上一行:上箭頭
搜尋:直接輸入【/內容】,n為查詢下一個
退出:Q或q退出
【 head -n 3 檔名】檢視檔案前三行
【 tail -n 2 檔名 】檢視檔案後2行
【 tail -n 3 -F 檔名】實時顯示後三行資訊
注意:使用選項(-f)時,檔案更改不可用vi,因為vi編輯器是將原檔案刪除並新建,其inode不一樣,可以用【ls -I 檔名】檢視。
【grep -n 字串 檔案】在檔案中查詢字串所在行,字串不用雙引號,返回行號和當前行內容
【grep -in --color=auto 字串 檔案】不區分大小寫查詢,關鍵字高亮顯示
【cut -d 分隔符 -f 欄位 檔名】預設分隔符為tab(製表符),-d後只能跟隨一個字元
如【cut -d ":" -f 1,3 檔名】以冒號為分隔符提取第一和第三列
【sed 選項 ‘動作’ 檔名】輕量級流編輯器,可進行資料的增刪改查
選項:
(-n)只把經過sed處理的行輸出到螢幕上
(-e)允許多條sed命令,多個條件在單引號內用分號隔開
(-I)修改的內容不僅僅是在輸出資料上,在原檔案內也會更改
動作:
(a \)追加,行後追加為新行,其中 \ 表示命令未輸入完
如:在第三行後追加新行,使用 \ 會自帶換行符:
(c \)替換,如替換第二行:【sed '2c 目標內容' 檔名】
(i \)插入,行前插入新行,如‘3i dong xiao’
(p)列印行,如‘3p’為第三行,如’3,5’為第三行到第五行
(d)刪除,如‘3d’為刪除第三行,也可為‘3,5d’
(s)字串替換,如:【sed '行數s/查詢/替換/g' 檔案】,不加行則替換全部
如:
【sed -n '2p' 檔名】輸出檔案內容的第二行
【find . -type f -ok ls -l {} \;】上為不詢問操作,此為每條詢問是否操作
【find . -inum 33828570】通過節點查詢
壓縮管理:
tar 選項 目標檔案 目錄
特點:常用
選項:(-z)壓縮,(-c)打包 /(-x)解包,(-v)顯示詳細資訊,(-f)指定檔名
出現順序必須如下
【tar -cvf dong.tar dong33】打包成(.tar)檔案
【tar -xvf dong.tar】解壓
【tar -zcvf dongx.tar.gz dong33】打包並壓縮成(.tar.gz)或者(.tgz)檔案
【tar -zxvf dongx.tar.gz】解壓
bzip2 選項 原檔案
選項:(-k)保留原檔案
特點:壓縮比高
【bzip2 -k 原檔案】壓縮,系統預設命名
【bunzip2 -k 壓縮檔名.bz2】解壓縮
gzip:
【gzip ww.txt】壓縮後的檔案:ww.txt.gz,不保留原檔案
【gunzip ww.txt.gz】或者【gzip -d ww.txt.gz】解壓縮
與win通用的 zip :
【zip 目標檔名.zip 原檔名】壓縮檔案,保留原檔案
【zip -r 目標目錄名.zip 原目錄名】壓縮目錄,保留原
【unzip 壓縮包名.zip】解壓縮
掛載:
本質就是將裝置檔名和掛載點聯絡,如果是桌面版,一切都簡單,但….也要學習用命令操作
掛載光碟:
1、 建立空目錄,建立掛載點
2、 插入光碟
3、 【mount /dev/sr0 掛載點】掛載
4、 檢視內容直接進入掛載點
5、 離開光碟目錄
6、 【umount /dev/sr0】解除安裝光碟
掛載U盤:
1、 建立空目錄,建立掛載點
2、 直接插入U盤
3、 【 fdisk -l 】檢視裝置檔名(分割槽名)
4、 【mount -t vfat /dev/sdb1 掛載點絕對路徑】
選項有:
-t 檔案系統
FAT32檔案系統則使用vfat ,
FAT 和FAT16檔案系統則為fat
不支援NTFS(HPFS)檔案系統,一般是硬碟,可下載NTFS-3G外掛,檔案系統為ntfs-3g
-o 特殊選項,可更改檔案系統是否可以執行可執行指令碼等
5、 進入掛載點訪問資料
6、 【umount /dev/sdb1】解除安裝U盤
分割槽:
分割槽的掛載點是檔案目錄
主分割槽加擴充套件分割槽總共可有四個,其中擴充套件分割槽最多為1個,擴充套件分割槽不能存放資料,必須在其劃分邏輯分割槽來儲存資料。
【df -h】檢視每個分割槽詳細資訊,統計大小會考慮執行佔用的空間
【mount】檢視系統已經掛載的分割槽
fdisk可對新硬碟進行分割槽
一般安裝Liunx時,可以確定一下基本分割槽:
執行記憶體分割槽(小於2GB):swap分割槽
啟動分割槽(200M):/boot
主(根,剩餘空間)分割槽:/