馬哥教育第21班網絡版第二周作業

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

常用文件管理類命令有cp、mv、rm

# cp命令:文件復制命令

    cp [OPTION]… [-T] SOURCE DEST 單文件復制

    cp [OPTION]… SOURCE… DIRECTORY 多源文件復制

    cp [OPTION]… -t DIRECTORY SOURCE… 多源文件復制的另一種方式

常用選項:

    -i:交互之前提醒用戶確認

    -f:強行覆蓋

    -r:遞歸復制目錄;即復制文件及目錄

    -d:復制鏈接文件本身,而非復制其鏈接的源文件

    -a:相當于 –drarchive用于實現歸檔

    –preserv=

             Mode:權限

             Ownetship:屬主和屬組

             Timestamps:時間戳

             Xattr:擴展屬性

             Links:符號鏈接

             All:上述所有屬性

 

單文件復制演示:

[root@localhost ~]# cp /var/log/boot.log /tmp/chenggb/
[root@localhost ~]# ls /tmp/chenggb/
boot.log

多源復制演示:

[root@localhost ~]# cp /var/log/{btmp,dmesg} /tmp/chenggb
[root@localhost ~]# ll /tmp/chenggb
總用量 112
-rw-r--r--. 1 root root 12838 7月  18 15:41 boot.log
-rw-------. 1 root root     0 7月  18 15:44 btmp
-rw-r--r--. 1 root root 94994 7月  18 15:44 dmesg

多源復制演示2:

[root@localhost ~]# cp -ir /var/log /tmp/log
[root@localhost ~]# ll /tmp/log/
總用量 2128
drwxr-xr-x. 2 root root    4096 7月  18 15:46 anaconda
drwxr-x---. 2 root root      22 7月  18 15:46 audit
-rw-r--r--. 1 root root   12838 7月  18 15:46 boot.log
-rw-------. 1 root root       0 7月  18 15:46 btmp
-rw-------. 1 root root    1536 7月  18 15:46 btmp-20160718
drwxr-xr-x. 2 root root       6 7月  18 15:46 chrony
-rw-------. 1 root root    6097 7月  18 15:46 cron
-rw-------. 1 root root   14798 7月  18 15:46 cron-20150707
-rw-------. 1 root root   98902 7月  18 15:46 cron-20150712
-rw-------. 1 root root  139236 7月  18 15:46 cron-20160718

# mv命令:文件移動或文件重命名命令

    如果目標文件在同一目錄則重命名,反之則移動文件。

    mv [OPTION]… [-T] SOURCE DEST

    mv [OPTION]… SOURCE… DIRECTORY

    mv [OPTION]… -t DIRECTORY SOURCE…

#rm命令:文件刪除命令

    rm [OPTION] [file…]

常用選項: 

    -r:遞歸刪除

    -f:強制刪除

刪除演示

[root@localhost ~]# rm -rf /tmp/log/

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

  • bash特性之命令行執行狀態返回值:

    命令執行結果無非有兩種:一種是成功,一種是失敗,在bash中命令執行成功則使用0表示,執行失敗則使用1-255表示

 ~]#echo $? 查看命令執行狀態(注:僅能顯示最近一次命令執行結果)

    引用命令的執行結果:

        $(COMMAND)

        或`COMMAND`

    例如:mkdir $(date +%T)  引用當前時間來創建文件名

    示例

[root@localhost ~]# mkdir /tmp/z
[root@localhost ~]# echo $?
0
[root@localhost ~]#
0:表示命令執行成功
  • bash特性之命令行展開

    ~:自動展開為用戶家目錄

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

    示例:

[root@localhost ~]# mkdir /tmp/{a,b}  相當于 mkdir /tmp/a  和 mkdir /tmp/b

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
root@localhost tmp]# mkdir {a,b}_{c,d}
[root@localhost tmp]# ls -l
總用量 76
drwxr-xr-x. 2 root root     6 7月  16 22:18 a_c
drwxr-xr-x. 2 root root     6 7月  16 22:18 a_d
drwxr-xr-x. 2 root root     6 7月  16 22:18 b_c
drwxr-xr-x. 2 root root     6 7月  16 22:18 b_d
[root@localhost tmp]# mkdir -p 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}}
[root@localhost tmp]# tree mylinux/
mylinux/
├── bin
├── boot
│   └── grub
├── dev
├── etcrc.d
│   └── init.d
├── etcsysconfig
│   └── network-scripts
├── lib
│   └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│   ├── localbin
│   └── localsbin
└── var
    ├── lock
    ├── log
    └── run

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

元數據包含信息

access time:訪問時間,簡寫為atime,讀取文件內容
modify time: 修改時間, mtime,改變文件內容(數據)
change time: 改變時間, ctime,元數據發生改變

