本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/99075
文件管理 展開式
#1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
###cp
+ 文件復制
+ 1.單源復制
? ? + 1.DEST不存在則創建此文件,并復制源文件內容到DEST中
? ? + 2.DEST存在,若DEST是文件,則會覆蓋目標文件
? ? + 3.若DEST是目錄,則會事先在目錄下創建一個同名的文件,并復制數據流。
+ 2.多源復制(目標必須是目錄,且必須存在)
? ? + 分別復制每個文件至目標目錄中,并保持原名
+ 選項
? ? + 1.-i interactive 交互,覆蓋前提示
? ? + 2.-f force 強制覆蓋
? ? + 3.-r(-R)recursive 遞歸復制目錄
? ? ? ? + 1.DEST 存在,復制文件層級結構到DEST下
? ? ? ? + 2.DEST 不存在,創建目錄并復制
? ? ? ? + 3.cp -r目錄時軟鏈接會保存,cp軟鏈接會丟失軟鏈接,加-d不丟失
? ? + 4.-d 不跟蹤軟鏈接的源文件,只復制軟鏈接本身
? ? + 5.–preserve=(mode,ownership,timestamps,context,xattr,links,all) 保留文件屬性
? ? + 6.-a=-dr –preserve=all 歸檔復制,遞歸復制目錄,復制軟鏈接本身,保留文件所有屬性
###mv
+ move 移動或重命名文件或目錄
+ 若文件或目錄在同一目錄下則重命名,否則為移動
+ -i 交互式
+ -f 強制
###rm
+ remove 刪除
+ rm -i 交互式
+ rm -f 強制
+ rm -fr 強制刪除目錄
+ 刪除時建議mv到專用目錄中(如/root/tmp)當做回收站
“`
[root@localhost tmp]# ls
yum.log
[root@localhost tmp]# mkdir a
[root@localhost tmp]# ls
a yum.log
[root@localhost tmp]# mkdir b
[root@localhost tmp]# ls
a b yum.log
[root@localhost tmp]# cp a b
cp: omitting directory `a’
[root@localhost tmp]# cp yum.log b
[root@localhost tmp]# cp -a a b
[root@localhost tmp]# tree /tmp
/tmp
├── a
├── b
│ ├── a
│ └── yum.log
└── yum.log
3 directories, 2 files
[root@localhost tmp]# cp -a a c
[root@localhost tmp]# tree /tmp
/tmp
├── a
├── b
│ ├── a
│ └── yum.log
├── c
└── yum.log
4 directories, 2 files
[root@localhost tmp]# touch a.txt
[root@localhost tmp]# mv a.txt b
[root@localhost tmp]# tree /tmp
/tmp
├── a
├── b
│ ├── a
│ ├── a.txt
│ └── yum.log
├── c
└── yum.log
4 directories, 3 files
[root@localhost tmp]# mv b/a.txt b.txt
[root@localhost tmp]# tree /tmp
/tmp
├── a
├── b
│ ├── a
│ └── yum.log
├── b.txt
├── c
└── yum.log
4 directories, 3 files
[root@localhost tmp]# mv b a
[root@localhost tmp]# tree /tmp
/tmp
├── a
│ └── b
│ ├── a
│ └── yum.log
├── b.txt
├── c
└── yum.log
4 directories, 3 files
[root@localhost tmp]# mv a c
[root@localhost tmp]# tree /tmp
/tmp
├── b.txt
├── c
│ └── a
│ └── b
│ ├── a
│ └── yum.log
└── yum.log
4 directories, 3 files
[root@localhost tmp]# rm -fr b.txt c
[root@localhost tmp]# tree /tmp
/tmp
└── yum.log
0 directories, 1 file
“`
#2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
###bash shell基礎特性之命令的執行狀態結果
+ bash通過狀態返回值輸出此結果:成功為0,失敗為1-255
+ 命令執行完成后,狀態返回值保存于特殊變量$?中,僅保存最近一條命令的
+ 命令如果正常執行,會有命令執行結果返回值
+ 使用$()或“可以引用命令的執行結果
“`
[root@localhost tmp]# mkdir $(date +%F-%H-%M-%S)
[root@localhost tmp]# echo $?
0
[root@localhost tmp]# ls
2018-05-18-09-12-41 2018-05-18-09-12-45 ks-script-6ZKL2e yum.log
[root@localhost tmp]# mkdir `date +%F-%H-%M-%S`
[root@localhost tmp]# ls
2018-05-18-09-12-41 2018-05-18-09-13-03 yum.log
2018-05-18-09-12-45 ks-script-6ZKL2e
“`
###bash shell基礎特性之命令行展開功能
+ ~自動展開為用戶的家目錄
+ {}分組以,分隔的路徑列表,將其展開為多個路徑
“`
[root@localhost tmp]# mkdir -pv /tmp/x/{y1/{a,b},y2}
mkdir: created directory ‘/tmp/x’
mkdir: created directory ‘/tmp/x/y1’
mkdir: created directory ‘/tmp/x/y1/a’
mkdir: created directory ‘/tmp/x/y1/b’
mkdir: created directory ‘/tmp/x/y2’
[root@localhost tmp]# tree /tmp/x
/tmp/x
├── y1
│ ├── a
│ └── b
└── y2
“`
#3、請使用命令行展開功能來完成以下練習:
? ?(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
“`
[root@localhost tmp]# mkdir -v {a,b}_{c,d}
mkdir: created directory ‘a_c’
mkdir: created directory ‘a_d’
mkdir: created directory ‘b_c’
mkdir: created directory ‘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 ~]# 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}}
mkdir: created directory ‘/tmp/mylinux’
mkdir: created directory ‘/tmp/mylinux/bin’
mkdir: created directory ‘/tmp/mylinux/boot’
mkdir: created directory ‘/tmp/mylinux/boot/grub’
mkdir: created directory ‘/tmp/mylinux/dev’
mkdir: created directory ‘/tmp/mylinux/etc’
mkdir: created directory ‘/tmp/mylinux/etc/rc.d’
mkdir: created directory ‘/tmp/mylinux/etc/rc.d/init.d’
mkdir: created directory ‘/tmp/mylinux/etc/sysconfig’
mkdir: created directory ‘/tmp/mylinux/etc/sysconfig/network-scripts’
mkdir: created directory ‘/tmp/mylinux/lib’
mkdir: created directory ‘/tmp/mylinux/lib/modules’
mkdir: created directory ‘/tmp/mylinux/lib64’
mkdir: created directory ‘/tmp/mylinux/proc’
mkdir: created directory ‘/tmp/mylinux/sbin’
mkdir: created directory ‘/tmp/mylinux/sys’
mkdir: created directory ‘/tmp/mylinux/tmp’
mkdir: created directory ‘/tmp/mylinux/usr’
mkdir: created directory ‘/tmp/mylinux/usr/local’
mkdir: created directory ‘/tmp/mylinux/usr/bin’
mkdir: created directory ‘/tmp/mylinux/usr/sbin’
mkdir: created directory ‘/tmp/mylinux/var’
mkdir: created directory ‘/tmp/mylinux/var/lock’
mkdir: created directory ‘/tmp/mylinux/var/log’
mkdir: created directory ‘/tmp/mylinux/var/run’
[root@localhost ~]# tree /tmp/mylinux
/tmp/mylinux
├── bin
├── boot
│ └── grub
├── dev
├── etc
│ ├── rc.d
│ │ └── init.d
│ └── sysconfig
│ └── network-scripts
├── lib
│ └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│ ├── bin
│ ├── local
│ └── sbin
└── var
? ? ├── lock
? ? ├── log
? ? └── run
24 directories, 0 files
“`
贊 (1)
linux就是這個范兒!淺談linux的哲學思想與基礎命令
上一篇
2018-05-21
系統與內核管理
下一篇
2018-05-21
不錯。不過建議命令演示 寫在命令編輯器里面。