N21_2周_Linux目錄管理相關

N21_2周_Linux目錄管理相關

作業題目

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

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

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

   (1)、創建/tmp目錄下的:a_c, a_d, b_c, 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

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

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

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

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

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

9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22

10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

12、復制/etc/目錄下所有以lmn開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

 

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

1.1 瀏覽目錄

   更改目錄命令(cd)可以用于將shell會話移動到Linux文件系統中的另一個目錄。

   # cd     //返回家目錄

    1468831979272863.jpg

   # cd ..     //返回上級目錄

    1468832259741359.jpg

    雙點(..)表示父目錄。

  # cd /usr/local/nginx/    //絕對路徑跳轉

    1468832404795451.jpg

1.2 文件和目錄列表

1.2.1 基本列表

    ls命令能夠以最基本的形式顯示當前目錄中的文件和目錄。

    1468833178556032.jpg

   # ls -F    //-F 區分文件和目錄

    1468833259278779.jpg

   # ls -a    //-a 顯示隱藏文件

    1468833383391991.jpg

   # ls -R    //-R 顯示當前目錄的內容

    1468833583792237.jpg

1.2.2 修改顯示的信息

   #ls -l    //-l參數生成長列表格式

    1468833761967453.jpg 

    文件類型:目錄(-d)、文件(-)、字符設備(c)、塊設備(b);

    

1.3 文件處理

1.3.1 創建文件

   # touch 365    //touch可以創建一個空文件

    1468834052372116.jpg

1.3.2 復制文件

    格式:cp source destination //將source復制為一個新文件,文件名叫destination

   #cp 365 366

    1468834332291832.jpg

    -f:強制覆蓋現有的,且沒有提示
    -i:覆蓋前提示下

    1468834541180908.jpg

1.3.3 鏈接文件

    硬鏈接

    #cp -l test1 test2

    1468834773239154.jpg

    1468834793709506.jpg

    注:test1和test2的索引節點號相同,這兩個實際上是同一個文件。在同一個物理介質的文件之間只能創建一個硬鏈接。不能在不同掛載點下的文件之間創建硬鏈接。

    符號鏈接(又稱軟鏈接)

   #cp -s test3 test4

    1468838904256294.jpg

 1.3.4 重命名文件

   #mv abc abcdef    //重命名

    1468839171384690.jpg

    #mv abcdef/ /home/    //移動

    1468839270365176.jpg

1.3.5 刪除文件

    #rm -rf abcdef/

    1468839435471762.jpg

1.3.6 目錄管理

1.3.6.1 創建目錄
    #mkdir dir

     1468839593823408.jpg

1.3.6.2 刪除目錄
   # rm -rf dir

    1468839641957569.jpg

……

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

    bash命令執行的結果有兩種成功或失敗,成功的返回值用0表示,1-255表示失敗。bash使用echo $?來保存最近一條命令的執行結果。

    1468840255968155.jpg

    

3.請使用命令行展開功能來完成以下練習:

   (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d

    1468840520766631.jpg

   (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

 #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}}

1468840825156001.jpg

   #yum install tree
   #tree mylinux

    1468840937661240.jpg

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

   文件系統中的數據分為數據和元數據,數據是指普通文件的實際數據,元數據是用來描述一個文件特征的系統數據,如訪問權限,文件擁有者等等。

   1468841161856116.jpg

    第1行代表文件的格式主要有一下幾種

        1.-:普通文件

        2.d:目錄文件

        3.l:符號連接文件

        4.s:套接字文件

        5.p:管道文件

        6.b:塊設備文件

        7.c:字設備文件

      第2-9代表文件的擁有者,屬組,其他用戶對文件的訪問權限

        r:讀    w:寫    x:執行

        使用stat和touch可以修改和查看文件的時間戳信息

[root@163 tmp]# stat /etc/passwd
      File: "/etc/passwd"
      Size: 1586            Blocks: 8          IO Block: 4096   普通文件
    Device: 803h/2051d      Inode: 4196173     Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2016-07-18 16:23:01.212615801 +0800
    Modify: 2016-07-09 16:22:44.855578502 +0800
    Change: 2016-07-09 16:22:44.874578502 +0800

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

使用aliase可以查看當前shell的的別名。aliase=value可以定義命令別名
        (1) alias
            顯示當前shell進程所有可用的命令別名;
        (2) alias NAME='VALUE'
            定義別名NAME,其相當于執行命令VALUE;
 
        注意:在命令行中定義的別名,僅對當前shell進程有效;如果想永久有效,要定義在配置文件中;
        僅對當前用戶:~/.bashrc
        對所有用戶有效:/etc/bashrc
    撤消別名:unalias
        unalias [-a] name [name ...]


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

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

    1468841833322453.jpg

    1468841854748489.jpg

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

    #ls -d /etc/[0-9]*[^0-9]

     或

    #ls -d /etc/[0-9]*[[:alpha:]]

    1468842168319629.jpg

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

    #ls -d /etc/[^[:alpha:]][[:alpha:]]*

    1468842305475907.jpg

9./tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。

    #touch /tmp/tfile`date +%F-%H-%M-%S`

    1468842535907095.jpg

10.復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。

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

11.復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

    #cp /etc/*.d /tmp/mytest2/
    #cp -a /etc/*.d /tmp/mytest2/
    #cp -rf /etc/*.d /tmp/mystest2

12.復制/etc/目錄下所有以lmn開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    #cp /etc/[lmn]*.conf /tmp/mytest3/

    


    

原創文章,作者:365,如若轉載,請注明出處:http://www.www58058.com/24774

(0)
365365
上一篇 2016-07-22 10:11
下一篇 2016-07-22 10:11

相關推薦

  • 第四周博客作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# ls …

    Linux干貨 2016-12-28
  • lvs 基本概念

    LVS(linux virtual machine) 的簡寫,是一個虛擬的服務器集群系統,主要用于4層負載均衡。 宗旨: 使用集群技術和Linux操作系統實現一個高性能、高可用的服務器. 很好的可伸縮性(Scalability) 很好的可靠性(Reliability),應該還是高可用吧 很好的可管理性(Manageability…

    Linux干貨 2015-09-14
  • 腳本作業–函數練習

    1、編寫服務腳本/root/bin/testsrv.sh,完成如下要求(1) 腳本可接受參數:start, stop, restart, status(2) 如果參數非此四者之一,提示使用格式后報錯退出(3) 如是start:則創建/var/lock/subsys/SCRIPT_NAME, 并顯示“啟動成功”考慮:如果事先已經啟動過一次,該如何處理?(4) …

    Linux干貨 2016-08-24
  • Grep 文本搜索工具與正則表達式

            grep (縮寫來自Globally search a Regular Expression and Print)是一種強大的文本搜索工具,它能使用特定模式匹配(包括正則表達式)搜索文本,并默認輸出匹配行。Grep在實際中對于我們的工作有著很大的作用,用于對文件的搜索,通過由正則表達式字符以及…

    2017-04-15
  • 馬哥教育網絡班22期中秋節課程練習1

    #!/bin/sh   set -e CheckRoot() { #check if currect use is root user     CUR_USER=`whoami`     if&nbs…

    Linux干貨 2016-10-09

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-22 10:32

    寫的很好,排版還可以在漂亮一點,加油

欧美性久久久久