Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示(待補全)

目錄管理類命令:


cd,, lsmkdir, rmdir, tree

 

cd

cd命令用來切換工作目錄至dirname其中dirName表示法可爲絕對路徑或相對路徑。

命令格式:cd [目錄名]

命令選項:

-p 如果要切換到的目標目錄是一個符號連接,直接切換到符號連接指向的目標目錄

-L 如果要切換的目標目錄是一個符號的連接,直接切換到字符連接名代表的目錄,而非符號連接所指向的目標目錄。

- 當僅實用"-"一個選項時,當前工作目錄將被切換到環境變量"OLDPWD"所表示的目錄。

常用格式:

cd 進入用戶主目錄;

cd ~ 進入用戶主目錄;

cd - 返回進入此目錄之前所在的目錄;

cd .. 返回上級目錄(若當前目錄爲“/“,則執行完後還在“/"".."爲上級目錄的意思);

cd ../.. 返回上兩級目錄; cd !$ 把上個命令的參數作爲cd參數使用

 

示例:

 

使用cd命令進入/opt/rh 目錄

[root@localhost opt]# cd /opt/rh

[root@localhost rh]# pwd

/opt/rh

 

使用cd ..返回上級目錄

[root@localhost rh]# pwd

/opt/rh

[root@localhost rh]# cd ..

[root@localhost opt]# pwd

/opt

 

使用cd ../..返回上兩級目錄

[root@localhost rh]# pwd

/opt/rh

[root@localhost rh]# cd ../..

[root@localhost /]# pwd

/

 

ls

ls命令是linux下最常用的命令。ls命令就是list的縮寫,缺省下ls用來打印出當前目錄的清單,如果ls指定其他目錄,那麼就會顯示指定目錄裏的文件及文件夾清單。

通過ls 命令不僅可以查看linux文件夾包含的文件而且可以查看文件權限(包括目錄、文件夾、文件權限)查看目錄信息等等。

命令格式:ls [選項] [目錄名]

命令選項:

-a, all 列出目錄下的所有文件,包括以 . 開頭的隱含文件

-A -a,但不列出“.”(表示當前目錄)“..”(表示當前目錄的父目錄)

-c  配合 -lt:根據 ctime 排序及顯示 ctime (文件狀態最後更改的時間)配合

-l:顯示 ctime 但根據名稱排序否則:根據 ctime 排序

-C 每欄由上至下列出項目

–color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是'never''always''auto'其中之一

-d, –directory 將目錄象文件一樣顯示,而不是顯示其下的文件。

-D, –dired 產生適合 Emacs  dired 模式使用的結果

-f 對輸出的文件不進行排序,-aU 選項生效,-lst 選項失效

-g 類似 -l,但不列出所有者

-G, –no-group 不列出任何有關組的信息

-h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)

–si 類似 -h,但文件大小取 1000 的次方而不是 1024

-H, –dereference-command-line 使用命令列中的符號鏈接指示的真正目的地

–indicator-style=方式 指定在每個項目名稱後加上指示符號<方式>none (默認)classify (-F)file-type (-p)

-i, –inode 印出每個文件的 inode 

-I, –ignore=樣式 不印出任何符合 shell 萬用字符<樣式>的項目

-k  –block-size=1K, k 字節的形式表示文件的大小。

-l 除了文件名之外,還將文件的權限、所有者、文件大小等信息詳細列出來。

-L, –dereference 當顯示符號鏈接的文件信息時,顯示符號鏈接所指示的對象而並非符號鏈接本身的信息

-m 所有項目以逗號分隔,並填滿整行行寬

-o 類似 -l,顯示文件的除組信息外的詳細信息。

-r, –reverse 依相反次序排列

-R, –recursive 同時列出所有子目錄層

-s, –size 以塊大小爲單位列出所有文件的大小

-S 根據文件大小排序

–sort=WORD 以下是可選用的 WORD 和它們代表的相應選項:

extension -X status -c

none -U time -t

size -S atime -u

time -t access -u

version -v use -u

-t 以文件修改時間排序

-u 配合 -lt:顯示訪問時間而且依訪問時間排序

配合 -l:顯示訪問時間但根據名稱排序

