Linux文件管理
- Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
cd
cd命令用來切換工作目錄至dirname。 其中dirName表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home directory(也就是剛login時所在的目錄)。另外,~也表示為home directory的意思,.則是表示目前所在的目錄,..則表示目前目錄位置的上一層目錄。
語法:cd(選項)(參數)
實例:cd:切換回家目錄
cd ~:切換回自己的家目錄
cd ~USERNAME:切換至指定用戶的家目錄
cd -:在上一次所在目錄與當前目錄之間來回切換
pwd
pwd命令以絕對路徑的方式顯示用戶當前工作目錄。命令將當前目錄的全路徑名稱(從根目錄)寫入標準輸出。全部目錄使用/分隔。第一個/表示根目錄,最后一個目錄是當前目錄。執行pwd命令可立刻得知您目前所在的工作目錄的絕對路徑名稱。
實例:[root@localhost ~]# pwd
/root
mkdir
mkdir命令用來創建目錄。該命令創建由dirname命名的目錄。如果在目錄名的前面沒有加任何路徑名,則在當前目錄下創建由dirname指定的目錄;如果給出了一個已經存在的路徑,將會在該目錄下創建一個指定的目錄。在創建目錄時,應保證新建的目錄與它所在目錄下的文件沒有重名。
語法:mkdir(選項)(參數)
選項:-m<目標屬性>或–mode<目標屬性>建立目錄的同時設置目錄的權限;
-p或–parents 若所要建立目錄的上層目錄目前尚未建立,則會一并建立上層目錄;
–version 顯示版本信息。
實例:在當前目錄中建立bin和bin下的os_1目錄,權限設置為文件主可讀、寫、執行,同組用戶可讀和執行,其他用戶無權訪問
mkdir -p-m 750 bin/os_1
rmdir
rmdir命令用來刪除空目錄。當目錄不再被使用時,或者磁盤空間已到達使用限定值,就需要刪除失去使用價值的目錄。利用rmdir命令可以從一個目錄中刪除一個或多個空的子目錄。該命令從一個目錄中刪除一個或多個子目錄,其中dirname佬表示目錄名。如果dirname中沒有指定路徑,則刪除當前目錄下由dirname指定的目錄;如dirname中包含路徑,則刪除指定位置的目錄。刪除目錄時,必須具有對其父目錄的寫權限。
選項:-p或–parents:刪除指定目錄后,若該目錄的上層目錄已變成空目錄,則將其一并刪除;
-v或-verboes:顯示命令的詳細執行過程
實例: 刪除子目錄os_1和其父目錄bin
rmdir -p bin/os_1
ls
ls命令用來顯示目標列表,在Linux中是使用率較高的命令。ls命令的輸出信息可以進行彩色加亮顯示,以分區不同類型的文件。
選項:-a:全部的文件,連同隱藏文件(開頭為.的文件)一起列出來(常用)
-d:僅列出目錄本身,而不是列出目錄內的文件數據(常用)
-F:根據文件、目錄等信息基于附加數據結構
-h:將文件容量以人類較易讀懂的方式列出來
-l:列出長數據串,包含文件的屬性與權限等數據(常用)
-r:將排序結果防線輸出
實例:顯示當前目錄下包括影藏文件在內的所有文件列表
[root@localhost ~]# ls -a
. anaconda-ks.cfg .bash_logout .bashrc install.log .mysql_history satools .tcshrc .vimrc
.. .bash_history .bash_profile .cshrc install.log.syslog .rnd .ssh .viminfo
列出文件和文件夾的詳細信息
[root@localhost /]# ls –l
total 254 drwxr-xr-x 2 root root 4096 Jun 12 04:03 bin
drwxr-xr-x 4 root root 1024 Jun 15 14:45 boot
drwxr-xr-x 6 root root 4096 Jun 12 10:26 data
drwxr-xr-x 10 root root 3520 Sep 26 15:38 dev
drwxr-xr-x 75 root root 4096 Oct 16 04:02 etc
drwxr-xr-x 4 root root 4096 Jun 12 10:26 home
drwxr-xr-x 14 root root 12288 Jun 16 04:02 lib
cp
cp命令用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄。它可以將單個源文件復制成一個指定文件名的具體的文件或一個已經存在的目錄下。cp命令還支持同時復制多個文件,當一次復制多個文件時,目標文件參數必須是一個已經存在的目錄,否則將出現錯誤。
選項:-d:若源文件為鏈接文件的屬性,則復制鏈接文件屬性而非文件本身
-f :若目標文件已存在且無法開啟,則刪除后再嘗試一次
-i:若目標文件已經存在時,在覆蓋時會先詢問操作的進行
-l:進行硬鏈接的鏈接文件創建,而非復制文件本身
-r:遞歸持續復制,用于目錄的復制行為
實例:將目錄/usr/men下的所有文件及其子目錄復制到目錄/usr/zh中
cp -r /usr/men /usr/zh
將文件file復制到目錄/usr/men/tmp下,并改名為file1
cp file /usr/men/tmp/file1
rm
rm命令可以刪除一個目錄中的一個或多個文件或目錄,也可以將某個目錄及其下屬的所有文件及其子目錄均刪除掉。對于鏈接文件,只是刪除整個鏈接文件,而原有文件保持不變。
選項:-d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄;
-f:強制刪除文件或目錄;
-i:刪除已有文件或目錄之前先詢問用戶;
-r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一并處理;
–preserve-root:不對根目錄進行遞歸操作;
-v:顯示指令的詳細執行過程。
實例:交互式刪除當前目錄下的文件test和example
rm -i test example
Remove test ?n(不刪除文件test)
Remove example ?y(刪除文件example)
mv
mv命令用來對文件或目錄重新命名,或者將文件從一個目錄移到另一個目錄中。source表示源文件或目錄,target表示目標文件或目錄。如果將一個文件移到一個已經存在的目標文件中,則目標文件的內容將被覆蓋。
選項:-b:當文件存在時,覆蓋前,為其創建一個備份;
-f:若目標文件或目錄與現有的文件或目錄重復,則直接覆蓋現有的文件或目錄;
-i:交互式操作,覆蓋前先行詢問用戶,如果源文件與目標文件或目標目錄中的文件同名,則詢問用戶是否覆蓋目標文件。
實例:將文件ex3改名為new1
mv ex3 new1
- bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示
事先創建一個1目錄,輸入ls指令顯示1下的文件
返回0值,表明指令成功。
輸入ls指令顯示并不存在的3下的文件
沒有找到3文件或目錄,輸入echo $?返回2,表明指令失敗
- 請使用命令展開功能來完成以下練習
- 創建/tem目錄下的:a_c,a_d,b_c,b_d
- 創建/tmp/mylinux目錄下的:
mylinux/
├── bin
├── boot
│?? └── grub
├── dev
├── etc
│?? ├── rc.d
│?? │?? └── init.d
│?? └── sysconfig
│?????? └── network-scripts
├── lib
│?? └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│?? └── local
│?????? ├── bin
│?????? └── sbin
└── var
├── lock
├── log
└── run
(1)
(2)
- 文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息
輸入stat命令查詢文件元信息
其中:File:文件名
Size:大小???????????? Blocks:塊????????????? IO Block:IO塊??????? 文件類型
Device:設備
Access:權限
Context:環境
Access:最近訪問時間(A time)
Modify:最近更改時間(M time)
Change:最近改動時間(C time)
時間戳通過touch命令改變。
touch – change file timestamps
實例:touch /root/anaconda-ks.cfg
選項:-c:指定文件路徑不存在是不予以創建
-a:僅修改access time
-m:僅修改modify time
-t:STAMP
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/87615
思路清晰,排版不好。