馬哥教育網絡班21期第2周課程練習

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

     文件管理類命令

  •    cp

 用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄。

        cp [OPTION]… [-T] SOURCE DEST
        cp [OPTION]… SOURCE… DIRECTORY
        cp [OPTION]… -t DIRECTORY SOURCE…

        -a:此參數的效果和同時指定"-dpR"參數相同;

        -d:當復制符號連接時,把目標文件或目錄也建立為符號連接,并指向與源文件或目錄連接的原始文件或目錄;

       -f:強行復制文件或目錄,不論目標文件或目錄是否已存在;

      
-i:覆蓋既有文件之前先詢問用戶;

       -p:保留源文件或目錄的屬性;

                    mode: 權限
                    ownership: 屬主屬組
                    timestamp:
                    links:鏈接屬性
                    xattr:擴展屬性
                    context:安全上下文
                    all

      -R/r:遞歸處理,將指定目錄下的所有文件與子目錄一并處理;

       -v:詳細顯示命令執行的操作。

  •    mv

用來對文件或目錄重新命名,或者將文件從一個目錄移到另一個目錄中。

   mv [OPTION]… [-T] SOURCE DEST
    mv [OPTION]… SOURCE… DIRECTORY
    mv [OPTION]… -t DIRECTORY SOURCE…

    -i: 交互式
      -f: 強制

1467355171667094.jpg

  •   rm

  刪除一個目錄中的一個或多個文件或目錄,也可以將某個目錄及其下屬的所有文件及其子目錄均刪除掉。

    -i: 交互式 (管理員的權限下自帶)
      -f: 強制刪除
      -r: 遞歸(刪除目錄)

     rm -rf 強制刪除目錄以及目錄下的所有文件

1467354126709624.jpg


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

  •      命令執行狀態返回值

       命令的執行結果狀態(成功,失?。?,bash使用特殊變量$?保存最近一條命令的執行狀態結果,用“echo $? ”可以產看返回值,0:成功,1-255:失敗。

  •  命令行展開
      
    ~: 展開為用戶的主目錄
        ~USERNAME:展開為指定用戶的主目錄
       {}:可承載一個以逗號分隔的列表,并將其展開為多個路徑

                /tmp/{a,b}=/tmp/a,/tmp/b
               /tmp/{tom,jerry}/hi=/tmp/tom/hi,/tmp/jerry/hi



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

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

1467342666309412.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

  • 1467343844520804.jpg

1467344175766050.jpg


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


  •   元數據信息:諸如訪問權限、文件擁有者以及文件數據塊的分布信息(inode…),時間戳等等。

  •    運用stat命令查看

           stat /PATH/TO/SOMEFILE:獲取指定文件的元數據

1467351130168484.jpg

  •  運用touch命令可以修改文件的時間戳信息

     touch [OPTION]… FILE…
            -a: only atime 只修改訪問時間
            -m: only mtime只更該變動時間;

            -t STAMP:
                [[CC]YY]MMDDhhmm[.ss]使用指定的日期時間,而非現在的時間;

            -c: 如果文件不存,則不予創建

1467353916802365.jpg


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

  •      定義一個命令的別名
              通過alias命令實現,alias NAME='VALUE'
                    (定義別名NAME,其相當于執行命令VALUE;)
                 e.g:alias cdnet ='cd /etc/sysconfig/network-scripts'

  •    在命令中引用另一個命令的執行結果

             COMMAND1 | COMMAND2 | COMMAND3 |…

       1467357086847356.jpg

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

1467344772425386.jpg


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

1467344851447336.jpg



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

1467345100646070.jpg


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

1467349447718112.jpg


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

1467346332174318.jpg


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

1467346220332851.jpg


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

1467346152379931.jpg

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

(0)
lelexlelex
上一篇 2016-07-04
下一篇 2016-07-04

相關推薦

  • 第二周作業

    第二周

    Linux干貨 2017-12-11
  • 記馬哥教育第30期Linux云計算面授班開班典禮

    記馬哥教育第30期Linux云計算面授班開班典禮

    2018-03-26
  • sed命令初識

    ? ? ? ?sed是一種流編輯器,它是文本處理中非常常用的工具,能夠配合正則表達式使用。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有 改變,除非你使用重定向存儲輸出。Sed主要用來自…

    Linux干貨 2017-12-03
  • Ansible (playbook)

    一、YAML 1.1 YAML介紹 YAML是一個可讀性高的用來表達資料序列的格式。YAML參考了其他多種語言,包括:XML、C語言、Python、Perl以及電子郵件格式RFC2822等。Clark Evans在2001年在首次發表了這種語言,另外Ingy d?t Net與Oren Ben-Kiki也是這語言的共同設計者。 YAML Ain’t Marku…

    Linux干貨 2017-11-01
  • 不重啟添加硬盤

    添加硬盤后 ls /dev/sd* 不重啟添加硬盤 [root@localhost ~]# cd /sys/class/scsi_host/ [root@localhost scsi_host]# ls host0? host1? host2 [root@localhost scsi_host]# echo “- – -”…

    Linux干貨 2017-10-21
  • linux中的管道符

    管道符 less只能看文件 但是這樣做會產生一個垃圾文件ls.txt,所以下面我們就會需要用到管道符 |只將傳遞正確結果傳遞給 而使用這兩種方法可以傳遞正確和錯誤的結果[root@localhost ~]# ls /etc/passwd /cpp/passwd 2>&1|less   ,  (2>&1…

    2017-07-22

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-04 13:38

    寫的很好,可以多關注一下排版問題,加油

欧美性久久久久