否則:根據訪問時間排序

-U 不進行排序;依文件系統原有的次序列出項目

-v 根據版本進行排序

-w, –width=COLS 自行指定屏幕寬度而不使用目前的數值

-x 逐行列出項目而不是逐欄列出

-X 根據擴展名排序

-1 每行只列出一個文件

–help 顯示此幫助信息並離開

–version 顯示版本信息並離開

 

命令參數:目錄:指定要顯示列表的目錄,也可以是具體的文件。


示例:

顯示當前目錄下非影藏文件與目錄

[root@localhost /]# cd /boot

[root@localhost boot]# ls

config-3.10.0-327.el7.x86_64

grub

grub2

initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img

initramfs-3.10.0-327.el7.x86_64.img

initramfs-3.10.0-327.el7.x86_64kdump.img

initrd-plymouth.img

symvers-3.10.0-327.el7.x86_64.gz

System.map-3.10.0-327.el7.x86_64

vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5

vmlinuz-3.10.0-327.el7.x86_64


顯示當前目錄下包括影藏文件在內的所有文件列表

[root@localhost boot]# ls -a

.

..

config-3.10.0-327.el7.x86_64

grub

grub2

initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img

initramfs-3.10.0-327.el7.x86_64.img

initramfs-3.10.0-327.el7.x86_64kdump.img

initrd-plymouth.img

symvers-3.10.0-327.el7.x86_64.gz

System.map-3.10.0-327.el7.x86_64

vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5

vmlinuz-3.10.0-327.el7.x86_64

.vmlinuz-3.10.0-327.el7.x86_64.hmac

 

輸出長格式列表

[root@localhost boot]# ls -1

config-3.10.0-327.el7.x86_64

grub

grub2

initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img

initramfs-3.10.0-327.el7.x86_64.img

initramfs-3.10.0-327.el7.x86_64kdump.img

initrd-plymouth.img

symvers-3.10.0-327.el7.x86_64.gz

System.map-3.10.0-327.el7.x86_64

vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5

vmlinuz-3.10.0-327.el7.x86_64

 

水平輸出文件列表

[root@localhost boot]# ls -m

config-3.10.0-327.el7.x86_64, grub, grub2,

initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img,

initramfs-3.10.0-327.el7.x86_64.img,initramfs-3.10.0-327.el7.x86_64kdump.img,

initrd-plymouth.img, symvers-3.10.0-327.el7.x86_64.gz,System.map-3.10.0-327.el7.x86_64,

vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5,vmlinuz-3.10.0-327.el7.x86_64

 

列出文件和文件夾的詳細信息

[root@localhost boot]# ls -l

總用量 94804

-rw-r--r--. 1 root root  126426 11 202015 config-3.10.0-327.el7.x86_64

drwxr-xr-x. 2 root root      26 12 1000:21 grub

drwx------. 6 root root     104 12 1000:24 grub2

-rw-r--r--. 1 root root 45390555 12 10 00:23initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img

-rw-------. 1 root root 19744484 12 10 00:24initramfs-3.10.0-327.el7.x86_64.img

-rw-------. 1 root root 17671172 12 10 00:26initramfs-3.10.0-327.el7.x86_64kdump.img

-rw-r--r--. 1 root root  602601 12 1000:22 initrd-plymouth.img

-rw-r--r--. 1 root root  252612 11 202015 symvers-3.10.0-327.el7.x86_64.gz

-rw-------. 1 root root 2963044 11 202015 System.map-3.10.0-327.el7.x86_64

-rwxr-xr-x. 1 root root 5156528 12 1000:24 vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5

-rwxr-xr-x. 1 root root 5156528 11 202015 vmlinuz-3.10.0-327.el7.x86_64

[root@localhost boot]#

 

按時間列出文件和文件夾詳細信息

[root@localhost boot]# ls -lt

總用量 94804

-rw-------. 1 root root 17671172 12 10 00:26initramfs-3.10.0-327.el7.x86_64kdump.img

drwx------. 6 root root     104 12 1000:24 grub2

-rw-------. 1 root root 19744484 12 10 00:24initramfs-3.10.0-327.el7.x86_64.img

