馬哥教育網絡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:相當于 –dr,archive用于實現歸檔

    –preserv=

             Mode:權限

             Ownetship:屬主和屬組

             Timestamps:時間戳

             Xattr:擴展屬性

             Links:符號鏈接

             All:上述所有屬性

單文件復制演示:

1

2

3

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

[root@localhost ~]# ls /tmp/wangxg/

boot.log

多源復制演示:

1

2

3

4

5

6

[root@localhost ~]# cp /var/log/{btmp,dmesg} /tmp/wangxg

[root@localhost ~]# ll /tmp/wangxg

總用量 112

-rw-r--r--. 1 root root 12838 7月  19 20:44 boot.log

-rw-------. 1 root root     0 7月  19 20:45 btmp

-rw-r--r--. 1 root root 94994 7月  19 20:45 dmesg

多源復制演示2:

1

2

3

4

5

6

7

8

9

10

11

12

13

[root@localhost ~]# cp -ir /var/log /tmp/log

[root@localhost ~]# ll /tmp/log/

總用量 2128

drwxr-xr-x. 2 root root    4096 7月  19 21:53 anaconda

drwxr-x---. 2 root root      22 7月  19 21:53 audit

-rw-r--r--. 1 root root   12838 7月  19 21:53 boot.log

-rw-------. 1 root root       0 7月  19 21:53 btmp

-rw-------. 1 root root    1536 7月  19 21:53 btmp-20160719

drwxr-xr-x. 2 root root       6 7月  19 21:53 chrony

-rw-------. 1 root root    6097 7月  19 21:53 cron

-rw-------. 1 root root   14798 7月  19 21:53 cron-20150718

-rw-------. 1 root root   98902 7月  19 21:53 cron-20150718

-rw-------. 1 root root  139236 7月  19 21:53 cron-20160719

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

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

    mv [OPTION]… [-T] SOURCE DEST

    mv [OPTION]… SOURCE… DIRECTORY

    mv [OPTION]… -t DIRECTORY SOURCE…

#rm命令:文件刪除命令

    rm [OPTION] [file…]

常用選項: 

    -r:遞歸刪除

    -f:強制刪除

刪除演示

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

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

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

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

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

    引用命令的執行結果:

        $(COMMAND)

        或`COMMAND`

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

    示例

1

2

3

4

5

[root@localhost ~]# mkdir /tmp/z

[root@localhost ~]# echo $?

0

[root@localhost ~]#

0:表示命令執行成功

  • bash特性之命令行展開

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

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

  • 示例:

1 [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

1

2

3

4

5

6

7

root@localhost tmp]# mkdir {a,b}_{c,d}

[root@localhost tmp]# ls -l

總用量 76

drwxr-xr-x. 2 root root     22 7月  22 23:17 a_c

drwxr-xr-x. 2 root root     22 7月  22 23:17 a_d

drwxr-xr-x. 2 root root     22 7月  22 23:17 b_c

drwxr-xr-x. 2 root root     22 7月  22 23:17 b_d

1

2

3

[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


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

元數據包含信息:

1

2

3

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

modify time: 修改時間, mtime,改變文件內容(數據)

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

查看方式:

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

修改文件的時間戳信息:

1

2

3

4

5

6

7

touch命令:

  # touch [OPTION]... FILE...

        修改atime和mtime時間戳

            -a:只改atime

            -m:只改mtime

            -t:YYYYMMDDhhmm[.ss] :修改為指定的時間

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


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

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

1

2

3

~]# alias

# alias NAME=’COMMAND’定義別名

# unalias NAME 撤銷別名

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

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

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

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

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

(2)命令引用方法

$(COMMAND)

或者‘COMMAND’

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

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


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

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


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

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


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

1

2

3

4

5

6

7

8

9

10

11

[root@MyServer ~]#  touch /tmp/tfile-$(date +%F-%H-%M-%S)

[root@MyServer ~]# ll

total 8

-rw-r--r-- 1 root root    0 Jul 22 21:11 3

-rw-r--r-- 1 root root   27 Jul 21 22:43 aa.txt

-rw-r--r-- 1 root root    0 Jul 22 23:13 a_c

-rw-r--r-- 1 root root    0 Jul 22 23:13 a_d

-rw-r--r-- 1 root root    0 Jul 22 23:13 b_c

-rw-r--r-- 1 root root    0 Jul 22 23:13 b_d

drwxr-xr-x 2 root root 4096 Jul 22 23:34 shell

-rw-r--r-- 1 root root    0 Jul 22 23:20 tfile-2016-07-17-21-20-46


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

12 #mkdir /tmp/mytest1#cp -rf /etc/p*[^0-9] /tmp/mytest1

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

12 #mkdir /tmp/mytest2 #cp -r /etc/*.d /tmp/mytest2

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

12 #mkdir /tmp/mytest3#cp /etc/[l,m,n]*.conf /tmp/mytest3

備注:第二周作業

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

(0)
Net21_XUNet21_XU
上一篇 2016-07-26 16:54
下一篇 2016-07-26 16:56

相關推薦

  • gzip壓縮算法

    gzip,zlib,以及圖形格式png,使用的是同一個壓縮算法deflate。我們通過對gzip源碼的分析來對deflate壓縮算法做一個詳細的說明: 第一,gzip壓縮算法基本原理的說明。 第二,gzip壓縮算法實現方法的說明。 第三,gzip實現源碼級的說明。 1. Gzip壓縮算法的原理      &n…

    Linux干貨 2015-07-30
  • bash工作特性之命令執行狀態返回值和命令行展開的講解和實例

    命令執行狀態返回值 在Linux bash中可以用命令執行狀態返回值來判斷命令是否運行成功,而不需去關心命令返回的結果是多少。 bash通過狀態返回值來得到輸出結果; 成功:返回值 0 [root@localhost tmp]# ls aaa [root@localhost tmp]# mkdir $(date +%H-%m-%S) [root@localh…

    Linux干貨 2018-03-01
  • 文件查找

    文件查找     一.文件查找locate和find 1.     locate命令 非實時查找( 數據庫查找) 查詢系統上預建的文件索引數據庫 依賴于事先構建 的索引 索引的構建是在系統較為空閑時自動進行( 周期性任務) 管理員手動更新數據庫(updatedb) 索引構建過程需要遍歷整個根文件系統…

    Linux干貨 2017-08-12
  • test

    test

    Linux干貨 2017-11-26
  • Linux基礎目錄名稱命名法則及功能規定

    Linux中有非常多的目錄文件,那么這些目錄文件的命令規則,和功能都有那些,今天學習了下,下面是我的學習記錄,跟大家分享下。 文件命名規則 (1) 除了/之外,所有字符都合法 (2) 特殊字符如@、#、¥、&、()、-、空格等最好不要使用,當使用空格作為文件名時,執行命令會出錯 (3) 避免使用”.”作為文件名的第一個字符,因為在Linux系統中以”…

    Linux干貨 2016-08-15
  • rpm軟件管理工具詳解

    1 Linux軟件安裝概述 安裝程序的方式: 軟件包概述 RPM RPM的缺點 RPM包 RPM分包 RPM命令的使用 rpm 包管理 升級注意項 如何安裝rpm軟件包 如何卸載rpm軟件包 如何升級rpm軟件包 如何查詢rpm軟件包 如何查看與rpm包相關的文件和其他信息 如何校驗rpm包 RPM的數據庫 1 Linux軟件安裝概述 安裝程序的方式: 通用…

    Linux干貨 2016-09-06

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-27 11:31

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

欧美性久久久久