第二周課堂練習

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

        ls

    ls命令用來顯示目標列表,在Linux中是使用率較高的命令。
     -a:顯示所有檔案及目錄(ls內定將檔案名或目錄名稱為“.”的視為影藏,不會列出); 
    -A:顯示除影藏文件“.”和“..”以外的所有文件列表; 
    -C:多列顯示輸出結果。這是默認選項; 
    -l:與“-C”選項功能相反,所有輸出信息用單列格式輸出,不輸出為多列;
    -F:在每個輸出項后追加文件的類型標識符,具體含義:“*”表示具有可執行權限的普通文件,“/”表示目錄,“@”表示符號鏈接,“|”表示命令管道FIFO,“=”表示sockets套接字。當文件為普通文件時,不輸出任何標識符; 
    -b:將文件中的不可輸出的字符以反斜線“”加字符編碼的方式輸出; 
    -c:與“-lt”選項連用時,按照文件狀態時間排序輸出目錄內容,排序的依據是文件的索引節點中的ctime字段。與“-l”選項連用時,則排序的一句是文件的狀態改變時間; 
    -d:僅顯示目錄名,而不顯示目錄下的內容列表。顯示符號鏈接文件本身,而不顯示其所指向的目錄列表; -f:此參數的效果和同時指定“aU”參數相同,并關閉“lst”參數的效果; 
    -i:顯示文件索引節點號(inode)。一個索引節點代表一個文件; 
    --file-type:與“-F”選項的功能相同,但是不顯示“*”; 
    -k:以KB(千字節)為單位顯示文件大?。?nbsp;
    -l:以長格式顯示目錄下的內容列表。輸出的信息從左到右依次包括文件名,文件類型、權限模式、硬連接數、所有者、組、文件大小和文件的最后修改時間等; 
    -m:用“,”號區隔每個文件和目錄的名稱; 
    -n:以用戶識別碼和群組識別碼替代其名稱; 
    -r:以文件名反序排列并輸出目錄內容列表; 
    -s:顯示文件和目錄的大小,以區塊為單位; 
    -t:用文件和目錄的更改時間排序; 
    -L:如果遇到性質為符號鏈接的文件或目錄,直接列出該鏈接所指向的原始文件或目錄; 
    -R:遞歸處理,將指定目錄下的所有文件及子目錄一并處理; 
    --full-time:列出完整的日期與時間; 
    --color[=WHEN]:使用不同的顏色高亮顯示不同類型的。
    
        ls -l
        total 1068
        -rw-r--r--  1 root root       0 Sep  9 04:49 10082016
        -rw-r--r--  1 root root       0 Sep  9 04:55 1511142234.00
        -rw-r--r--  1 root root       0 Sep  9 04:56 1611142234.00
        -rw-r--r--  1 root root       0 Sep  9 04:53 201211142234.50
        -rw-r--r--  1 root root       0 Sep  9 04:57 201411111111.00
        -rw-r--r--  1 root root       0 Sep  9 04:54 201511142234
        -rw-r--r--  1 root root       0 Sep  9 04:54 201511142234.50
        -rw-r--r--  1 root root       0 Sep  9 04:58 201511152234.50

        cp

        cp命令用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄
        -a:此參數的效果和同時指定"-dpR"參數相同; 
        -d:當復制符號連接時,把目標文件或目錄也建立為符號連接,并指向與源文件或目錄連接的原始文件或目錄; 
        -f:強行復制文件或目錄,不論目標文件或目錄是否已存在;
        -i:覆蓋既有文件之前先詢問用戶; 
        -l:對源文件建立硬連接,而非復制文件; 
        -p:保留源文件或目錄的屬性; 
        -R/r:遞歸處理,將指定目錄下的所有文件與子目錄一并處理; 
        -s:對源文件建立符號連接,而非復制文件; 
        -u:使用這項參數后只會在源文件的更改時間較目標文件更新時或是名稱相互對應的目標文件并不存在時,才復制文件; 
        -S:在備份文件時,用指定的后綴“SUFFIX”代替文件的默認后綴; 
        -b:覆蓋已存在的文件目標前將目標文件備份; 
        -v:詳細顯示命令執行的操作。

        mv

        mv命令用來對文件或目錄重新命名,或者將文件從一個目錄移到另一個目錄中。
        --backup=<備份模式>:若需覆蓋文件,則覆蓋前先行備份; 
        -b:當文件存在時,覆蓋前,為其創建一個備份; 
        -f:若目標文件或目錄與現有的文件或目錄重復,則直接覆蓋現有的文件或目錄; 
        -i:交互式操作,覆蓋前先行詢問用戶,如果源文件與目標文件或目標目錄中的文件同名,則詢問用戶是否覆蓋目標文件。用戶輸入”y”,表示將覆蓋目標文件;輸入”n”,表示取消對源文件的移動。這樣可以避免誤將文件覆蓋。 --strip-trailing-slashes:刪除源文件中的斜杠“/”; 
        -S<后綴>:為備份文件指定后綴,而不使用默認的后綴; 
        --target-directory=<目錄>:指定源文件要移動到目標目錄; 
        -u:當源文件比目標文件新或者目標文件不存在時,才執行移動操作。

        rm

        rm命令可以刪除一個目錄中的一個或多個文件或目錄,也可以將某個目錄及其下屬的所有文件及其子目錄均刪除掉
        -d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄; 
        -f:強制刪除文件或目錄; 
        -i:刪除已有文件或目錄之前先詢問用戶; 
        -r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一并處理; 
        --preserve-root:不對根目錄進行遞歸操作; 
        -v:顯示指令的詳細執行過程。

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

        0 成功
        1-255 失敗
        [root@myserver ~]#cat tesss
        cat: tesss: No such file or directory
        [root@myserver ~]# echo $?
        1
        [root@myserver ~]# ls
        anaconda-ks.cfg  emun.txt  test  text.txt
        [root@myserver ~]# echo $?
        0
        [root@myserver ~]# ca test
        -bash: ca: command not found
        [root@myserver ~]# echo $?
        127
        [root@myserver ~]# ls te
        ls: cannot access te: No such file or directory
        [root@myserver ~]# echo $?
        2

