1、Linux上文件管理命令有哪些,其常用的相關示例演示。
常見文件管理命令有:touch/stat/file/rm/cp/mv/nano
示例如下:
[root@localhost week2_test]# touch newfile [root@localhost week2_test]# ls -al total 4 drwxr-xr-x. 2 root root 20 Aug 19 23:00 . drwxrwxrwt. 20 root root 4096 Aug 19 23:00 .. -rw-r--r--. 1 root root 0 Aug 19 23:00 newfile
[root@localhost week2_test]# stat newfile File: ‘newfile’ Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: 803h/2051dInode: 106057863 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Context: unconfined_u:object_r:user_tmp_t:s0 Access: 2016-08-19 23:00:30.008106826 -0700 Modify: 2016-08-19 23:00:30.008106826 -0700 Change: 2016-08-19 23:00:30.008106826 -0700 Birth: - [root@localhost week2_test]# file newfile newfile: empty [root@localhost week2_test]# rm newfile rm: remove regular empty file ‘newfile’? y [root@localhost week2_test]# ls [root@localhost week2_test]# cp /etc/fstab /etc/redhat-release . [root@localhost week2_test]# ls -al total 12 drwxr-xr-x. 2 root root 39 Aug 19 23:01 . drwxrwxrwt. 20 root root 4096 Aug 19 23:01 .. -rw-r--r--. 1 root root 501 Aug 19 23:01 fstab -rw-r--r--. 1 root root 38 Aug 19 23:01 redhat-release [root@localhost week2_test]# mv fstab fstab.bak [root@localhost week2_test]# ls -al total 12 drwxr-xr-x. 2 root root 43 Aug 19 23:02 . drwxrwxrwt. 20 root root 4096 Aug 19 23:02 .. -rw-r--r--. 1 root root 501 Aug 19 23:01 fstab.bak -rw-r--r--. 1 root root 38 Aug 19 23:01 redhat-release [root@localhost week2_test]# nano fstab.bak ^G 獲取幫助 ^O 將該文件內容寫入磁盤 ^R 將另一個文件內容寫入此文件 ^Y 上一頁 ^V 下一頁 ^K 剪切光標所在的那一行 ^U 撤銷所有剪切 ^C 顯示光標所在行在全文中的位置 ^X 退出
2、bash的工作特性之命令執行狀態返回值和命令行展開設計的內容和實例演示。
執行狀態返回值:若執行狀態成功則返回0;若不成功則返回1-255的任意值
[root@localhost week2_test]# ls fstab.bak redhat-release [root@localhost week2_test]# echo $? 0 [root@localhost week2_test]# lssss bash: lssss: command not found... [root@localhost week2_test]# echo $? 127
花括號展開:
[root@localhost week2_test]# mkdir -pv test/{x/m,y} mkdir: created directory ‘test’ mkdir: created directory ‘test/x’ mkdir: created directory ‘test/x/m’ mkdir: created directory ‘test/y’
3、請使用命令行展開功能完成以下練習:
(1)創建/tmp目錄下的a_c a_d b_c b_d
[root@localhost tmp]# mkdir -pv {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目錄下的:
[root@localhost mylinux]#mkdir -pv {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 mylinux]# tree . ├── 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 24 directories, 0 files
4、文件的元數據信息有哪些?分別表示什么含義?如何查看?如何修改文件的時間戳信息?
[root@localhost var]# stat /etc/fstab File: ‘/etc/fstab’ Size: 501 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051dInode: 33554562 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Context: system_u:object_r:etc_t:s0 Access: 2016-08-19 22:57:40.645802142 -0700 Modify: 2016-08-09 09:06:24.459001039 -0700 Change: 2016-08-09 08:24:19.940440587 -0700 Birth: -
修改時間戳方法如下:
touch [OPTION]... FILE... -a 僅改變訪問時間戳 -m 改變修改時間戳 -t [[CC]YY]MMDDhhmm[.ss] 修改為指定時間戳
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果
定義別名:alias ls='ls –color=auto'
取消別名:ualias
未寫入配置文件/etc/bashrc或者~/.bashrc的別名只能在本次shell的生命周期中有效
命令替換:把命令中某個子命令替換為其執行結果的過程。
[root@localhost week2_test]# touch "$(date)" [root@localhost week2_test]# ls Fri Aug 19 23:31:03 PDT 2016
6、顯示/var目錄下所有以1開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其他字符)的文件或目錄
正則表達式實現:
[root@localhost var]# ls -d /var | grep ^1.*[[:digit:]]\+.*[[:lower:]]$
通配符實現:
[root@localhost var]# ls -d /var/1*[[:digit:]]*[[:lower:]]
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件夾或目錄
[root@localhost var]# ls -d /etc/[[:digit:]]*[^[:digit:]]
8、顯示/etc目錄下,以非字母開頭,后面跟一個字母以及其他任意長度任意字符的文件或目錄
[root@localhost var]# ls -d /etc/[^[:alpha:]][[:alpha:]]*
9、在/tmp目錄下創建以tfile開頭,后面跟當前日期和時間的文件
[root@localhost tmp]# touch tfile-$(date +%Y-%m-%d-%H-%M-%S)
10、復制/etc目錄下所有以p開頭以非數字結尾的文件和目錄到/tmp/mytest1目錄中
find實現:
[root@localhost /]# find /etc -name "p*[^[:digit:]]" -type f -exec cp {} /tmp/mytest1/ \; [root@localhost /]# find /etc -name "p*[^[:digit:]]" -type d -exec cp -r {} /tmp/mytest1/ \;
cp實現:
[root@localhost /]# cp -r /etc/p*[^[:digit:]] /tmp/mytest1
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中
[root@localhost /]# cp -r /etc/*.d /tmp/mytest2
12、復制/etc目錄下所有以l或者m或者n開頭,以.conf結尾的文件至/tmp/mytest3目錄中
[root@localhost /]# cp /etc/{l,m,n}*.conf /tmp/mytest3
原創文章,作者:zhangxiaola,如若轉載,請注明出處:http://www.www58058.com/37935
寫的很好,排版也很棒,加油,3大題2小題都看不到了