第二周作業

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

文件管理命令:cp、mv、rm

(1)cp命令:copy

    單源復制:cp [OPTION]... [-T] SOURCE DEST
    多源復制:cp [OPTION]... SOURCE... DIRECTORY
           cp [OPTION]... -t DIRECTORY SOURCE...

[OPTION]

    -i:交互式覆蓋,即覆蓋前提示
    -f:強制覆蓋目標文件
    -r:遞歸復制目錄
    -d:復制符號鏈接文件本身,而非其指向的源文件
    -a:-dR --preserve=all,archive
    --preserve=
        mode:權限
        ownership:屬組和屬主
        timestamps:時間戳
        context:安全標簽
        xattr:擴展屬性
        links:符號鏈接
        all:上述所有屬性

示例1:拷貝/etc/fstab到/tmp目錄下

    [root@UncleZ ~]# cp /etc/fstab /tmp
    [root@UncleZ ~]# ls /tmp
    fstab

示例2:拷貝/etc目錄到/tmp目錄下

    [root@UncleZ ~]# cp -r /etc/ /tmp

(2)mv命令:move

源文件和目標文件在同一目錄下,重命名
源文件和目標文件不在同一目錄下,移動

        -i:交互式
        -f:force,強制

將123.txt重命名

[root@UncleZ tmp]# mv 123.txt 1234.txt

(3)rm命令:remove

        -i:interactive
        -f:force
        -r:recursive

        rm -rf

        注意:所有不用的文件建議不要直接刪除,而是移動至某個專用目錄;(模擬回收站)

示例:刪除/tmp下的所有文件

[root@UncleZ tmp]# rm -rf /tmp/*

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

命令執行的狀態結果:
    echo $?
        0:表示成功
        1~255:失敗
    命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中

示例:

[root@UncleZ ~]# ls
a_c  anaconda-ks.cfg  b_d       initial-setup-ks.cfg  python  test2.sh  var2.sh
a_d  b_c              database  ni.sh                 ss.sh   test.sh   var.sh

[root@UncleZ ~]# echo $?
0

命令執行成功

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

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

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

[root@UncleZ ~]# touch /tmp/{a,b}_{c,d}

[root@UncleZ ~]# ls /tmp
a_c  a_d  b_c  b_d

(2)

[root@UncleZ ~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-script},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
略

[root@UncleZ ~]# tree /tmp/mylinux
/tmp/mylinux
|-- bin
|-- boot
|   `-- grub
|-- dev
|-- etc
|   |-- rc.d
|   |   `-- init.d
|   `-- sysconfig
|       `-- network-script
|-- lib
|   `-- modules
|-- lib64
|-- proc
|-- sbin
|-- sys
|-- tmp
|-- usr
|   `-- local
|       |-- bin
|       `-- sbin
`-- var
    |-- lock
    |-- log
    `-- run

24 directories, 0 files

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

(1)元數據指用來描述一個文件的特征的系統數據,諸如訪問權限、文件擁有者以及文件數據塊的分布信息(inode…)等等

時間戳:

    atime    (access time)    最近訪問
    mtime    (modify time)    最近更改,文件內容發生改變的時間
    ctime    (change time)    最近改動,元數據發生改動的時間

(2)使用命令stat就可以看到元數據信息,例:

[root@UncleZ ~]# stat /tmp
  File: ‘/tmp’
  Size: 60            Blocks: 0          IO Block: 4096   directory
Device: fd01h/64769d    Inode: 133         Links: 3
Access: (1777/drwxrwxrwt)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:tmp_t:s0
Access: 2016-12-10 18:26:44.525844032 +0800
Modify: 2016-12-10 18:26:23.004928402 +0800
Change: 2016-12-10 18:26:23.004928402 +0800
 Birth: -

(3)使用touch修改文件的時間戳信息:

touch – change file timestamps

-c:指定的文件路徑不存在時不予創建
-a:僅修改access time
-m:僅修改modify time
-t STAMP
        [[CC]YY]MMDDhhmm[.ss]

示例:修改mtime

[root@UncleZ ~]# touch -m -t 0212010303.03 /tmp/functions

[root@UncleZ ~]# stat /tmp/functions 
File: ‘/tmp/functions’
Size: 0             Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d    Inode: 2360083     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:user_tmp_t:s0
Access: 2016-12-06 21:06:48.151112808 +0800
Modify: 2002-12-01 03:03:03.000000000 +0800
Change: 2016-12-06 21:06:48.152115493 +0800
Birth: -

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

alias命令:

獲取所有可用別名的定義
定義別名:
    ~]# alias NAME='COMMAND'
注意,僅對當前shell進程有效
撤銷別名:
    ~]# unalias NAME

引用命令的執行結果:

    $(COMMAND)或 `COMMAND``

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