3、請使用命令行展開功能來完成以下練習:
   (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d

        mkdir {a,b}_{c,d}
        ls
        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

        mkdir -pv mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scipts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{var,log,run}}
        tree mylinux/
        mylinux/
        ├── bin
        ├── boot
        │   └── grub
        ├── dev
        ├── etc
        │   ├── rc.d
        │   │   └── init.d
        │   └── sysconfig
        │       └── network-scipts
        ├── lib
        │   └── modules
        ├── lib64
        ├── proc
        ├── sbin
        ├── sys
        ├── tmp
        ├── usr
        │   └── local
        │       ├── bin
        │       └── sbin
        └── var
            ├── log
            ├── run
            └── var

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

        stat history.txt                 
                File: ‘history.txt’
                Size: 19445         Blocks: 40         IO Block: 4096   regular file
                Device: fd00h/64768d    Inode: 101942074   Links: 1
                Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
                Access: 2016-09-09 04:49:46.888113148 +0800
                Modify: 2016-09-09 04:44:57.963768809 +0800
                Change: 2016-09-09 04:49:46.888113148 +0800
                Birth: -
          
        touch命令有兩個功能:一是用于把已存在文件的時間標簽更新為系統當前的時間
        -a:或--time=atime或--time=access或--time=use 只更改存取時間; 
        -c:或--no-create 不建立任何文件; 
        -d:<時間日期> 使用指定的日期時間,而非現在的時間; 
        -f:此參數將忽略不予處理,僅負責解決BSD版本touch指令的兼容性問題; 
        -m:或--time=mtime或--time=modify 只更該變動時間; 
        -r:<參考文件或目錄> 把指定文件或目錄的日期時間,統統設成和參考文件或目錄的日期時間相同; 
        -t:<日期時間> 使用指定的日期時間,而非現在的時間; 
        --help:在線幫助; --version:顯示版本信息。
        
        touch -t 201211142234.50 history.txt 
        stat history.txt
                File: ‘history.txt’
                Size: 19445         Blocks: 40         IO Block: 4096   regular file
                Device: fd00h/64768d    Inode: 101942074   Links: 1
                Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
                Access: 2012-11-14 22:34:50.000000000 +0800
                Modify: 2012-11-14 22:34:50.000000000 +0800
                Change: 2016-09-09 04:53:06.991823108 +0800
                Birth: -

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

        alias命令用來設置指令的別名                
        alias 新的命令='原命令 -選項/參數
        
        alias
            alias cp='cp -i'
            alias egrep='egrep --color=auto'
            alias fgrep='fgrep --color=auto'
            alias grep='grep --color=auto'
            alias l.='ls -d .* --color=auto'
            alias ll='ls -l --color=auto'
            alias ls='ls --color=auto'
            alias mv='mv -i'
            alias rm='rm -i'
            alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
            
         命令引用:
        name=`COMMAND`, name=$(COMMAND)
        wc -l `ls test.txt`
        4 test.txt

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

