1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
文件管理類命令:pwd,cd,ls,mkdir,rmdir,tree
1、目錄相關命令:pwd,cd
(1)查看用戶當前工作目錄:pwd
例:
[root@zabbix ~]# pwd #COMMAND 回車
/root #顯示出當前工作的目錄
(2)cd用法
cd 或者cd ~:回當前用戶的主目錄
例: [root@zabbix ~]# cd /home/ #進入home目錄 [root@zabbix home]# cd ~ #cd ~回當前用戶的主目錄 [root@zabbix ~]# pwd #顯示當前用戶工作主目錄命令 /root
cd ~USERNAME :切換至指定用戶的主目錄
例: [root@zabbix ~]# useradd zabbix #添加一個新用戶 [root@zabbix ~]# su zabbix #切換至指定用戶 [zabbix@zabbix root]$ pwd #顯示當前用戶工作主目錄命令 /root #雖然是/root但是普通用戶無法在/root下讀寫,只能切換至/home/USERNAME目錄下。
cd -:在上一個目錄和當前目錄之間來回切換
例: [root@zabbix ~]# cd /home/ #切換至指定用戶 [root@zabbix home]# cd - #切換到上一個目錄 /root [root@zabbix ~]# cd - #切換到上一個目錄 /home
.:當前目錄
例: [root@zabbix home]# pwd #顯示出當前工作的目錄 /home [root@zabbix home]# cd . #切換當前目錄 [root@zabbix home]# pwd #顯示出當前工作的目錄 /home
..:上一個目錄
例: [root@zabbix ~]# cd /etc/yum.repos.d/ #切換至/etc/yum.repos.d/目錄 [root@zabbix yum.repos.d]# pwd #顯示當前工作目錄 /etc/yum.repos.d [root@zabbix yum.repos.d]# cd .. #切換到上一個目錄 [root@zabbix etc]# pwd #顯示當前工作目錄 /etc
2、ls:list 顯示指定路徑下的文件列表
用法:ls [OPTION]… [DIR]…
-a ,all :顯示所有文件,包括隱藏文件
例:
[root@zabbix ~]# ls -a #不加任何路徑顯示當前目錄下的所有文件,包括隱藏文件(點開頭的文件為隱藏文件) . .esd_auth install.log .Xauthority .. .gconf install.log.syslog .abrt .gconfd .local anaconda-ks.cfg .gnome2 .mozilla .bash_history .gnome2_private .mysql_history .bash_logout .gnote .nautilus .bash_profile .gnupg .pulse .bashrc .gstreamer-0.10 .pulse-cookie .cache .gtk-bookmarks .ssh .config .gvfs .tcshrc .cshrc .ICEauthority .viminfo .dbus .imsettings.log .vnc
-l:長格式,
[root@zabbix ~]# ls -l #顯示長格式的文件,包 例: 總用量 100 -rw-------. 1 root root 1452 6月 21 14:01 anaconda-ks.cfg -rw-r--r--. 1 root root 46478 6月 21 14:01 install.log -rw-r--r--. 1 root root 10033 6月 21 13:57 install.log.syslog
-h –humman-readable:單位換算
例: [root@zabbix ~]# ls -lh #可看到單位轉換 總用量 100K -rw-------. 1 root root 1.5K 6月 21 14:01 anaconda-ks.cfg -rw-r--r--. 1 root root 46K 6月 21 14:01 install.log -rw-r--r--. 1 root root 9.8K 6月 21 13:57 install.log.syslog
-d: 顯示目錄自身的相關屬性;通常是與-l一起使用
例: [root@zabbix ~]# ls -d . [root@zabbix ~]# ls -ld #顯示/root目錄本身情況 dr-xr-x---. 28 root root 4096 6月 27 10:09 .
-r,–reverse:逆序顯示
例: [root@zabbix ~]# ls -l #正常排序 總用量 100 -rw-------. 1 root root 1452 6月 21 14:01 anaconda-ks.cfg -rw-r--r--. 1 root root 46478 6月 21 14:01 install.log -rw-r--r--. 1 root root 10033 6月 21 13:57 install.log.syslog [root@zabbix ~]# ls -lr #逆排序 總用量 100 -rw-r--r--. 1 root root 10033 6月 21 13:57 install.log.syslog -rw-r--r--. 1 root root 46478 6月 21 14:01 install.log -rw-------. 1 root root 1452 6月 21 14:01 anaconda-ks.cfg
-R,–recursive :遞歸
例: [root@zabbix ~]# ls -lR /home/ #顯示遞歸 /home/: 總用量 4 drwx------. 4 zabbix zabbix 4096 6月 27 09:57 zabbix /home/zabbix: 總用量 0
3、mkdir 創建文件夾
用法:mkdir [OPTION]… DIRECTORY…
-p, –parents 如果已存在文件夾不會報錯,且如果已存在相同文件夾名則不會作任何提示
例: [root@zabbix ~]# mkdir /tmp/test #沒有帶參數建立一個文件夾 [root@zabbix ~]# mkdir /tmp/test #沒有帶參數重新建立一個相同文件夾 mkdir: 無法創建目錄"/tmp/test": 文件已存在 #報錯誤 [root@zabbix ~]# mkdir -p /tmp/test #無報錯
-v, –verbose 顯示創建時消息
例: [root@zabbix ~]# mkdir -v /tmp/test2 #創建test2加-v會出現創建消息 mkdir: 已創建目錄 "/tmp/test2"
花括號展開命令:
例: [root@zabbix ~]# mkdir -p -v /tmp/{x,y}_{a,b}#使用花括號創建文件目錄 mkdir: 已創建目錄 "/tmp/x_a" mkdir: 已創建目錄 "/tmp/x_b" mkdir: 已創建目錄 "/tmp/y_a" mkdir: 已創建目錄 "/tmp/y_b"
4、rmdir 移除文件命令 (只能刪除空的文件夾,如有文件無法刪除)
rmdir [OPTION]… DIRECTORY…
-v –verbose,顯示刪除時信息
例: [root@zabbix ~]# rmdir -v /tmp/test2 #刪除一個空的文件夾 rmdir: 正在刪除目錄 "/tmp/test2"
-p, –parents 移除空的文件夾(非空目錄無法刪除)
例: [root@zabbix ~]# ll /tmp/ #顯示/tmp下所有目錄 總用量 32 drwxr-xr-x. 2 root root 4096 6月 27 15:45 x_a drwxr-xr-x. 2 root root 4096 6月 27 15:32 x_a.txt drwxr-xr-x. 2 root root 4096 6月 27 15:45 x_b drwxr-xr-x. 2 root root 4096 6月 27 15:32 x_b.txt drwxr-xr-x. 2 root root 4096 6月 27 15:45 y_a drwxr-xr-x. 2 root root 4096 6月 27 15:32 y_a.txt drwxr-xr-x. 2 root root 4096 6月 27 15:45 y_b drwxr-xr-x. 2 root root 4096 6月 27 15:32 y_b.txt [root@zabbix ~]# rmdir -p -v /tmp/{x,y}_{a,b} #刪除/tmp下花括號展開的空目錄 rmdir: 正在刪除目錄 "/tmp/x_a" rmdir: 正在刪除目錄 "/tmp" rmdir: 刪除目錄 "/tmp" 失敗: 目錄非空 rmdir: 正在刪除目錄 "/tmp/x_b" rmdir: 正在刪除目錄 "/tmp" rmdir: 刪除目錄 "/tmp" 失敗: 目錄非空 rmdir: 正在刪除目錄 "/tmp/y_a" rmdir: 正在刪除目錄 "/tmp" rmdir: 刪除目錄 "/tmp" 失敗: 目錄非空 rmdir: 正在刪除目錄 "/tmp/y_b" rmdir: 正在刪除目錄 "/tmp" rmdir: 刪除目錄 "/tmp" 失敗: 目錄非空
5、tree:顯示樹狀格式目錄的內容
用法:tree [option]…[directory …]
-d:只顯示目錄
例: [root@zabbix ~]# mkdir -p /tmp/test/test1 #在/tmp下創建兩個目錄 [root@zabbix ~]# cp /etc/fstab /tmp/test/test1/ #復制/etc/fstab文件到/tmp/test/test1/下 [root@zabbix ~]# tree /tmp/ #沒有帶數時顯示/tmp下所有目錄和文件 /tmp/ └── test └── test1 └── fstab 2 directories, 1 file [root@zabbix ~]# tree -d /tmp/ #帶參數-d則顯示test,test1兩個目錄 /tmp/ └── test └── test1 2 directories
-L level 指定顯示的層級數目
例: [root@zabbix ~]# tree -L 2 /tmp/ #指定顯示第二層的目錄和文件 [root@zabbix ~]# tree -L 2 /tmp/ /tmp/ └── test ├── fstab ├── passwd └── test1 2 directories, 2 files
-P pattern 只顯示由指定pattern匹配到的路徑;
例:
[root@zabbix ~]# tree -P /tmp . ├── \345\205\254\345\205\261\347\232\204 ├── \346\250\241\346\235\277 ├── \350\247\206\351\242\221 ├── \345\233\276\347\211\207 ├── \346\226\207\346\241\243 ├── \344\270\213\350\275\275 ├── \351\237\263\344\271\220 └── \346\241\214\351\235\242 8 directories, 0 files
6、文件管理命令:cat,tac,more,less,tail,head
(1)cat:顯示連續的文件內容
cat [OPTION]… [FILE]…
例: [root@zabbix ~]# cat /tmp/test/fstab # # /etc/fstab # Created by anaconda on Tue Jun 21 13:40:50 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
-E:顯示行結束符$
例: [root@zabbix ~]# cat -E /tmp/test/fstab $ #$ # /etc/fstab$ # Created by anaconda on Tue Jun 21 13:40:50 2016$ #$ # Accessible filesystems, by reference, are maintained under '/dev/disk'$ # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info$ #$ UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1$ UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2$ UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0$ tmpfs /dev/shm tmpfs defaults 0 0$ devpts /dev/pts devpts gid=5,mode=620 0 0$ sysfs /sys sysfs defaults 0 0$ proc /proc proc defaults 0 0$
-n:對顯示出的每一行進行編號
例: [root@zabbix ~]# cat -n /tmp/test/fstab 1 2 # 3 # /etc/fstab 4 # Created by anaconda on Tue Jun 21 13:40:50 2016 5 # 6 # Accessible filesystems, by reference, are maintained under '/dev/disk' 7 # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info 8 # 9 UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 10 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 11 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 12 tmpfs /dev/shm tmpfs defaults 0 0 13 devpts /dev/pts devpts gid=5,mode=620 0 0 14 sysfs /sys sysfs defaults 0 0 15 proc /proc proc defaults 0 0
(2)tac 從文件尾部行向首行讀取內容
例: [root@zabbix ~]# tac /tmp/test/fstab proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 tmpfs /dev/shm tmpfs defaults 0 0 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 # # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # Accessible filesystems, by reference, are maintained under '/dev/disk' # # Created by anaconda on Tue Jun 21 13:40:50 2016 # /etc/fstab #
參數同cat用法一樣。
(3)more: 從首部向尾部查看文件內容
用法:more [OPTION] FILE…
-d:顯示翻頁及退出提示
(4)less:多次的more從首部向尾部查看文件內容
用法:less [OPTIONS…] FILE…
(5)head:從文件首部行向尾部行讀取內容
用法:head [OPTION]… [FILE]…
-c #:指定獲取前#字節
例: [root@zabbix ~]# head -c 100 /tmp/test/fstab # # /etc/fstab # Created by anaconda on Tue Jun 21 13:40:50 2016 # # Accessible filesystems, by ref[root@zabbix ~]#
-n #:指定獲取前#行
例: [root@zabbix ~]# head -n 10 /tmp/test/fstab # # /etc/fstab # Created by anaconda on Tue Jun 21 13:40:50 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2
(6)tail:從文件內容尾部行行尾開始向首部行讀取內容
用法:tail [OPTION]… [FILE]…
-c #:指定獲取后#字節
例: [root@zabbix ~]# cat /tmp/test/fstab # # /etc/fstab # Created by anaconda on Tue Jun 21 13:40:50 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 [root@zabbix ~]# tail -c 10 /tmp/test/fstab 0 0
-n #:指定獲取后#行
例: [root@zabbix ~]# tail -n 10 /tmp/test/fstab # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
-f:跟蹤顯示文件新追加的內容(此例可自己演示)
文件的時間戳管理工具:stat,touch
(1)stat 查看文件目錄或者文件狀態(包括訪問時間,修改時間,改變時間)
用法:stat [OPTION]… FILE…
例 [root@zabbix ~]# stat /tmp/test/fstab #文件 File: "/tmp/test/fstab" Size: 805 Blocks: 8 IO Block: 4096 普通文件 Device: 802h/2050d Inode: 2752519 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-06-29 09:30:52.535140726 +0800 #訪問時間戳 Modify: 2016-06-29 09:30:20.475144278 +0800 #修改時間戳 Change: 2016-06-29 09:30:20.475144278 +0800 #改變時間戳 [root@zabbix ~]# stat /tmp/test/ #目錄 File: "/tmp/test/" Size: 4096 Blocks: 8 IO Block: 4096 目錄 Device: 802h/2050d Inode: 2752515 Links: 3 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-06-29 09:03:51.072146521 +0800 Modify: 2016-06-27 16:04:21.000000000 +0800 Change: 2016-06-29 03:50:04.148174081 +0800
(2)touch 改變時間戳時間
touch [OPTION]… FILE…
-a:only atime #改變訪問時間
-m :only mtime #改變修改時間
-t STAMP: #設置時間點
[[CC]YY]MMDDhhmm[.ss]
-c:如果文件不存在,則不創建
文件管理:cp,mv,rm
(1)cp 復制文件和文件目錄
cp [OPTION]… [-T] SOURCE DEST
cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
cp SRC DEST
SRC是文件
如果目標不存在:新建DEST,并將SRC中內容填充至DEST中:
如果目錄存在
如果DEST 是文件 將SRC中的內容覆蓋至DEST中,此時建議為cp命令使用-i 選項:
如果DEST 是目錄:在DEST下新建與原文件同名的文件,并將SRC中內容填充 至新文件中
cp SRC … DEST
SRC…:多個文件
DEST必須存在,且為目錄,其它情形均會出錯;
cp SRC DEST
SRC 是目錄
此時使用選項 -r
如果DEST不存在:則創建指定目錄,復制SRC目錄中所有文件至DEST中;
如果DEST存在:
如果 DEST是文件:報錯
如果DEST是目錄:
常用選項 :
-i:交互式(覆蓋時會提示)
例:
[root@zabbix ~]# cp /etc/networks /tmp/
[root@zabbix ~]# cp -i /etc/networks /tmp/
cp:是否覆蓋"/tmp/networks"? #會提示文件覆蓋
-r,-R:遞歸復制目錄及內部的所有內容
例: [root@zabbix ~]# cp -r /etc /tmp/ root@zabbix ~]# tree -d /tmp/etc/ /tmp/etc/ ├── abrt │ └── plugins ├── acpi │ ├── actions │ └── events ├── alsa ...
-a:歸檔,相當于-dR,–preserv=all
-d,–no-dereference –preserv=links
–preserv[=ATTR_LIST]
mode:權限
ownershi:屬主屬組
timestamp:
links
xattr
context
all
-p:–preserv=mode,ownership,timestamp
-v:–verbose
例: [root@zabbix ~]# cp -v /etc/fstab /tmp/test2 #顯示復制/etc/fstab變名為/tmp/test2 "/etc/fstab" -> "/tmp/test2"
(2)mv 移動(剪切)文件或目錄
mv [OPTION]… [-T] SOURCE DEST
mv [OPTION]… SOURCE… DIRECTORY
mv [OPTION]… -t DIRECTORY SOURCE…
常用選項:
-i:交互式
-f:強制
例: [root@zabbix ~]# mv -ifv /tmp/test2 /tmp/test3/ "/tmp/test2" -> "/tmp/test3/test2" [root@zabbix ~]# ls -l /tmp/test3/test2 -rw-r--r--. 1 root root 805 6月 29 14:45 /tmp/test3/test2
(3)rm 移除(刪除)文件或目錄
rm [OPTION]… FILE…
常用選項:
-i:交互式
-f:強制刪除
-r:遞歸
例: [root@zabbix ~]# rm -vrf /tmp/test3/* 已刪除"/tmp/test3/yp.conf" 已刪除"/tmp/test3/yum/pluginconf.d/fastestmirror.conf" 已刪除"/tmp/test3/yum/pluginconf.d/security.conf" 已刪除"/tmp/test3/yum/pluginconf.d/refresh-packagekit.conf" 已刪除目錄:"/tmp/test3/yum/pluginconf.d" 已刪除目錄:"/tmp/test3/yum/protected.d" 已刪除"/tmp/test3/yum/vars/infra" 已刪除目錄:"/tmp/test3/yum/vars" 已刪除"/tmp/test3/yum/version-groups.conf" 已刪除目錄:"/tmp/test3/yum" 已刪除"/tmp/test3/yum.conf" 已刪除"/tmp/test3/yum.repos.d/CentOS-Media.repo" 已刪除"/tmp/test3/yum.repos.d/CentOS-Debuginfo.repo" 已刪除"/tmp/test3/yum.repos.d/CentOS-Vault.repo" 已刪除"/tmp/test3/yum.repos.d/CentOS-fasttrack.repo" 已刪除"/tmp/test3/yum.repos.d/CentOS-Base.repo.bak" 已刪除目錄:"/tmp/test3/yum.repos.d" ...
2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
命令的執行結果狀態:成功 或者 失敗
bash使用特殊變量$?保存最近一條命令的執行狀態結果;
0:成功
1-255:失敗
程序執行有兩類結果:程序的返回值 或 程序的執行狀態結果
例1: [root@zabbix ~]# cat /etc/fstab #讀取文件成功 # # /etc/fstab # Created by anaconda on Tue Jun 21 13:40:50 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=909f7903-9d00-4b31-ac57-52756e978e75 / ext4 defaults 1 1 UUID=0efeb056-4b43-40f2-8be1-0135ce8c9544 /boot ext4 defaults 1 2 UUID=fd109fb9-4c5c-44d1-ac75-9ad22dff3c60 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 [root@zabbix ~]# echo $? #顯示執行結果 0 例2: [root@zabbix ~]# cat /etc/fstabss #讀取文件失敗 cat: /etc/fstabss: 沒有那個文件或目錄 [root@zabbix ~]# echo $? #顯示失敗的返回值 1
命令行展開
~:展開為用戶的主目錄
~USERNAME:展開為指定用戶的主目錄
例: [root@zabbix ~]# useradd test [root@zabbix ~]# cd ~test [root@zabbix test]# pwd /home/test
{}:可承載一個以逗號分隔的列表,并將其展開為多個路徑
例: [root@zabbix test]# touch /tmp/{a,b} [root@zabbix test]# ll /tmp/ 總用量 32 -rw-r--r--. 1 root root 0 6月 29 15:08 a -rw-r--r--. 1 root root 0 6月 29 15:08 b drwxr-xr-x. 119 root root 12288 6月 28 03:38 etc -rw-r--r--. 1 root root 58 6月 29 14:38 networks drwxr-xr-x. 3 root root 4096 6月 29 14:36 test drwxr-xr-x. 3 root root 12288 6月 29 14:57 test3
3、請使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
[root@zabbix test]# touch /tmp/{a,b}_{c,d} [root@zabbix test]# ll /tmp/ 總用量 0 -rw-r--r--. 1 root root 0 6月 29 15:09 a_c -rw-r--r--. 1 root root 0 6月 29 15:09 a_d -rw-r--r--. 1 root root 0 6月 29 15:09 b_c -rw-r--r--. 1 root root 0 6月 29 15:09 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@zabbix test]# mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-srcipts},lib/modules,lib64,proc,sbin,sys,tmp,usr/lcoal/{bin,sbin},var/{lock,log,run}} [root@zabbix test]# tree /tmp/mylinux/ /tmp/mylinux/ ├── bin ├── boot │ └── grub ├── dev ├── etc │ ├── rc.d │ │ └── init.d │ └── sysconfig │ └── network-srcipts ├── lib │ └── modules ├── lib64 ├── proc ├── sbin ├── sys ├── tmp ├── usr │ └── lcoal │ ├── bin │ └── sbin └── var ├── lock ├── log └── run
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
File: #文件名稱
Size: #文件大小
Blocks: #文件塊大小
IO Block: 4096 #IO 塊大小
指名是文件或目錄
Device:#設備信息
Inode: #inode號
Links: 鏈接數
Access: 訪問時間戳
Modify:修改時間戳
Change:改變時間戳
使用stat 查看元數據信息,使用touch修改文件時間戳
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
命令別名(alias)
通過alias命令實現: (1)alias 顯示當前shell進程所有可用的命令別名; (2)alias NAME='VALUE' 定義別名NAME,其相當于執行命令VALUE; 注意:在命令行中定義的別名,僅對當前shell進程有產;如果想永久有效,需要配置文件 僅對當前用戶有效:~/.bashrc 對所有用戶有效:/etc/bashrc Note:編輯配置給出的新配置不會立即生效; bash進程重新讀取配置文件: source /path/to/config_file . /path/to/config_file 撤消別名:unalias unalias [-a] name [name ...] Note:如果別名同原命令的名稱,則如果要執行原命令,可使用"\COMMAND"
通過管道命令引用另一個命令的執行結果
COMMAND1 | COMMAND2 | COMMAND3 …
例: [root@zabbix ~]# cat /etc/passwd | head -n 10 #讀取文件中/etc/passwd 后顯示前10行后前10行后 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
[root@zabbix ~]#ls /var/l*[0-9]*[[:lower:]]
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
[root@zabbix ~]#ls /etc/[0-9]*[^0-9]
8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
[root@zabbix ~]#ls /etc/[^a-z][a-z]*
9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
[root@zabbix ~]# touch /tmp/tfile-`date +%F-%H-%M-%S`
10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
[root@zabbix ~]#mkdir -p /tmp/mytest1 [root@zabbix ~]#cp -rf /etc/p*[^0-9] /tmp/mytest1
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
[root@zabbix ~]#mkdir -p /tmp/mytest2 [root@zabbix ~]#cp -rf /etc/*.d /tmp/mytest2
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
[root@zabbix ~]#mkdir -p /tmp/mytest3 [root@zabbix ~]#cp -rf /etc/[l,m,n]*.conf /tmp/mytest3
原創文章,作者:Net21_Lion,如若轉載,請注明出處:http://www.www58058.com/20233
寫的很好,可以多關注一下排版問題,加油