第二周 博客作業

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

文件管理命令:rm  mv cp

      cp 復制命令

      cp   源文件   目標文件 

         工作機制:如果目標是一個目錄,則以源文件同樣的名字,創建到目標目錄下,再把數據添加進去;如果目標不是一個目錄,則先查看以目標命名文件是否存在,如不存在,則以指定的目標文件名,創建一個文件,并將源文件數據導入,如存在,責詢問是否覆蓋;復制多個源文件時,需要先創建目錄,如果目標目錄不存在,則失敗,目標文件不為目錄,也會失敗。

  

   常用選項:

        

        -f= force,不詢問是否覆蓋,直接覆蓋。

        -a= 會復制源文件的所有元數據。

       -r\-R= 遞歸復制目錄

             cp /etc/issue /tmp        復制etc下的issue到tmp目錄下

             cp /etc/issue /tmp/11123  復制etc下的issue到tmp目錄下并改名11123

             cp /etc/issue /etc/redhat-release /tmp  復制etc下的issue和redhat-release到tmp目錄下

             cp -r /etc /tmp           復制etc下的所有文件到tmp目錄下

             

       mv  改名、剪切命令

   

            mv   源文件  目標文件

         工作機制和cp命令相同,只是是剪切文件,如果源文件和目標文件都為同一個目錄是則就等于改名。

 

    常用選項:

                    -i= 交互式

                  -f= force 

 

    rm  刪除文件

         rm   選項   文件

     常用選項:

             -r= 遞歸刪除

             -f= force 強制執行,不詢問

              -i= 交互式

         rm -rf /tmp/etc          刪除/tmp下的etc目錄,不詢問,強制刪除

linux中刪除文件后幾乎無法找回,建議創建一個目錄做為保存不用的文件存儲,過一段時間確定不用,在進行刪除

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

    bash基礎特性: 命令行展開和命令狀態返回值

       命令行展開 {} 

         

            如果要對多個文件進行操作,且都路徑相近時,可以用花括號代替寫重復的路徑;

       例:

          要查看/etc/issue和/etc/redhat-release 內容

          可以寫成  cat /etc/issue /etc/redhat-release 

          使用命令行展開功能

          則寫成    cat etc/{issue,redhat-release}

   

       命令狀態返回值

          

          我們在輸入一個命令,例如敲一個命令在屏幕上返回的結果稱為命令執行結果,一個命令敲完時,使用$?查看命令返回值 0位成功執行 1-255位執行失敗。

例:

          ls /

           $?   狀態返回值為0

           lss /

           $?   狀態返回值不為0 表示上一條命令執行錯誤

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

     1:

         mkdir /tmp/{a,b}_{c,d}

         mkdir /tmp/{a_{c,d},b_{c,d}}

     2:

         mkdir -p /tmp/mylinux/{bin,boot/{grub},dev,etc/{xc.d/init.d,sysconfig/network-scripts},lib/nodules,lib64,proc,sbin,sys,tmp,user/local/{bin,sbin},var/{lock,log,run}}

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

     使用stat命令查看所有元數據

     stat /tmp    查看tmp目錄的元數據   輸出結果為下:

                文件:"/tmp"

大?。?096       塊:8          IO 塊:4096   目錄

設備:fd00h/64768d Inode:8388738     硬鏈接:7

權限:(1777/drwxrwxrwt)  Uid:(    0/    root)   Gid:(    0/    root)

環境:system_u:object_r:tmp_t:s0

最近訪問(accees time):2016-11-02 16:16:58.165040911 +0800

最近更改(modify time):2016-11-02 16:16:56.329040766 +0800

最近改動:2016-11-02 16:16:56.329040766 +0800

創建時間:-

主要關注最近訪問時間(access time)和最近更改時間(modify time) 訪問時間指的是最后一次類似于cat命令查看時的時間,最近更改則為里面的內容改動,最近改動指的是上述兩種任意時間改動,均會改動,這三種時間稱為時間戳信息。

        可以使用touch改動時間戳  

  touch   FILE

選項:

           -a=改動access time

           -m=改動modify time

           -t=改為指定時間(如不指定都會將時間改為當前時間)

        示例:

            touch -a -t 201111111111.11 FILE   將FILE的access time 改為2011年11月11日11點11分11秒。

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

     alias  定義命令別名。

     示例 :  alias mm='date'

     定義之后敲入mm命令=執行date, 只對當前shell有效,登出失效

     使用$(COMMAND)或者` `命令引用  列入我要將當前時間追加寫入文件/tmp/123中:

     

     echo `date` >> /tmp/123

     

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

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

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

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

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

    

   ls /etc/[^[:alpha:]][[:alpha:]]*

   ls /etc/[^a-z][a-z]*

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

   

   touch /tmp/tfile`date +%Y-%m-%d-%H-%M-%S`

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

   mkdir /tmp/mytest2

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

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

   mkdir /tmp/mytest2 

   cp -r /etc/*.d /tmp/mytest2

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

   mkdir /tmp/mytest3

   cp -r /etc/[lmn]*.conf /tmp/mytest3

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

(0)
N24_GhostN24_Ghost
上一篇 2016-11-03
下一篇 2016-11-03

相關推薦

  • 第七周練習

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; 1.[root – gwx ~]#>fdisk /dev/sdb2.W…

    Linux干貨 2016-12-11
  • 磁盤管理

    設備文件 I/O Ports: I/O 設備地址 一切皆文件: open(), read(), write(), close() 設備類型: 塊設備:block ,存取單位“塊”,磁盤 [root@localhost ~]# ll /dev/ brw-rw—-. 1 root disk 253, 0 Apr 29 03:53 dm-0 塊設備 brw-r…

    2017-04-28
  • 虛擬網卡實驗:網卡別名 與 bond多網卡模式

     一、網卡別名:多IP 綁定一個 Interface        ? 將多個IP地址綁定到一個NIC上            網卡別名:    &n…

    Linux干貨 2016-09-05
  • Linux內核編譯過程詳解

    前言 Linux內核是Linux操作系統的核心,也是整個Linux功能體現的核心,就如同發動機在汽車中的重要性。內核主要功能包括進程管理、內存管理、文件管理、設備管理、網絡管理等。Linux內核是單內核設計,但卻采用了微內核的模塊化設計,支持內核線程以及動態裝載內核模塊的能力。 Linux作為一個自由軟件,在廣大愛好者的支持下,內核版本不斷更新。新的內核修訂…

    Linux干貨 2015-04-01
  • 學習宣言

    人所缺乏的不是才干而是志向,不是成功的能力而是勤勞的意志。

    Linux干貨 2016-10-30
  • Windows與linux分區的區別:

        對于我們普通人來講,分區就是我們看到的“我的電腦”下面的C盤、D盤、E盤······,每個分區都有自己的區域,無法使用別的分區的空間,這樣可以起到保護分區中文件的作用。其實,這樣很容易理解??墒?,對于linux初學者來講,因為使用習慣了windows,到了linux下面,一下子很難轉換過來。  &nb…

    2017-07-16

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-11-10 20:13

    總結的比較詳細,能注意下排版會更好~加油~

欧美性久久久久