N26-第二周

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

  1)alias:命令別名;

    # alias ;獲取所有可用別名的定義;

    # alias NAME=‘COMMAND’:定義別名;

        ~]# alias hello='ls' 

        ~]# hello /tmp/

        19-52-46  1abc   a_c  b_c   

    # unalias NAME ;撤銷別名;

        ~]# unalias hello

  2)which:shows the full path of (shell) commands

    which [options] programname […]

    

     ~]# which ls

     alias ls='ls –color=auto'

     /usr/bin/ls

    不顯示命令別名:

    ~]# \which ls

    /usr/bin/ls

    ~]# which ls –skip-alias

    /usr/bin/ls

  3)whereis :locate the binary, source, and manual page files for a command

    whereis [options]  name…

       -b     Search only for binaries.

            僅搜索二進制程序路徑;

         -m     Search only for manuals.

              僅搜索使用手冊文件路徑;

  4)history:命令歷史;

    

    (1)定制history的功能,可通過環境變量實現:

     HISTSZIE:shell進程可保留的命令歷史的條數:

     [root@localhost ~]# echo $HISTSIZE

     1000

     HISTFILE:持久保存命令歷史的文件; .bash_history

     [root@localhost ~]# echo $HISTFILE

     /root/.bash_history

     HISTFILESIZE:命令歷史文件的大小;

     [root@localhost ~]# echo $HISTFILESIZE

     1000

    (2)命令用法:

     history [-c] [-d 偏移量] [n] 

    或 

     history -anrw [文件名] 

    或 

    history -ps 參數 [參數…]

        -c        刪除所有條目從而清空歷史列表。

         -d offset偏移量 從指定位置刪除歷史列表。

         -w        將當前歷史寫入到歷史文件中,并追加到歷史列表中

         -r  從文件讀取命令歷史至歷史列表中

         -w  把歷史列表中的命令追加至歷史文件中

      # history NUMBER :顯示最近的NUMBER條命令

   (3)調用命令歷史列表中的命令:

      !NUM :再一次執行歷史列表中的第NUM條命令;

      !!  :再一次執行上一條命令;

      !STRING:再一次執行命令歷史列表中最近一個以STRING開頭的命令;

       注意:命令的重復執行有時候需要依賴于冪等性:(可成功執行)

      調用上一條命令的最后一個參數:

      a)快捷鍵:ESC鍵+. 

       b)字符串:!$

   (4)控制命令歷史記錄的方式;

      環境變量:HISTCONTORL

           [root@localhost ~]# echo $HISTCONTROL

          ignoredups

       ignoredups:忽略重復的命令;

       ignorespace:忽略以空白字符開頭的命令;

       ignoreboth:以上兩者同時生效;

  5)文件查看類命令:

   (1)more命令:

     more FILE

    特點:翻屏至文件尾部后自動退出;

   (2)less命令:

     less FILE

     man調用的就是less命令

   (3)head命令:

     查看文件的前n行;默認10行;

     head [options] FILE

         -n [NUM]

         -[NUM]

   (4)tail命令:

     查看文件的后n行;默認10行;

     tail [options] FILE

         -n [NUM]

         -[NUM]

         -f:查看文件尾部內容結束后不退出,跟隨顯示新增內容;

   (5)stat命令:

     stat – display file or file system status

     stat  FILE…

  6)touch :change file timestamps       

        touch [OPTION]… FILE…

             -c:指定的文件路徑不存在時,不予創建;

             -a:改變訪問時間,access time

             -m:改變更改時間,modify time

             -t:STAMP

                   [[CC]YY]MMDDhhmm[.ss] 

        touch FILE  創建空文件

  7)cp:copy    

    單源復制:cp [OPTION]… [-T] SOURCE DEST

     多源復制:cp [OPTION]… SOURCE… DIRECTORY

         cp [OPTION]… -t DIRECTORY SOURCE…

     (1)單源復制:cp [OPTION]… [-T] SOURCE DEST

       如果DEST不存在,則事先創建此文件,并復制源文件的數據流至DEST中;

       如果DEST存在:

         如果DEST是非目錄文件:則覆蓋目標文件;

         如果DEST是目錄文件:則先在DEST目錄下創建一個與源文件同名的文件,并復制其數據流;

     (2)多源復制:cp [OPTION]… SOURCE… DIRECTORY

             cp [OPTION]… -t DIRECTORY SOURCE…

       如果DEST不存在:錯誤;

       如果DEST存在:

         如果DEST是非目錄文件,錯誤;

         如果DEST是目錄文件,分別復制每個文件至目標目錄中,并保持原名;

     (3)常用選項:

        -i:交互式復制,即覆蓋之前提醒用戶確認;

        -f:強行覆蓋目標文件;

        -r,-R:遞歸復制目錄;復制目錄及目錄中文件;

        -d:復制符號鏈接文件本身,而非其指向的源文件;

        -a: -dR –preserve=all,archive,用于實現歸檔;

        –preserv=

        mode:權限

             owership:屬主和屬組

        timestamps:時間戳

        context:安全標簽

        xattr:擴展屬性

        links:符號鏈接

        all:上述所有屬性

  8)mv:move  

    mv [OPTION]… [-T] SOURCE DEST

     mv [OPTION]… SOURCE… DIRECTORY

     mv [OPTION]… -t DIRECTORY SOURCE…

      常用選項:

      -i:交互式;

      -f:force

 9)rm:remove    

     rm [OPTION]… FILE…

      常用選項:

      -i:交互式;

      -f:force

          -r:遞歸刪除目錄,recursive

      刪除目錄:rm -rf /PATH/TO/DIR

      危險操作:rm -rf /*

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

    1)命令執行的狀態結果:

    bash通過狀態返回值來輸出此結果:

        成功:0

         失敗:1-255

    命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中;  

        [root@localhost etc]# ls dd

        ls: 無法訪問dd: 沒有那個文件或目錄

        [root@localhost etc]# echo $?

        2

         [root@localhost etc]# lss

        -bash: lss: 未找到命令

        [root@localhost etc]# echo $?

        127

    命令正常執行時,有的還會有命令返回值:

    根據命令及其功能不同,結果各不相同;

    

    2)引用命令的執行結果:

     $(COMMAND)

    

     `COMMAND`

         [root@localhost tmp]# mkdir $(date +%H-%M-%S)

         [root@localhost tmp]# ll

         總用量 4

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-46

         [root@localhost tmp]# mkdir $(date +%H-%M-%S)

         [root@localhost tmp]# ll

              總用量 4

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-46

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-54

    3)命令行展開:    

    ~ :自動展開為用戶的家目錄,或指定的用戶的家目錄;

    {};可承載一個以逗號分隔的路徑列表,并能夠將其展開為多個路徑;

    1、創建/tmp/x/y1,/tmp/x/y2,/tmp/x/y1/a,/tmp/x/y1/b 目錄;

    blob.png

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

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

    blob.png

  2)創建/tmp/mylinux目錄;

blob.png

blob.png

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

  1)任何文件系統中的數據分為數據和元數據。數據是指普通文件中的實際數據,而元

數據指用來描述一個文件的特征的系統數據,諸如訪問權限、文件擁有者以及文件數據塊的分布信息(inode…)等等。在集群文件系統中,分布信息包括文件在磁盤上的位置以及磁盤在集群中的位置。用戶需要操作一個文件必須首先得到它的元數據,才能定位到文件的位置并且得到文件的內容或相關屬性。

  2)stat:display file or file system status

    stat  FILE…  

    blob.png

  3)時間戳:

    access time(最近訪問)

    modify time(最近更改)

    change time(最近改動)

  4)touch:change file timestamps

     touch [OPTION]… FILE…

         -c:指定的文件路徑不存在時,不予創建;

         -a:改變訪問時間,access time

         -m:改變更改時間,modify time

         -t:STAMP

              [[CC]YY]MMDDhhmm[.ss] 

     (1)更改訪問時間(access time):

    blob.png

    (2)更改更改時間(modify time)    

    blob.png

    

    (3)使用[[CC]YY]MMDDhhmm[.ss]格式更改成確切的時間:    

    blob.png

    (4)也可以使用-d,改變日期;    

    blob.png

    

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

  1)定義命令別名:

    blob.png

  2)重定向:

    (1)> :覆蓋輸出

      >>:追加輸出

        blob.png

   (2)錯誤輸出流重定向:2> ; 2>>

   (3)合并正常和錯誤輸出流:

     1)&> ; &>>

     blob.png

    (4)合并輸出:

       blob.png

    (5)命令的引用:

     blob.png

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

  blob.png

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

  blob.png

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

  blob.png

9、在/tmp目錄下創建以tfile開頭,后跟當前日子和時間的文件。

  blob.png

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

  blob.png

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

  blob.png

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

  blob.png

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

(0)
徐 琦徐 琦
上一篇 2017-02-11
下一篇 2017-02-11

相關推薦

  • Linux高級文件系統管理之磁盤配額、軟RAID及LVM

    高級文件系統管理之磁盤配額、軟RAID及LVM   本章內容: 設定文件系統配額 設定和管理軟RAID設備 配置邏輯卷   一、文件系統配額:     執行軟限制(soft limit) 硬限制(hard limit)     注:磁盤配額只能針對分區控制有效,不能對整個磁盤控制…

    Linux干貨 2016-09-01
  • 馬哥教育網絡班21期+第6周課程練習

    請詳細總結vim編輯器的使用并完成以下練習題 1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; [root@centos ~]# cp /etc/rc.d/rc.sysinit /tmp/ [root@centos&nbs…

    Linux干貨 2016-07-27
  • 分布式存儲 Mogilefs 部署

    MogileFS是一個開源的分布式存儲的解決方案,主要工作組件由三部分組成:Tracker節點:生成映射表存儲于DB,并用于接收客戶端請求,通過查詢數據庫對客戶端提供后端所存儲的真實文件位置DB節點:主要存儲數據的元數據信息,可以理解為客戶端來獲取數據文件時提供的Key和真實存在存儲里面的文件名的對照表Storage節點:用于存儲文件的節點。工作流程,tra…

    2017-03-04
  • Linux任務計劃

    Linux任務計劃,周期性任務執行         未來的某時間點執行一次某任務:at, batch          周期性運行某任務:crontab                 &n…

    Linux干貨 2016-12-31
  • 計算機的組成及其功能

    1.計算機的組成及其功能 1.1計算機的硬件基本結構 從ENIAC到當前最先進的計算機都采用的是馮·諾依曼體系結構分別是:控制器,運算器,存儲器,輸入與輸出設備 控制器:將指令逐條從存儲器中取出,經譯碼分析后向全機發出相應         的操作控制信號作用于其他部件,使各部件有…

    Linux干貨 2016-10-28
  • 為你的網絡傳輸加把鎖(OpenSSL)

    互聯網形成的初期,更多關注的是設備之間通過網絡相互訪問功能的實現,我們都知道,兩個設備之間要想相互通信,就必需遵循某種協議,于是早期的互聯網也出現來眾多的協議,比如傳輸層最著名的協議就是tcp和udp,而應用層比較著名的協議有:http、ftp、pop、smtp、dns、telnet等等,而這些協議這開發初期,更多是關注功能的實現,數據這網絡上傳輸是明文方式…

    Linux干貨 2015-12-06

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-03-02 19:54

    非常的詳細和認真,加油,再接再勵。

欧美性久久久久