查看方式:

# stat [OPTION]... FILE...

修改文件的時間戳信息:

touch命令:
  # touch [OPTION]... FILE...
        修改atime和mtime時間戳
            -a:只改atime
            -m:只改mtime
            -t:YYYYMMDDhhmm[.ss] :修改為指定的時間
            -c:如果文件不存在,則不予創建

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

(1)alias命令用于定義命令別名

~]# alias
# alias NAME=’COMMAND’定義別名
# unalias NAME 撤銷別名

注意:僅在當前shell進程有效?。┘矗河袝r間限定、有位置限制

永久有效設置方法:寫入文件內。

文件類型一:僅對當前用戶有效~/.bashrc

文件類型二:對所有用戶有效:/etc/bashrc

需要重新讀取配置文件生效:source /.bashrc或者./.bashrc

(2)命令引用方法

$(COMMAND)

或者‘COMMAND’

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

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

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

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

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

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

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

[root@MyServer ~]#  touch /tmp/tfile-$(date +%F-%H-%M-%S)
[root@MyServer ~]# ll
total 8
-rw-r--r-- 1 root root    0 Jul 17 11:09 3
-rw-r--r-- 1 root root   27 Jul 12 20:43 aa.txt
-rw-r--r-- 1 root root    0 Jul 17 21:13 a_c
-rw-r--r-- 1 root root    0 Jul 17 21:13 a_d
-rw-r--r-- 1 root root    0 Jul 17 21:13 b_c
-rw-r--r-- 1 root root    0 Jul 17 21:13 b_d
drwxr-xr-x 2 root root 4096 Jul 16 21:34 shell
-rw-r--r-- 1 root root    0 Jul 17 21:20 tfile-2016-07-17-21-20-46

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

#mkdir /tmp/mytest1
#cp -rf /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 /etc/[l,m,n]*.conf /tmp/mytest3

原創文章,作者:N21-chenggb,如若轉載,請注明出處:http://www.www58058.com/24756

(0)
N21-chenggbN21-chenggb
上一篇 2016-07-22
下一篇 2016-07-22

相關推薦

  • 純文本配置還是注冊表

    我們知道Unix/Linux下的程序配置文件從來都是純文本的,你可以自由地修改和查看,他們也沒有什么什么XML之類的玩意(參看XML的這兩篇文章:一,二),這個最重要的Unix文化(參看Unix傳奇下篇)40多年來就這么沿續下來了。我很佩服Microsoft的創新能力,一會兒用INI,一會兒用注冊表,一會又是用XML,這就是Windows的編程中那“強大”的…

    Linux干貨 2016-08-15
  • 馬哥教育網絡班20期+第2周課程練習

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。     1、cat:用于連接文件并打印到標準輸出設備上,常用來顯示文件的內容         命令使用格式     &nb…

    Linux干貨 2016-06-23
  • 馬哥教育網絡班21期-第7周課程練習

    第7周課程練習 創建一個10G分區,并格式為ext4文件系統; 添加一塊硬盤sdb 要求其block大小為2048,       預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; # mke2fs -t ext4 -b 2048 -L 'MYDATA' -m 2 # mount -o ac…

    Linux干貨 2016-10-09
  • 文本處理三劍客之Sed(行編輯器)

    sed(流編輯器,行編輯器)     是一種流編輯器,一次處理一行內容,處理時把當前處理的行存儲在臨時緩存中,成為“模式空間”,接著用sed命令處理緩沖區的內容,處理完畢后吧緩沖區內容輸出到屏幕接著處理下一行。這樣不斷重復到末尾。文件內容并沒有改變。除非使用重定向輸出才會改變內容。 sed:行編輯器(全屏編輯器:vi)   &n…

    Linux干貨 2016-08-15
  • 進入各種模式操作 在centos虛擬機上實現內外網的連接

    ? 進入單用戶模式; 重啟后在下面界面按任意鍵 進入此界面后按“ a ” 在下面界面 輸入? 1 ? 進入單用戶模式? 1之前有空格     進入救援模式 1 重啟后將鼠標鍵入界面里,在第一個界面的進度條沒走完之前按一次ESC鍵即可進入(只能按一次ESC) 2 選擇上圖中的第三項光盤引導啟動,之后選擇下圖的第三項救援模式啟動。 &nbsp…

    2018-05-09
  • rpm和yum的使用,程序包編譯安裝以及編譯apache過程中出現的問題

    一、rpm包管理          用法: rpm [選項…]              查詢/驗證軟件包選項:   &nbsp…

    Linux干貨 2016-03-19

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-22 10:55

    寫的很好,排版還可以在漂亮一點,加油

欧美性久久久久