馬哥教育網絡班20期+第1周課程練習

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

相關命令:

    目錄管理:

        pwd:顯示當前工作目錄

        cd: 目錄間跳轉

           cd – :在上一個目錄和當前目錄間跳轉

           cd 或 cd ~ :回當前用戶的家目錄

        ls:顯示當前目錄下的內容

           ls -l: 長格式顯示   drwxr-xr-x.   3 root root  443  15 6月  12 12:01 opt

              drwxr-xr-x :最左側代表文件類型

                      -:普通文件

                      d:目錄

                      l:鏈接文件

                      b:塊設備

                      c:字符設備

                      p:管道文件

                      s:套接字文件

                   rwxr-xr-x:每三位分別對應屬主屬組其他用戶的讀寫執行權限。

                         3:文件被硬鏈接次數

                         root:文件的屬主

                         root:文件的屬組

                         數字:文件大小

                         date:文件最后一次被修改的時間

              ls -h (human-readable): 單位換算,人可讀

              ls -d : 顯示目錄自身的相關屬性

           ls -r : 逆序顯示

           ls -R : 遞歸顯示

         mkdir:創建目錄 

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

              -v: 顯示細節

              -m: 創建時直接指定權限

         rmdir:刪除空目錄

         tree: 樹狀顯示目錄下內容

             -d:只顯示目錄

             -L #:level 顯示幾個層級

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

    文件查看類命令:

         cat:查看文件

         tac:逆序查看文件

         more,less:查看文件 可翻頁查看

         head:

            -c #:截取前#個字節

            -n #:截取前n行

         tail:

            -c #: 截取后#個字節

            -n #:截取后n行

   文件時間戳管理命令:

         touch :

           三個時間戳:

               access time:訪問時間,簡寫為atime,讀取文件內容時改變

              modify time: 修改時間,簡寫為mtime,修改文件內容時改變

               change time:改變時間,簡寫ctime,元數據發生改變時改變

              -a:only access time

              -m: only mtime

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

     

    文件管理:

         cp:拷貝 cp SRC DEST

           SRC是文件:

                DEST:不存在:新建,拷貝填充

                    文件存在:覆蓋

                    DEST是目錄:則在其下創建新的,拷貝填充

           SRC是多文件:

                DEST必須是目錄且存在

           SRC是目錄:

                必須使用-r選項

                DEST不存在:則創建指定目錄,復制SRC目錄中的所有文件到DEST中去

                DEST存在,且必須是目錄,否則報錯

                常用選項:

                  -r:遞歸復制

                  -i:交互式

                  -a:歸檔式復制

                  -p:–preserve=mode,ownership,timestamp

                  -v: 可見

                  -f: force

         mv:移動

              mv SRC DEST

         rm:刪除

              -i:交互式刪除

              -r: 遞歸刪除

              -f: 強制刪除

           

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

工作特性:

     (1)命令歷史:

           history:內容存儲在~/.bash_history

                history #: 顯示命令歷史中最近的#條

                history -a:追加當前回話緩沖區的命令歷史至歷史文件

           調用命令歷史中的命令:

                !#:調用哪一條命令

                ?。。荷弦粭l命令

                !string:匹配上一次string的命令

           調用上一次的最后一個參數:

                !$:

                ESC, .

                Alt+.

     (2) 命令補全 Tab鍵

     (3) 路徑補全

    (4)命令行展開

    (5)命令的執行結果狀態

    (6)命令別名 alias NAME="value"

            僅對當前用戶:~/.bashrc

            對所有用戶有效:/etc/bashrc

     (7)glob 

          1.通配符:*,?,[],[^]

          2.專用字符集和:

             [:digit:],[:lower:],[:upper:],[:alpha:],[:alnum:],[:grapha:]       

     (8)bash快捷鍵

    (9)bash的IO重定向及管道

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

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

      touch /tmp/{a,b}_{c,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 /tmp/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}}

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

[root@localhost test]# stat sort.sh 

  文件:"sort.sh"

  大小:63         塊:8          IO 塊:4096   普通文件

設備:fd01h/64769d Inode:104058236   硬鏈接:1

權限:(0755/-rwxr-xr-x)  Uid:(    0/    root)   Gid:(    0/    root)

環境:unconfined_u:object_r:user_tmp_t:s0

最近訪問:2016-06-14 21:48:14.750364346 +0800

最近更改:2016-06-14 21:48:32.367570367 +0800

最近改動:2016-06-14 21:48:32.367570367 +0800

創建時間:-


touch -a: 只改變訪問時間

touch -m:只改變修改時間

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

   alias name="command"

   $(command)或者`command`


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

   ls /var/ | grep "^1.*[[:digit:]]\+.*[[:lower:]]$"


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

   ls /etc/ | grep "^[[:digit:]].*[^[:digit:]]$"

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

   ls /etc/ | grep "^[^[:alpha:]][[:alpha:]].*"


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

    cd /tmp/ 

    touch tfile-$(date +%F-%H-%M-%S)


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

  cp -r $(ls /etc | grep "^p.*[^[:digit:]]$") /tmp/mytest1


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

 cp -r $(ls /etc/ | grep "\(\.d\)$") /tmp/mytest2


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

 cp $(ls /etc/ | grep "^[1,m,n].*\(\.conf\)$")  /tmp/mytest3

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

(0)
love_in_linuxlove_in_linux
上一篇 2016-06-23
下一篇 2016-06-23

相關推薦

  • CentOS7修改網卡為eth0

    1.編輯網卡信息 [root@linux~]# cd /etc/sysconfig/network-scripts/  #進入網卡目錄 [root@linux~network-scripts]# mv ifcfg-eno16777728 ifcfg-eth0  #重命名網卡名稱 [root@linux network-…

    Linux干貨 2016-10-25
  • elk

    轉載,供日后回查

    2018-07-31
  • Linux入門之計算機組成及其功能

    計算機基礎以及Linux基礎

    2018-03-06
  • Linux 命令

    screen 創建會話

    2018-04-07
  • 第一周博客 計算機組成及Linux基礎入門

    1、描述計算機組成及其功能。
    2、描述羅列Linux的發行版,并描述不同發行版之間的聯系和區別。
    3、描述Linux的哲學思想,并按照自己的理解對其進行解釋。
    4、說明Linux系統上命令的使用格式,詳細介紹ifconfig、echo、tty、startx、export、pwd、history、
    shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例說明闡述。
    5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分。
    6、請羅列Linux發行版的基礎目錄名稱命名法則及功能規定。

    2017-12-02
  • 第四周作業

    1.復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限 [root@localhost ~]# cp -r /etc/skel/ /home/tuser1 [root@localhost ~]# chmod go= /home/tuser1/ -R [root@localhost …

    Linux筆記 2018-06-03

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-06-23 11:38

    寫的很棒,cp的時候是不是可以直接支持正則表達式那?可以嘗試一下

欧美性久久久久