一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
cat命令:查看文本文件內容,一次性輸出所有信息
cat [option] file…
more命令:查看文本文件內容,提供翻頁功能
more [option] file…
less命令:查看文本文件內容,比more命令更強大,不僅提供翻頁功能,還可以在查看過程中進行匹配搜索等功能
less [option] file…
head命令:顯示文本文件的開頭N行內容,一次性輸出
head [option] file… 不加選項默認顯示頭10行信息
head -n # [or -#] : 顯示頭#行信息
head -c # : 顯示頭#個字節的信息,例如head -c 10k 顯示頭10k Bytes的內容
tail命令:顯示文本文件從結尾向上數N行內容,一次性輸出
tail [option] file… 不加選項默認顯示結尾10行信息
tail -n # [or -#] : 顯示尾#行信息
tail -c # : 顯示尾#個字節的信息,例如tail -c 10k 顯示結尾向前數10k Bytes的內容
touch命令:更改文件的時間戳
touch [option] file… 如果文件存在,更改文件的時間戳。如果文件不存在,則新建此文件,因此touch命令也常用于新建空文件
-a : 更改文件的access time
-m : 更改文件的modify time
-t time : 將文件的時間戳修改為指定的時間
cp命令:復制文件
cp [option] source… dest
如果source是一個文件,dest也是一個文件,則將source的內容覆蓋至dest
如果source是一個文件,dest不存在,則新建dest文件并將source的內容覆蓋至dest
如果source是一個目錄或多個文件,則dest必須是一個已存在的目錄,將source復制到dest目錄下面
如果source是一個目錄,可以加 -r 選項使得復制成功,執行結果為新建dest目錄,并將source目錄之下的所有文件遞歸復制到dest下面
cp [option] -t directory source… : 此用法中 -t 之后為復制操作的目標目錄
常用的命令選項
-r[or R] : 遞歸復制
-i : 交互模式
-d : 復制時遇到符號鏈接僅復制其本身,而不追蹤復制符號鏈接指向的源文件
-p : 使復制后的復本保留原有文件的屬性
-a : 歸檔復制,相當于 -dpr 3個選項疊加使用
-f : 強制復制,忽略且不輸出交互信息(如不顯示是否覆蓋的交互信息而直接覆蓋)
-v : verbose顯示過程信息
mv命令:移動文件
mv [option] soure… dest
如果dest存在且是一個目錄,則將source移動至dest目錄下
如果source是多個文件,則dest必須為一個已存在的目錄
如果source是一個文件(目錄也是文件),dest(dest=/path/filename)不存在,則將source文件重命名為filename并移動至/path路徑下
常用選項
-i : 交互模式
-f : 強制執行,不輸出交互信息
rm命令:刪除文件(目錄)
rm [option] file…
-i : 交互模式
-r : 遞歸刪除
-f : 強制執行刪除,不輸出交互信息
二、bash的工作特性之命令執行狀態返回值和命令行展開
1.命令執行的狀態結果:
bash通過狀態返回值來輸出此結果:
成功:0
失?。?-255
命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中
2.命令行展開
~:自動展開為用戶的家目錄
{}:可承載一個以逗號分隔的路徑列表,并能夠將其展開為多個路徑
三、請使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
mkdir /tmp/{a,b}_{c,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
mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib{/modules,64},proc,sbin,sys,tmp,user/{local/{,s}bin},var/{lo{vk,g},run}}
[root@localhost ~]# mkdir -pv /tmp/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}}
四、文件的元數據信息
文件的元素信息包括元數據(文件屬性)和數據(文件本身數據)
查看命令 stat FILE
修改時間戳使用touch -a:修改Access time為當前時間 -m:修改Modify time為當前時間
五、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
通過alias來定義別名
例:[y@localhost data] alias
alias cls=’clear’
六、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
ls -d /var/l?[[:digit:]]?[[:lower:]]
七、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
ls -d /etc/[[:digit:]][^[:digit:]]
八、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
ls -d /etc/[^[:alpha:]]*
九、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
touch /tmp/tfile-$(date +%F-%H-%M-%S)
十、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
mkdir /tmp/mytest1
cp /etc/p[^[:digit:]] /tmp/mytest1
十一、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
mkdir /tmp/mytest2
cp /etc/*.d /tmp/mytest2
十二、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中
mkdir /tmp/mytest3
find /etc -name “[lmn]*.conf” -exec cp {} /tmp/mytest3 \;
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89887
做題還需要認真一點,建議多謝幾個測試用例檢測下答案~~12小題有點問題,你再看下~加油~