1般又、Linux的文件管理類命令
新增文件:touch彼绷、vi、vim等
????任意文本編輯軟件在打開文本文件時茴迁,如文本文件不存在則創(chuàng)建新文件寄悯。
????舉例如下:
[root@localhost tmp]# touch aaa? ? #如aaa文件存在,則打開aaa文件笋熬,如aaa文件不存在热某,則創(chuàng)建aaa文件
文件編輯:vi腻菇、vim等
????使用文本編輯命令打開文件進行編輯胳螟,如文件不存在則創(chuàng)建文件。
????舉例如下:
[root@localhost tmp]# vi aaa? #如aaa文件存在筹吐,則打開aaa文件糖耸,如aaa文件不存在,則創(chuàng)建aaa文件
復制文件:cp
????常用選項:
????????-i :交互式復制丘薛,覆蓋之前需要用戶進行確認
????????-f:強制覆蓋目標文件
????????-R or -r:遞歸復制目錄
????????-d:復制符號鏈接文件本身嘉竟,而非其指向的源文件
????????-a:(-dR --preserve=all,archive歸檔(做備份))保留源文件的所有屬性
????舉例如下:
[root@localhost tmp]# cp -r /tmp/b_c/ /tmp/ABC? ? #將/tmp/b_c 目錄下的內(nèi)容復制到 /tmp/ABC 目錄下
移動文件:mv
????常用選項:-i 與用戶交互;-f 強制處理
????舉例如下:
[root@localhost tmp]# mv /tmp/a* /tmp/b_c? #將/tmp目錄下以a開頭的文件移動到“b_c” 目錄下
刪除文件:rm
????常用選項:-i 與用戶交互舍扰;-f 強制刪除倦蚪; -r 遞歸刪除
????舉例如下:
[root@localhost tmp]# rm -rf /tmp/mylinux/? #刪除/tmp/mylinux路徑下的所有目錄及文件
內(nèi)容查看:cat、tac边苹、head陵且、tail、more个束、less等
????cat:鏈接文件慕购,并將結(jié)果顯示在標準輸出中,如果cat 后跟隨多個文件茬底,則將文件內(nèi)容按順序合并后一起顯示
????tac:功能與cat命令完全相同沪悲,與cat的區(qū)別是與cat出的文件內(nèi)容順序反向排列
????head:head [options] FILE 查看文件的前n行內(nèi)容(默認前10行)
????tail:tail [options] FILE 查看文件的后n行內(nèi)容(默認后10行),“-f”是在運維監(jiān)控中較為重要的選項阱表,作為監(jiān)控日志文件尾部產(chǎn)生內(nèi)容使用殿如。使用“tail -f”后,查看文件尾部內(nèi)容結(jié)束后不退出最爬,跟隨顯示新增的行
????more:翻屏至文件尾部后自動退出
????less:man命令調(diào)用的就是less命令
----------------------------------
2握截、
Linux的命令執(zhí)行狀態(tài)返回值
????命令在執(zhí)行完成后會產(chǎn)生一個狀態(tài)返回值,如命令成功執(zhí)行烂叔,則命令的狀態(tài)返回值為0谨胞,如命令未能成功執(zhí)行,則命令的狀態(tài)返回值為1-255間的一個隨機數(shù)蒜鸡,保存命令狀態(tài)返回值的環(huán)境變量為 $? 胯努,使用 echo $? 返回命令的狀態(tài)返回值。
????命令正確執(zhí)行時的狀態(tài)返回值:
[root@localhost tmp]# ls /tmp/mylinux/
bin? dev? lib? ? lock? proc? sbin? tmp? var
boot? etc? lib64? log? run? sys? usr
[root@localhost tmp]# echo $?
0
????命令錯誤執(zhí)行時的狀態(tài)返回值:
[root@localhost tmp]# ls /tmp/mylinux/abc
ls: cannot access /tmp/mylinux/abc: No such file or directory
[root@localhost tmp]# echo $?
2
【注意】命令的狀態(tài)返回值與命令正常執(zhí)行時的結(jié)果返回值不同逢防,注意區(qū)分祭椰。
Linux的命令行展開
使用 “~”自動展開為用戶的家目錄,使用“~NAME” 展開為指定用戶的家目錄蕴侧;
使用 “{}” 可以承載一個以逗號分隔的路徑列表泉坐,并能夠?qū)⑵湔归_為多個路徑;
????例如:/tmp/{x,y}的含義是 /tmp/x 和 /tmp/y 兩個路徑
????舉例如下:
?[root@MyLinux ~]# mkdir -pv /tmp/{a,b}_{c,d}
命令執(zhí)行結(jié)果如下:
[root@localhost tmp]#? mkdir -pv /tmp/{a,b}_{c,d}
mkdir: created directory ‘/tmp/a_c’
mkdir: created directory ‘/tmp/a_d’
mkdir: created directory ‘/tmp/b_c’
mkdir: created directory ‘/tmp/b_d’
----------------------------------
3局嘁、
????為完成作業(yè)中要求的創(chuàng)建目錄及文件的操作溉箕,需要使用bash基礎(chǔ)特性中命令行展開的功能。
(1)創(chuàng)建/tmp目錄下的:a_c, a_d, b_c, b_d:
?[root@MyLinux ~]# mkdir -pv /tmp/{a,b}_{c,d}
命令執(zhí)行結(jié)果如下:
[root@localhost tmp]#? mkdir -pv /tmp/{a,b}_{c,d}
mkdir: created directory ‘/tmp/a_c’
mkdir: created directory ‘/tmp/a_d’
mkdir: created directory ‘/tmp/b_c’
mkdir: created directory ‘/tmp/b_d’
(2)創(chuàng)建/tmp/mylinux目錄下的文件結(jié)構(gòu):
[root@MyLinux ~]# mkdir -p /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}
查看命令運行結(jié)果:
????如需按樹狀結(jié)構(gòu)顯示目錄建成的結(jié)果悦昵,需要使用tree命令進行展示肴茄。centos系統(tǒng)安裝過程中不會安裝此命令,需要進行安裝但指。
[root@MyLinux ~]# yum install tree
tree命令安裝成功后寡痰,展示新建立的目錄結(jié)構(gòu):
[root@localhost tmp]# tree /tmp/mylinux/
/tmp/mylinux/
├── bin
├── boot
│?? └── {grub}
├── dev
├── etc
│?? ├── network-scripts
│?? ├── rc.d
│?? │?? └── {init.d}
│?? └── sysconfig
├── lib
│?? └── {modules}
├── lib64
├── lock
├── log
├── proc
├── run
├── sbin
├── sys
├── tmp
├── usr
│?? ├── bin
│?? ├── local
│?? └── sbin
└── var
24 directories, 0 files