1:使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
~]# touch /tmp/{a_{c,d},b_{c,d}}
(2)、創建/tmp/mylinux目錄下的:
mkdir -pv /tmp/mylinux/{bin,dev,boot/grub,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
2:文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
在Linux文件管理中,我們知道,一個文件除了自身的數據之外,還有一個附屬信息,即文件的元數據(metadata)。元數據信息有:文件名、文件大小、節點號id,屬主屬組、硬鏈接數量、權限信息、訪問日期、修改日期、改變日期等,可以使用stat命令查看。
uid:該文件所屬的屬主
gid:該文件所屬的屬組
修改文件的時間戳信息可以通過touch命令實現;
toucu的使用方法:
access time(最近訪問時間):atime,可以通過cat,more等讀取其內容
modify time(最近修改時間):mtime改變文件內容
change time(最近改變時間):ctime元數據發生改變
touch [OPTION]…FILE…
-a:修改atime
-m:修改mtime
-t [[CC]YY]MMDDhhmm[.ss] :修改制定時間戳為某時間
例如:
3: 如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
使用alias命令可以定義一個命令的別名,alias用法: alias NAME="VALUE"
例如: alias rm=‘rm -i’
在命令行中定義的別名,僅對當前shell進程有效,如果想永久有效,要定義配置文件:
僅對當前用戶:~/.bashrc
對所有有效:/etc/bashrc
在命令中引用另一個命令的結果可以通過管道命令 | 來實現:
COMMAND1 | COMMAND2 | COMMAND3 |…
把第一個命令command 1執行的結果作為command 2的輸入傳給command 2,依次類推。
4: 顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
~]# ls /var/l*[0-9]*[a-z]
5: 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
~]# ls /etc/[0-9]*[^0-9]
6: 顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
~]# ls /etc/[^a-z][a-z]*
7: 在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22
~]# touch /tmp/tfile-$(date +%F-%H-%M-%S)
8: 復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中
~]# mkdir /tmp/mytest1
~]# cp -r /etc/p*[^0-9] /tmp/mytest1
9: 復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
~]# mkdir /tmp/test2
~]# cp -r /etc/*.d /tmp/mytest2
10: 復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
~]# mkdir /tmp/mytest3
~]# cp /etc/[lmn]*.conf /tmp/mytest3
原創文章,作者:N24_云淡風輕,如若轉載,請注明出處:http://www.www58058.com/57995
幾個練習還是不錯的,注意下排版會更好~~加油~