-rwxr-xr-x. 1 root root 5156528 12 1000:24 vmlinuz-0-rescue-80b038a43aa0449c844ba01e218186d5

-rw-r--r--. 1 root root 45390555 12 10 00:23initramfs-0-rescue-80b038a43aa0449c844ba01e218186d5.img

-rw-r--r--. 1 root root  602601 12 1000:22 initrd-plymouth.img

drwxr-xr-x. 2 root root      26 12 1000:21 grub

-rw-r--r--. 1 root root  252612 11 202015 symvers-3.10.0-327.el7.x86_64.gz

-rwxr-xr-x. 1 root root 5156528 11 202015 vmlinuz-3.10.0-327.el7.x86_64

-rw-r--r--. 1 root root  126426 11 202015 config-3.10.0-327.el7.x86_64

-rw-------. 1 root root 2963044 11 202015 System.map-3.10.0-327.el7.x86_64

[root@localhost boot]#

 

顯示文件夾信息

[root@localhost boot]# ls -ld /root

dr-xr-x---. 14 root root 4096 12 11 17:14 /root

 

mkdir

mkdir 命令用來創建指定的名稱的目錄,要求創建目錄的用戶在當前目錄中具有寫權限,並且指定的目錄名不能是當前目錄中已有的目錄。

命令格式:mkdir [選項目錄...

命令選項:

-Z:設置安全上下文,當使用SELinux時有效;

-m<目標屬性>--mode<目標屬性>建立目錄的同時設置目錄的權限;

-p--parents若所要建立目錄的上層目錄目前尚未建立,則會一併建立上層目錄;

--version 顯示版本信息。

命令參數:目錄:指定要創建的目錄列表,多個目錄之間用空格隔開。

示例:

 

創建/tmp目錄下的:a_c, a_d, b_c, b_d

[root@localhost tmp]# mkdir -v {a,b}_{c,d}

mkdir: 已創建目錄 "a_c"

mkdir: 已創建目錄 "a_d"

mkdir: 已創建目錄 "b_c"

mkdir: 已創建目錄 "b_d"

(2)、創建/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

 

[root@localhost tmp]# mkdir -vpmylinux/{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,lock,log,run}

mkdir: 已創建目錄 "mylinux/bin"

mkdir: 已創建目錄 "mylinux/boot"

mkdir: 已創建目錄 "mylinux/boot/grub"

mkdir: 已創建目錄 "mylinux/dev"

mkdir: 已創建目錄 "mylinux/etc"

mkdir: 已創建目錄 "mylinux/etc/rc.d"

mkdir: 已創建目錄 "mylinux/etc/rc.d/init.d"

mkdir: 已創建目錄 "mylinux/etc/sysconfig"

mkdir: 已創建目錄 "mylinux/etc/sysconfig/network-scripts"

mkdir: 已創建目錄 "mylinux/lib"

mkdir: 已創建目錄 "mylinux/lib/modules"

mkdir: 已創建目錄 "mylinux/lib64"

mkdir: 已創建目錄 "mylinux/proc"

mkdir: 已創建目錄 "mylinux/sbin"

mkdir: 已創建目錄 "mylinux/sys"

mkdir: 已創建目錄 "mylinux/tmp"

mkdir: 已創建目錄 "mylinux/usr"

mkdir: 已創建目錄 "mylinux/usr/localbin"

mkdir: 已創建目錄 "mylinux/usr/localsbin"

mkdir: 已創建目錄 "mylinux/var"

mkdir: 已創建目錄 "mylinux/lock"

mkdir: 已創建目錄 "mylinux/log"

mkdir: 已創建目錄 "mylinux/run"

[root@localhost tmp]# tree mylinux/

mylinux/

├── bin

├── boot

  └── grub

├── dev

├── etc

  ├── rc.d

     └── init.d

  └── sysconfig

       └── network-scripts

├── lib

  └── modules

├── lib64

├── lock

├── log

├── proc

├── run

├── sbin

├── sys

├── tmp

├── usr

  ├── localbin

  └── localsbin

└── var

 

23 directories, 0 files

 

rmdir

rmdir命令用來刪除空目錄。當目錄不再被使用時,或者磁盤空間已到達使用限定值,就需要刪除失去使用價值的目錄。注意:子目錄被刪除之前應該是空目錄。就是說,該目錄中的所有文件必須用rm命令全部,另外,當前工作目錄必須在被刪除目錄之上,不能是被刪除目錄本身,也不能是被刪除目錄的子目錄。

命令格式:rmdir [選項]... 目錄..

命令選項:

-p--parents:刪除指定目錄後,若該目錄的上層目錄已變成空目錄,則將其一併刪除;

--ignore-fail-on-non-empty:此選項使rmdir命令忽略由於刪除非空目錄時導致的錯誤信息;

-v-verboes:顯示命令的詳細執行過程;

--help:顯示命令的幫助信息;

--version:顯示命令的版本信息。

命令參數:

目錄列表:要刪除的空目錄列表。當刪除多個空目錄時,目錄名之間使用空格隔開。

 

示例:

刪除test2下的子目錄test3

[root@localhost tmp]# tree test2/

test2/

└── test3

 

1 directory, 0 files

[root@localhost tmp]# cd test2

[root@localhost test2]# rmdir test3

[root@localhost test2]# cd ..

[root@localhost tmp]# tree test2

test2

 

0 directories, 0 files

刪除子目錄test2和其父目錄test1

[root@localhost tmp]# tree test/

test/

└── test1

    └── test2

 

2 directories, 0 files

[root@localhost tmp]# cd test

[root@localhost test]# rmdir -p test1/test2

 [root@localhost test]# cd..

[root@localhost tmp]# tree test/

test/

 

0 directories, 0 files

 

tree

tree命令以樹狀圖列出目錄的內容。

命令格式:

tree[選項]... 目錄

命令選項:

-a:顯示所有文件和目錄;

-A:使用ASNI繪圖字符顯示樹狀圖而非以ASCII字符組合;

-C:在文件和目錄清單加上色彩,便於區分各種類型;

-d:先是目錄名稱而非內容;

-D:列出文件或目錄的更改時間;

-f:在每個文件或目錄之前,顯示完整的相對路徑名稱;

-F:在執行文件,目錄,Socket,符號連接,管道名稱名稱,各自加上"*""/""@""|"號;

-g:列出文件或目錄的所屬羣組名稱,沒有對應的名稱時,則顯示羣組識別碼;

-i:不以階梯狀列出文件和目錄名稱;

-l<範本樣式> 不顯示符號範本樣式的文件或目錄名稱;

-l:如遇到性質爲符號連接的目錄,直接列出該連接所指向的原始目錄;

-n:不在文件和目錄清單加上色彩;

-N:直接列出文件和目錄名稱,包括控制字符;

-p:列出權限標示;

-P<範本樣式> 只顯示符合範本樣式的文件和目錄名稱;

-q:用號取代控制字符,列出文件和目錄名稱;

-s:列出文件和目錄大小;

-t:用文件和目錄的更改時間排序;

-u:列出文件或目錄的擁有者名稱,沒有對應的名稱時,則顯示用戶識別碼;

-x:將範圍侷限在現行的文件系統中,若指定目錄下的某些子目錄,其存放於另一個文件系統上,則將該目錄予以排除在尋找範圍外。

 

命令參數:

目錄:執行tree指令,它會列出指定目錄下的所有文件,包括子目錄裏的文件。

 

示例:

查看mylinux目錄下的所有文件

 

[root@localhost tmp]# tree mylinux/

mylinux/

├── bin

├── boot

  └── grub

├── dev

├── etc

  ├── rc.d

     └── init.d

  └── sysconfig

       └── network-scripts

├── lib

  └── modules

├── lib64

├── lock

├── log

├── proc

├── run

├── sbin

├── sys

├── tmp

├── usr

  ├── localbin

  └── localsbin

└── var

 

23 directories, 0 files



備註:如果系統中沒有安裝tree命令,可以通過yum在線安裝tree包,
命令:# yum install tree -y

 

文本文件查看類命令:


cat, tacmore, less, tail,head

cat

命令格式:cat [選項] [文件]...

命令選項:

-n-number:有1開始對所有輸出的行數編號;

-b--number-nonblank:和-n相似,只不過對於空白行不編號;

-s--squeeze-blank:當遇到有連續兩行以上的空白行,就代換爲一行的空白行;

-A:顯示不可打印字符,行尾顯示“$”

-e:等價於"-vE"選項;

-t:等價於"-vT"選項;

命令參數:

文件列表:指定要連接的文件列表。

 

tac (反向列示)

tac 是將cat反寫過來,所以他的功能就跟cat相反,cat是由第一行到最後一行連續顯示在螢幕上,而tac則是由最後一行到第一行反向在螢幕上顯示出來!

命令格式:tac [選項] [文件]...

命令選項:

-a——append:將內容追加到文件的末尾;

-i——ignore-interrupts:忽略中斷信號。

命令參數:

文件列表:指定要保存內容的文件列表。

 

more

命令格式:more [選項] [文件]...

命令選項:

-<數字>:指定每屏顯示的行數;

-d:顯示“[pressspace to continue,'q' to quit.]”“[Press 'h' for instructions]”

-c:不進行滾屏操作。每次刷新這個屏幕;

-s:將多個空行壓縮成一行顯示;

-u:禁止下劃線;

+<數字>:從指定數字的行開始顯示。

命令參數:

文件:指定分頁顯示內容的文件。

 

less

less命令的作用與more十分相似,都可以用來瀏覽文字檔案的內容,不同的是less命令允許用戶向前或向後瀏覽文件,而more命令只能向前瀏覽。用less命令顯示文件時,用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程序,應按Q鍵。

命令格式:less [選項] [文件]...

命令選項:

-e:文件內容顯示完畢後,自動退出;

-f:強制顯示文件;

-g:不加亮顯示搜索到的所有關鍵詞,僅顯示當前顯示的關鍵字,以提高顯示速度;

-l:搜索時忽略大小寫的差異;

-N:每一行行首顯示行號;

-s:將連續多個空行壓縮成一行顯示;

-S:在單行顯示較長的內容,而不換行顯示;

-x<數字>:將TAB字符顯示爲指定個數的空格字符。

 

命令參數:

文件:指定要分屏顯示內容的文件。

 

tail

用於輸入文件中的尾部內容。tail命令默認在屏幕上顯示指定文件的末尾10行。如果給定的文件不止一個,則在顯示的每個文件前面加一個文件名標題。如果沒有指定文件或者文件名爲“-”,則讀取標準輸入。

注意:如果表示字節或行數的N值之前有一個”+”號,則從文件開頭的第N項開始顯示,而不是顯示文件的最後N項。N值後面可以有後綴:b表示512k表示1024m表示1048576(1M)

命令格式:tail[選項] [文件]...

命令選項:

--retry:即是在tail命令啓動時,文件不可訪問或者文件稍後變得不可訪問,都始終嘗試打開文件。使用此選項時需要與選項“——follow=name”連用;

-c——bytes=:輸出文件尾部的NN爲整數)個字節內容;

-f或;--follow:顯示文件最新追加的內容。“name”表示以文件名的方式監視文件的變化。“-f”“-fdescriptor”等效; -F:與選項“-follow=name”“--retry"連用時功能相同;

-n——line=:輸出文件的尾部NN位數字)行內容。

--pid=<進程號>:與“-f”選項連用,當指定的進程號的進程終止後,自動退出tail命令;

-q——quiet——silent:當有多個文件參數時,不輸出各個文件名;

-s<秒數>——sleep-interal=<秒數>:與“-f”選項連用,指定監視文件變化時間隔的秒數;

-v——verbose:當有多個文件參數時,總是輸出各個文件名;

--help:顯示指令的幫助信息;

--version:顯示指令的版本信息。

命令參數:

文件列表:指定要顯示尾部內容的文件列表。

 

 

head

head命令用於顯示文件的開頭的內容。在默認情況下,head命令顯示文件的頭10行內容。

命令格式:head[選項] [文件]...

命令選項:

-n<數字>:指定顯示頭部內容的行數;

-c<字符數>:指定顯示頭部內容的字符數;

-v:總是顯示文件名的頭信息;

-q:不顯示文件名的頭信息。

 

命令參數:

文件列表:指定顯示頭部內容的文件列表。

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章