Linux中文件路徑及cp mv rm等命令的理解

  1. Linux中文件的相對路徑和絕對路徑

    wKiom1eazoDAPhMFAAAPD5G-eyI162.gif


      絕對路徑:

        以正斜杆開始

        完整的文件路徑位置

        可用於任何想指定的一個文件名

      相對路徑:

        不以斜線開始

        指定相對於當前工作目錄或某目錄的位置

        可以作爲一個簡短的形式指定一個文件名

  2. cd 改變目錄

    wKioL1eazrfi8EugAAASrWrcIvQ563.gif

    使用絕對路徑或者相對路徑

     cd  /etc/sysconfig/network-scripts

     cd  sysconfig/network-scripts

    切換至父目錄

     cd ..

    切換至當前用戶主目錄

     cd

    切換至以前的工作目錄

     cd -

    wKiom1eazszyYWsVAAAYFlsgg58855.gif

    相關環境變量

     PWD:保存了上次目錄路徑

     OLDPWD:上次所在目錄路徑

  3. 查看文件狀態stat

    wKiom1eaztujaNqWAAAlnQdyYxg089.gif

    文件: 文件屬性 元數據(metadata)

        數據(data)

    時間戳:

      access time:訪問時間,atime 讀取文件內容

      modify time:修改時間,mtime 改變文件內容(數據)

      change time:改變數據,ctime 元數據發生改變

  4. 文件通配符

     *    匹配零個或多個字符               [:digit:]  匹配任意的數字相當於0-9

     ?    匹配任何單個字符                 [:alpha:]  匹配所有的大小寫字母

     ~    當前用戶家目錄                  [:upper:]  匹配所有的大寫字母

     ~username 用戶家目錄                   [:lower:]  匹配所有的小寫字母

     ~+    當前工作目錄                   [:blank:]  水平空白字符

     ~-    前一個工作目錄                 [:alnum:]  匹配所有字母和數字

     [0-9]  匹配數字範圍                   [:punct:]  標點符號

     [a-z]  匹配字母 遵循的順序是[aAbBcC...xXyYzZ]  [:space:]  水平或垂直空白字符

     [A-Z]  大寫字母                      [:cntrl:]  控制(非打印)字符

     [wxy]  匹配列表中的任何一個字符           [:print:]  可打印字符

     [^wxy]  匹配列表中所有字符之外的字符        [:graph:]  圖形字符

                                     [:xdigit:]  十六進制字符

    wKiom1eazyehKrI-AAAtEswyqyQ313.gif

  5. touch命令

      touch [option]...file...

          -a  僅改變 atime

          -m  僅改變 mtime

          -t  STAMP

             [[CC]YY]MMDDhhmm[.ss]

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

    wKiom1eazzPBbeezAAAK1WWjSQI965.gif

    wKiom1eaz2uAByfLAABHcoET6Oo351.gif

  6. 複製文件和目錄cp

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

      cp [OPTION]...SOURCE...DIRECTORY

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

      cp SRC DEST

      SRC是文件:

             如果目標不存在,新建DEST,並將SRC中內容填充之DEST中

             如果目標存在:

                      如果DEST是文件,將SRC中的內容覆蓋至DEST中

                      如果DEST是目錄,在DEST下新建與原文件同名文件,並將SRC中內容填充之新文件中

    cp SRC...DEST

      SRC...: 多個文件

           DEST必須存在,且爲目錄,其他情況皆出錯

    cp SRC DEST

      SRC 是目錄:此時使用-r選項

             如果DEST不存在,則創建指定目錄,複製SRC中所有文件至DEST中

             如果DEST存在:

                      如果DEST是文件,則報錯

                      如果DEST是目錄,則複製     wKioL1ecBJ-CBA6TAAAOMdi7ybk279.gif


  7. cp [OPTIONS]

      -i 交互式

      -r -R 遞歸複製目錄及內部的所有內容

      -a 歸檔,相當於-dR --preserv=all

      -d --no-dereference --preserv=links 不復制原文件,只複製鏈接文件

      --preserv=:

             mode

             ownership

             timestamp

             links

             xattr

             context

             all

      -p 等同 --preserv=mode,ownership,timestamp

      -v --version

      -f --force


       wKioL1ecBMqQiqn5AAAKRKENAMI783.gif

  8. 別名命令

      顯示當前shell進程多有可以使用的命令別名:alias

      bash進程重新讀取配置文件

        source /path       . /path

      撤銷別名 unalias

        unalias [-a] name [name...]

      如果別名與原命令重名,如果想使用原命令

        "\COMMAND"

        `COMMAND`(反引號)

        絕對路徑

    wKiom1ecBOfh3325AAAZO7kSiKQ715.gif

  9. 移動和重命名文件 mv

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

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

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

          -i 交互式

         -f 強制性




    wKiom1ecBQnyNWVsAAAWtFh_Tko142.gif

  10. 刪除 rm

       -i 交互式

       -f 強勢刪除

       -r 遞歸

       --no-preserv-root

    wKioL1ecBR6hZDNgAAAMeJcS8zc572.gif

  11. 目錄操作

    tree 顯示目錄樹

       -d 只顯示目錄

       -L(level) 指定顯示的層級數目

       -P(pattern) 只顯示由指定pattern匹配到的路徑

   wKioL1eaz6TB4JX1AAAKp5RiZ1U569.gif

   mkdir 創建目錄

       -p 可自動創建所需的各級目錄

       -v 顯示詳細信息

       -m(mode) 創建目錄是指定權限

   rmdir 刪除空目錄

       -p 遞歸刪除父目錄

       -v 顯示詳細信息

13. 標準輸入和輸出

   程序:數據+指令

      讀入數據:Input

      輸出數據:Output

   打開的文件都有一個fd:file descriptor(文件描述符)

   標準輸入(STDIN): 0 默認接受來自鍵盤的輸入

   標準輸出(STDOUT): 1 默認顯示到終端窗口

   標準錯誤輸出(STDERR): 2 默認顯示到終端窗口

   I/O重定向:改變默認位置

   wKioL1ea0EWwniNtAAAK-S70TK0378.gif

   <:把STDIN重定向到文件

   >: 把STDOUT重定向到文件

   2>: 把STDERR重定向到文件

   &>: 把所有輸出重定向到文件  等同於2>&1

   wKiom1ea0GuT_hSMAAAPxXZBISY193.gif

   >: 文件內容會被覆蓋

    set -C:禁止將內容覆蓋已有文件,但可追加強制覆蓋:>|

    set +C:允許覆蓋

   >>: 原有內容基礎上,追加內容

   2>: 覆蓋重定向錯誤輸出數據流

   2>>:追加重定向錯誤輸出數據流

   &>: 覆蓋重定向  

   &>>: 追加重定向 

   wKiom1ea0MLzRFU7AAAUlG_v-Nk567.gif 

    find /etc -name passwd 2> /dev/null

   (): 合併多個程序的STDOUT

    (cal 2015; cal 2016 ) >all.txt

   wKiom1ea0N_yPGwAAAAOORfTRG4695.gif

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章