馬哥教育網絡第21期-第二周課程練習

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

   linux中經常使用的文件管理命令主要有cp,mv,rm這三個命令。
    復制命令:cp
    cp [option] SRC DEST
        SRC是文件:
            如果目標不存在:新建DEST,將SRC的內容填充到DEST中。
            目標存在:將SRC的內容覆蓋到DESC中。
[root@localhost mnt]# cp -i /etc/passwd /mnt
[root@localhost mnt]# ls
lineout.sh  passwd  spaceline.sh  useridsum.sh
[root@localhost mnt]#
[root@localhost mnt]# cp -i /etc/passwd /mnt/abc
[root@localhost mnt]# ls
abc

        SRC為多個文件:

            DESC必須存在且為目錄。

[root@localhost mnt]# cp  -i /etc/shadow /etc/group /mnt
[root@localhost mnt]# ls
group  lineout.sh  passwd  shadow  spaceline.sh  useridsum.sh
[root@localhost mnt]#

        SRC是目錄:  

            使用選項:-r

            DESC不存在則自動創建,DESC存在時必須是目錄,文件會報錯。

[root@localhost home]# ls
jtah
[root@localhost home]# cp -r jtah/ /mnt
         常用選項:  
    -i:交互式
            -r, -R: 遞歸復制目錄及內部的所有內容;
            -a: 歸檔,相當于-dR --preserv=all
        -d:--no-dereference --preserv=links
        --preserv[=ATTR_LIST]
        mode: 權限
        ownership: 屬主屬組
        timestamp: 
        links
        xattr
        context
        all
        -p: --preserv=mode,ownership,timestamp
        -v: --verbose
        -f: --force
    移動文件:mv
        mv [option] SRC DESC
        常用選項:
        -i: 交互式
        -f: 強制
    刪除文件:rm
        rm [option] FILE
        常用選項:
    -i: 交互式
    -f: 強制刪除
    -r: 遞歸

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

bash命令執行的結果有兩種成功或失敗,成功的返回值用0表示,1-255表示失敗。bash使用echo $?來保存最近一條命令的執行結果。

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

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

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

   (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 -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、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。

文件系統中的數據分為數據和元數據,數據是指普通文件的實際數據,元數據是用來描述一個文件特征的系統數據,如訪問權限,文件擁有者等等。
[root@localhost tmp]# ls -l /etc/passwd
-rw-r--r--. 1 root root 3355 7月  15 11:17 /etc/passwd
第1行代表文件的格式主要有一下幾種
    1.-:普通文件
    2.d:目錄文件
    3.l:符號連接文件
    4.s:套接字文件
    5.p:管道文件
    6.b:塊設備文件
    7.c:字設備文件
第2-9代表文件的擁有者,屬組,其他用戶對文件的訪問權限
    r:讀    w:寫    x:執行
    使用stat和touch可以修改和查看文件的時間戳信息
    
[root@localhost tmp]# stat /etc/passwd
文件:"/etc/passwd"
大?。?355      	塊:8          IO 塊:4096   普通文件
設備:fd00h/64768d	Inode:34137289    硬鏈接:1
權限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
環境:system_u:object_r:passwd_file_t:s0
最近訪問:2016-07-16 22:42:49.602895353 +0800
最近更改:2016-07-16 22:42:49.602895353 +0800
最近改動:2016-07-16 22:42:49.602895353 +0800
創建時間:-

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

使用aliase可以查看當前shell的的別名。aliase=value可以定義命令別名
        (1) alias
	顯示當前shell進程所有可用的命令別名;
        (2) alias NAME='VALUE'
	定義別名NAME,其相當于執行命令VALUE;

        注意:在命令行中定義的別名,僅對當前shell進程有效;如果想永久有效,要定義在配置文件中;
	僅對當前用戶:~/.bashrc
	對所有用戶有效:/etc/bashrc

	Note: 編輯配置給出的新配置不會立即生效;

	bash進程重新讀取配置文件:
	source /path/to/config_file
	./path/to/config_file

	撤消別名:unalias
	unalias [-a] name [name ...]

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

[root@localhost var]# ls -d /var/l*[0-9]*[[:lower:]]
/var/lib60test

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

[root@localhost var]# ls  /etc/[0-9]*[^0-9]

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

[root@localhost var]# ls /etc/[^[:alpha:]][[:alpha:]]*

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

[root@localhost tmp]# touch /tmp/tfile`date +%F-%H-%M-%S`

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

[root@localhost tmp]# cp -rf /etc/p*[^0-9] /tmp/mytest1

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

[root@localhost tmp]# cp -rf /etc/*.d /tmp.mytest2

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

[root@localhost tmp]# cp /etc/{l.m,n}*.conf /tmp/mytest3

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

(0)
N21_619463772N21_619463772
上一篇 2016-07-17 21:50
下一篇 2016-07-19 09:06

相關推薦

  • Linux學習 Grep詳則。

    grep 功能說明:查找文件里符合條件的字符串。 語  法:grep [-abcEFGhHilLnqrsvVwxy][-A<顯示列數>][-B<顯示列數>][-C<顯示列數>][-d<進行動作>][-e<范本樣式>][-f<范本文件>][–help][范本樣式][文件或目錄&…

    Linux干貨 2017-07-24
  • Linux第七周小結

    1、創建一個10G分區,并格式為ext4文件系統 a) 要求其block大小為2048,預留空間百分比為2,卷標為MYDATA,默認掛載屬性包含acl; b) 掛載至/data/madata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; 2、創建一個大小為1G的swap分區,并創建好文件系統,并啟用之 3、寫一個腳本 a)&…

    2017-08-13
  • GNU awk

    文本處理三工具:grep, sed, awk grep, egrep, fgrep:文本過濾工具;pattern sed: 行編輯器 模式空間、保持空間 awk:報告生成器,格式化文本輸出;  AWK: Aho, Weinberger, Kernighan –> New AWK, NAWK  GNU awk, gawk&…

    Linux干貨 2015-12-03
  • HAproxy實戰

    HAproxy實驗一 1、實驗要求: (1) 動靜分離discuzx,動靜都要基于負載均衡實現; (2) 進一步測試在haproxy和后端主機之間添加varnish緩存(見實驗二步驟); (3) 給出拓撲設計; (4) haproxy的設定要求: (a) 啟動stats; (b) 自定義403、502和503的錯誤頁; (c) 各組后端主機選擇合適的調度方法…

    Linux干貨 2016-11-15
  • linux用戶與組的權限管理與正則表達式

    一、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 二、編輯/etc/group文件,添加組hadoop 三、手動編輯/etc/passwd文件新增一行,添加用戶hadoop,其基本組ID為hadoop組的id號;其家目錄為/home/hadoop 四、復制/etc/skel…

    2018-07-16
  • 第七周作業:bash腳本,邏輯卷管理,磁盤管理,raid管理

    第七周作業 1、創建一個10G分區,并格式為ext4文件系統; ~]#fdisk -l   #查看已有分區    設備 Boot      Start     &nbsp…

    Linux干貨 2016-12-12

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-17 21:55

    寫的很好,排版也很漂亮,加油

欧美性久久久久