-
linux上的文件管理命令都有哪些,其常用的使用方法及其相關示例演示。
linux中經常使用的文件管理命令主要有cp,mv,rm這三個命令。 復制命令:cp cp [option] SRC DEST SRC是文件: 如果目標不存在:新建DEST,將SRC的內容填充到DEST中。 目標存在:將SRC的內容覆蓋到DESC中。
[root@localhost mnt]# cp -i /etc/passwd /mnt [root@localhost mnt]# ls lineout.sh passwd spaceline.sh useridsum.sh [root@localhost mnt]# [root@localhost mnt]# cp -i /etc/passwd /mnt/abc [root@localhost mnt]# ls abc
SRC為多個文件:
DESC必須存在且為目錄。
[root@localhost mnt]# cp -i /etc/shadow /etc/group /mnt [root@localhost mnt]# ls group lineout.sh passwd shadow spaceline.sh useridsum.sh [root@localhost mnt]#
SRC是目錄:
使用選項:-r
DESC不存在則自動創建,DESC存在時必須是目錄,文件會報錯。
[root@localhost home]# ls jtah [root@localhost home]# cp -r jtah/ /mnt
常用選項: -i:交互式 -r, -R: 遞歸復制目錄及內部的所有內容; -a: 歸檔,相當于-dR --preserv=all -d:--no-dereference --preserv=links --preserv[=ATTR_LIST] mode: 權限 ownership: 屬主屬組 timestamp: links xattr context all -p: --preserv=mode,ownership,timestamp -v: --verbose -f: --force 移動文件:mv mv [option] SRC DESC 常用選項: -i: 交互式 -f: 強制 刪除文件:rm rm [option] FILE 常用選項: -i: 交互式 -f: 強制刪除 -r: 遞歸
2.bash的工作特性之命令狀態返回值和命令行展開所涉及的內容及其示例演示。
bash命令執行的結果有兩種成功或失敗,成功的返回值用0表示,1-255表示失敗。bash使用echo $?來保存最近一條命令的執行結果。
3.請使用命令行展開功能來完成一下練習:
(1)創建/tmp目錄下的:a_c,a_d,b_c,b_d
root@localhost tmp]# mkdir {a,b}_{c,d} [root@localhost tmp]# ls -l 總用量 76 drwxr-xr-x. 2 root root 6 7月 16 22:18 a_c drwxr-xr-x. 2 root root 6 7月 16 22:18 a_d drwxr-xr-x. 2 root root 6 7月 16 22:18 b_c drwxr-xr-x. 2 root root 6 7月 16 22:18 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 tmp]# mkdir -p 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 tmp]# tree mylinux/ mylinux/ ├── bin ├── boot │ └── grub ├── dev ├── etcrc.d │ └── init.d ├── etcsysconfig │ └── network-scripts ├── lib │ └── modules ├── lib64 ├── proc ├── sbin ├── sys ├── tmp ├── usr │ ├── localbin │ └── localsbin └── var ├── lock ├── log └── run
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
文件系統中的數據分為數據和元數據,數據是指普通文件的實際數據,元數據是用來描述一個文件特征的系統數據,如訪問權限,文件擁有者等等。
[root@localhost tmp]# ls -l /etc/passwd -rw-r--r--. 1 root root 3355 7月 15 11:17 /etc/passwd 第1行代表文件的格式主要有一下幾種 1.-:普通文件 2.d:目錄文件 3.l:符號連接文件 4.s:套接字文件 5.p:管道文件 6.b:塊設備文件 7.c:字設備文件 第2-9代表文件的擁有者,屬組,其他用戶對文件的訪問權限 r:讀 w:寫 x:執行 使用stat和touch可以修改和查看文件的時間戳信息 [root@localhost tmp]# stat /etc/passwd 文件:"/etc/passwd" 大?。?355 塊:8 IO 塊:4096 普通文件 設備:fd00h/64768d Inode:34137289 硬鏈接:1 權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 環境:system_u:object_r:passwd_file_t:s0 最近訪問:2016-07-16 22:42:49.602895353 +0800 最近更改:2016-07-16 22:42:49.602895353 +0800 最近改動:2016-07-16 22:42:49.602895353 +0800 創建時間:-
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
使用aliase可以查看當前shell的的別名。aliase=value可以定義命令別名 (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 ...]
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
[root@localhost var]# ls -d /var/l*[0-9]*[[:lower:]] /var/lib60test
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
[root@localhost var]# ls /etc/[0-9]*[^0-9]
8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
[root@localhost var]# ls /etc/[^[:alpha:]][[:alpha:]]*
9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
[root@localhost tmp]# touch /tmp/tfile`date +%F-%H-%M-%S`
10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
[root@localhost tmp]# cp -rf /etc/p*[^0-9] /tmp/mytest1
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
[root@localhost tmp]# cp -rf /etc/*.d /tmp.mytest2
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
[root@localhost tmp]# cp /etc/{l.m,n}*.conf /tmp/mytest3
原創文章,作者:N21_619463772,如若轉載,請注明出處:http://www.www58058.com/23179
寫的很好,排版也很漂亮,加油