馬哥運維班第二週做業

一、Linux上的文件管理類命令都有哪些,其經常使用的使用方法及其相關示例演示。node

1)cp:linux

複製centos

用法:bash

      cp [OPTION]... [-T] SOURCE DESTide

      cp [OPTION]... SOURCE... DIRECTORYspa

      cp [OPTION]... -t DIRECTORY SOURCE...命令行

選項:orm

    -i:交互式遞歸

    -r:遞歸複製ip

    -a:歸檔,至關於-dR--preserv-links

    -p:至關於--preserv=mode,ownership,timestamp

    -v:--verbose,顯示詳細信息

eg.

1.-a選項,歸檔複製

[yannic@localhost etc]$ ls -l  /etc/system-release
lrwxrwxrwx. 1 root root 14 Aug 14 03:24 /etc/system-release ->centos-release
[yannic@localhost etc]$ cp /etc/system-release /tmp
[yannic@localhost etc]$ ls -l /tmp/system-release 
-rw-r--r--. 1 yannic yannic 27 Aug 19 05:50 /tmp/system-release  //複製原文件,而不是軟鏈接
[yannic@localhost etc]$ rm -f /tmp/system-release
[yannic@localhost etc]$ ls -l/tmp/system-release
lrwxrwxrwx. 1 yannic yannic 14 Aug 14 03:24/tmp/system-release -> centos-release

 

2)rm

刪除文件或目錄

用法:rm [OPTION]... FILE...

選項:

 -r 遞歸刪除,包括目錄以及目錄下的文件

 -f 強制執行

 -i:交互式選項

 

3)mv

移動文件

用法:

      mv [OPTION]... [-T] SOURCE DEST

      mv [OPTION]... SOURCE... DIRECTORY

      mv [OPTION]... -t DIRECTORY SOURCE...

選項:

    -i:交互式選項

     -f:--force,強制執行

 

二、bash的工做特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。

    (1)命令執行狀態返回值:

        0- 成功

        1~255:失敗

  (2)命令行展開:

     ~:展開爲用戶的主目錄

     ~USERNAME:展開爲指定用戶的主目錄

     {}:可承載一個以逗號分隔的列表,並將其展開爲多個路徑

     eg.

[yannic@localhost tmp]$ mkdir -p/tmp/work2/{x,y}/a
[yannic@localhost tmp]$ tree /tmp/work2
/tmp/work2
├── x
│   └── a
└── y
└── a

三、請使用命令行展開功能來完成如下練習:

(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

[yannic@localhost ~]$ mkdir -p /tmp/mylinux/{bin,boot/grub,etc/rc.d/init.d,etc/sysconfig/networkscrips,lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var,lock,log,run}


四、文件的元數據信息有哪些,分別表示什麼含義,如何查看?如何修改文件的時間戳信息。

    元數據指用來描述一個文件的特徵的系統數據,諸如文件權限(屬主權限,屬組權限、其餘用戶權限)、文件擁有者以及文件數據塊的分佈信息(inode...)等等。


    經過ls命令查看

[yannic@localhost profile.d]$ ll
total 56
-rw-r--r--. 1 root root 1127 Oct 17  2013 colorls.csh

 

    還能夠經過stat命令查看更多詳細信息:文件大小size,文件佔用的塊數,blocks,文件權限,GID和 UID。文件時間戳信息,最近一次訪問時間Access,最後一次修改時間Modify,最後一次改變時間Change。

[yannic@localhost profile.d]$ stat colorls.csh
  File:`colorls.csh'
  Size:1127        Blocks: 8          IO Block:4096   regular file
Device: 802h/2050d  Inode:6029550     Links: 1
Access: (0644/-rw-r--r--)  Uid: (   0/    root)   Gid: (   0/    root)
Access: 2016-08-19 05:48:14.920032604 -0700
Modify: 2013-10-17 05:51:45.000000000 -0700
Change: 2016-08-14 03:22:38.972999939 -0700


五、如何定義一個命令的別名,如何在命令中引用另外一個命令的執行結果?

    alias:定義別名

    alias NAME='VALUE',只對當前會話有效

    永久生效:

        僅對當前用戶:~/.bashrc

         對全部用戶有效:/etc/bashrc

    能夠經過管道實如今命令中引用另外一個命令的執行結果:

    eg.

[yannic@localhost ~]$ ps aux |grep ls
root      1422  0.2 0.4 189328  4404 ?        Sl  Aug18   8:07 /usr/sbin/vmtoolsd
yannic    2462  0.0 0.4 450424  4720 ?        Ssl Aug18   0:02 /usr/bin/pulseaudio--start --log-target=syslog
yannic    2471  0.0  0.2  95228 2620 ?        S    Aug18  0:00 /usr/libexec/pulse/gconf-helper
yannic    2496  0.2 2.9 359016 29696 ?        S    Aug18  9:09 /usr/lib/vmware-tools/sbin64/vmtoolsd -n vmusr --blockFd 3
root     37630  0.0 0.1  22440  1076 ?       S    Aug20   0:00/usr/libexec/hald-addon-rfkill-killswitch
yannic   41418 1.0  0.0 103256   840 pts/1   S+   06:36   0:00 grep ls


六、顯示/var目錄下全部以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(能夠有其它字符)的文件或目錄。

ls -ld /var/l*[0-9]*[[:lower:]]

七、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。

ls -ld /etc/[0-9]*[^0-9]


八、顯示/etc目錄下,以非字母開頭,後面跟了一個字母以及其它任意長度任意字符的文件或目錄。

ls -ld /etc/[^a-z][a-z]*


九、在/tmp目錄下建立以tfile開頭,後跟當前日期和時間的文件,文件名形如:

    tfile-2016-08-06-09-32-22。

touch /tmp/tfile_$( date +'%F-%H-%M-%S')


十、複製/etc目錄下全部以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

cp -r /etc/p*[^0-9] /tmp/mytest1


十一、複製/etc目錄下全部以.d結尾的文件或目錄至/tmp/mytest2目錄中。

cp -r /etc/*.d /tmp/test2


十二、複製/etc/目錄下全部以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

cp /etc/[lmn]*.conf /tmp/test3


若有錯誤之處,麻煩看官評論裏指點一下,小女子不勝感激。

相關文章
相關標籤/搜索