(0)
kirin_13kirin_13
上一篇 2016-09-15 22:20
下一篇 2016-09-15 22:21

相關推薦

  • 運行級別

    運行級別(Runlevel)指的是Unix或者Linux等類Unix操作系統下不同的運行模式。運行級別通常分為7等,分別是從0到6,但如果必要的話也可以更多。 例如在大多數Linux操作系統下一共有如下7個典型的運行級別: 0 停機,關機 1 單用戶,無網絡連接,不運行守護進程,不允許非超級用戶登錄 2 多用戶,無網絡連接,不運行守護進程 3 多用戶,正常啟…

    Linux干貨 2017-07-10
  • Linux下使用screen協同作業

    1)screen應用場景(拷貝自網絡): 來自產品工程的高級維護用戶 David 打電話說:“為什么我不能在您部署的這些新機器上編譯 supercode.c”。 您會問他:“您運行的是什么機器?” David 答道:“ Posh”。(這個虛夠的公司將它的 5 臺生產服務器以紀念 Spice Girls 的方式命名)。這下您可以大顯身手了,另一臺機器由 Dav…

    系統運維 2016-08-15
  • Linux系統壓縮和解壓縮工具gzip、bzip2、xz以及tar打包工具總結

    在Linux系統使用過程中,對于一些不是常用的文件,利用cpu的時間資源對文件進行壓縮可以節省一定的磁盤空間,對系統中某個目錄經常會有備份的需求,可以使用Linux系統中的tar打包工具實現,文件的壓縮對于大量的網絡文件傳輸可以節約帶寬,同時也能降低服務器的負載,我們經常需要從網站下載軟件包到本地主機,這些包基本都是打包壓縮的,要想使用安裝,需要我們解壓縮他…

    Linux干貨 2016-08-18
  • 文件的元數據

    2018-03-11

    2018-03-11
  • linux 軟件包管理

    1、Linux軟件包管理 Redhat, SUSE: RPM Redhat Package Manager PRM is Package Manager 前端工具:yum, apt-get 后端工具:RPM, dpt   2、rpm: 數據庫:/var/lib/rpm  rpm包: 軟件包作者下載源程序,編譯配置完成后,制作成rpm包 格…

    Linux干貨 2017-08-06
  • Linux網絡屬性配置

      如何將linux主機接入到TCP/IP網絡中:     第一步:         配置IP/NETMASK(ip地址、子網掩碼):本地通信     第二步:   &n…

    Linux干貨 2016-12-16

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-19 18:44

    沒寫完吧?

欧美性久久久久