[root@UncleZ var]# ls -d /var/1*[0-9]*[[:lower:]]

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

[root@UncleZ ~]# ls -d /etc/[0-9]*[^0-9]

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

[root@UncleZ ~]# ls -d /etc/[^[:alpha:]][[:alpha:]]*

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

[root@UncleZ ~]# touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

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

[root@UncleZ ~]# mkdir /tmp/mytest1
[root@UncleZ ~]# cp -r /etc/p*[^0-9] /tmp/mytest1

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

[root@UncleZ ~]# mkdir /tmp/mytest2
[root@UncleZ ~]# cp -r /etc/*.d /tmp/mytest2

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

[root@UncleZ ~]# mkdir /tmp/mytest3
[root@UncleZ ~]# cp /etc/[1mn]*.conf /tmp/mytest3

原創文章,作者:N25-趙叔,如若轉載,請注明出處:http://www.www58058.com/63154

(0)
N25-趙叔N25-趙叔
上一篇 2016-12-10
下一篇 2016-12-11

相關推薦

  • 常見RAID總結

    RAID淺析 目錄索引 一、定義 二、特點 三、常用RAID級別      四、RAID實現方式 五、實際環境測試 一、定義: 磁盤陣列(Redundant Arrays of Independent Disks,RAID),有“獨立磁盤構成的具有冗余能力的陣列”之意。 獨立磁盤冗余陣列(RAID,redundant array…

    Linux干貨 2016-04-12
  • Mozart的劍(文本處理工具)——叁劍(grep、正則表達式)

    之前的句子 煙鎖池塘柳 炮鎮海城樓 因荷而得藕 有杏不需梅 認識于小林寒風的一篇小說《鳳山遺夢》 grep grep是一種強大的文本搜索工具,它能使用正則表達式搜索文本,并把匹配的行打印出來。 作用:文本搜索工具,根據用戶指定的“模式”對目標文本逐行進行匹配檢查;打印匹配到的行。模式:由正則表達式字符及文本字符所編寫的過濾條件 用法: grep [OPTIO…

    2017-08-03
  • FHS文件系統下個各目錄功能

    FHS文件系統下個各目錄功能 FHS文件系統的建立是為了讓開發者和用戶可以預測軟件安裝文件和文件夾的位置。對整個linux的文件系統系統做了以下的規范:     /bin:命令二進制文件的存放目錄;     /boot:系統啟動時一些文件存放的目錄,包含引導linux的重要文件,…

    Linux干貨 2016-10-18
  • N22-浙江-情歌第一周博客作業

    一、計算機的組成及其功能    計算機有五大組成部分:CPU(控制器和運算器)、內存、輸入、輸出           CPU:運算、控制、寄存、緩存功能           內存:RAM       &nbsp…

    Linux干貨 2016-08-15
  • 【福利貼-招聘】- python運維開發工程師

    職位描述  崗位職責: 1、負責公司CMDB的建設,包括資產管理、dns、工單系統、ngnix自動化、監控等的開發 2、幫助運維團隊和業務團隊提高自動化效率 3、維護和開發持續化集成環境; 4、負責公司運維系統的規劃、選型、部署上線和日常維護管理工作; 5、負責CMDB團隊的建設、管理和人才培養機制…

    Linux干貨 2015-04-03
  • 計算機起源與Linux簡述

    什么是計算機?  計算機(computer)俗稱電腦,是一種用于高速計算的電子計算機器,可以進行數值計算,又可以進行邏輯計算,還具有存儲記憶功能。是能夠按照程序運行,自動、高速處理海量數據的現代化智能電子設備。 它由硬件系統和軟件系統組成,沒有安裝任何軟件的計算機被稱為裸機。硬件系統由運算器,控制器,存儲器,輸入設備,輸出設備幾部分組成;…

    Linux干貨 2017-03-29

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-16 23:31

    贊,總結的不錯,建議可以根據這部分進行深入的擴展~繼續加油~

欧美性久久久久