1、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。


Linux的发行版分为slackware、debian、redhat三大系列,其他系列包括ArchLinux、Gentoo等。

Slackware发行版:是由Patrick Volkerding开发的GNU/Linux发行版,坚守KISS原则。其中最著名的分支就是S.u.S.E(企业版),openSUSE(suse桌面免费发行版本)。

 

Debian发行版:服务器版,消耗资源少,稳定,主要衍生分支Ubuntu,Mint,Ubuntu(在国内名气较大,使用广泛,其突出特点使用简单,容易上手。软件包管理做得很好,包含桌面版,服务器版),mint(基于ubuntu,显著特点安装时可选择桌面环境后,即可使用,简单,方便易用)。


Redhat发行版:创建于1993年,是目世界上最资深的Linux和开放源代码提供商,同时也是最获认可的Linux品牌。主要代表Rehl,CentOS,Fedora。Rehl(Red Hat Enterprise Linux,Redha企业级应用,每18个月发行一个新版本),CentOS(它是来自于Rehl依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件),fedora(linux免费桌面版,得到redhat官方支持,用于测试新软件,每6个月发行一个新版本)


ArchLinux发行版:一个独立的开放源代码的发行版,采用滚动发布模式,执行定期系统更新,即可获得新的软件,适用于有一定linux基础的用户使用。


Gentoo发行版:是一个基于Linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点。可定制性强,入手门槛高。



2、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。


ifconfig:主要用于显示与配置网络接口;

[chenweiliang@VM_13_60_centos root]$ ifconfig
eth0: flags=4163  mtu 1500
        inet 10.104.13.60  netmask 255.255.192.0  broadcast 10.104.63.255
        ether 52:54:00:1e:5c:84  txqueuelen 1000  (Ethernet)
        RX packets 1497178  bytes 144406596 (137.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1091699  bytes 134515163 (128.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


-a 显示当前可用的所有接口:

[chenweiliang@VM_13_60_centos root]$ ifconfig -a
eth0: flags=4163  mtu 1500
        inet 10.104.13.60  netmask 255.255.192.0  broadcast 10.104.63.255
        ether 52:54:00:1e:5c:84  txqueuelen 1000  (Ethernet)
        RX packets 1497975  bytes 144475870 (137.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1092253  bytes 134584132 (128.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


-s 显示短列表:

[chenweiliang@VM_13_60_centos root]$ ifconfig -s 
Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0      1500  1498086      0      0 0       1092347      0      0      0 BMRU
lo       65536        0      0      0 0             0      0      0      0 LRU


-v 更为详细的某些错误条件:

[chenweiliang@VM_13_60_centos root]$ ifconfig -v

eth0: flags=4163  mtu 1500
        inet 10.104.13.60  netmask 255.255.192.0  broadcast 10.104.63.255
        ether 52:54:00:1e:5c:84  txqueuelen 1000  (Ethernet)
        RX packets 1498187  bytes 144493596 (137.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1092392  bytes 134604915 (128.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


interface 查看特定接口的状态信息:

[chenweiliang@VM_13_60_centos root]$ ifconfig eth0
eth0: flags=4163  mtu 1500
        inet 10.104.13.60  netmask 255.255.192.0  broadcast 10.104.63.255
        ether 52:54:00:1e:5c:84  txqueuelen 1000  (Ethernet)
        RX packets 1498515  bytes 144521763 (137.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1092636  bytes 134633490 (128.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


echo:回显命令

-n 输出结果不换行

[chenweiliang@VM_13_60_centos root]$ echo -n 'CentOS';
CentOS[chenweiliang@VM_13_60_centos root]$


-e

[chenweiliang@VM_13_60_centos root]$ echo -e 'hello\nwork'
hello
work


-E 禁用反斜线转义解释(默认值)

[chenweiliang@VM_13_60_centos root]$ echo 'how are \nyou'
how are \nyou
[chenweiliang@VM_13_60_centos root]$ echo -E 'i am find,\nthank you'
i am find,\nthank you


tty:打印连接到Linux终端的文件名(0-N),每新增一个终端自加1

Linux+Python高端运维班第一次作业_第1张图片

Linux+Python高端运维班第一次作业_第2张图片


-s, --silent, --quiet 不打印然和内容,只返回退出状态

[chenweiliang@VM_13_60_centos root]$ tty -s
[chenweiliang@VM_13_60_centos root]$ tty --silent


startx:启动图形化界面(本人没安装图形化界面,所以命令执行失败)

export:打印系统环境变量

[chenweiliang@VM_13_60_centos root]$ export
declare -x HISTSIZE="3000"
declare -x HISTTIMEFORMAT="%F %T "
declare -x HOME="/home/chenweiliang"
declare -x HOSTNAME="VM_13_60_centos"
declare -x LANG="C"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="chenweiliang"

变量声明、赋值: export name=VALUE

变量引用:$name, ${name}

显示所有环境变量: export, env, printenv

[chenweiliang@VM_13_60_centos root]$ export age=18
[chenweiliang@VM_13_60_centos root]$ echo $age
18


销毁:unset name

[chenweiliang@VM_13_60_centos root]$ unset age
[chenweiliang@VM_13_60_centos root]$ echo $age
[chenweiliang@VM_13_60_centos root]$

bash有许多内建的环境变量:PATH, SHELL, UID, HISTSIZE, HOME, PWD, OLD, HISTFILE, PS1


pwd:

-L 显示逻辑路径(默认)

[chenweiliang@VM_13_60_centos ~]$ ln -s /tmp/ tmp
[chenweiliang@VM_13_60_centos ~]$ cd tmp
[chenweiliang@VM_13_60_centos tmp]$ pwd -L
/home/chenweiliang/tmp


-P 显示物理路径

[chenweiliang@VM_13_60_centos tmp]$ pwd -P
/tmp

history -d offset 删除第几条offset代表偏移量,偏移量从1开始

[root@VM_13_60_centos ~]# history -d 3
[root@VM_13_60_centos ~]#


-c 用于清空历史命令

[chenweiliang@VM_13_60_centos tmp]$ history -c
[chenweiliang@VM_13_60_centos tmp]$ history
    1  2016-12-29 14:11:18 history
[chenweiliang@VM_13_60_centos tmp]$


history #: 显示历史中最近的#条命令;

[root@VM_13_60_centos ~]# history 5
  807  2016-12-29 11:25:48 echo $HISTCONTROL
  808  2016-12-29 14:18:55 history -3
  809  2016-12-29 14:18:59 history 3
  810  2016-12-29 14:19:06 history
  811  2016-12-29 14:21:21 history 5


    -a 手动追加当前会话缓冲区的命令历史至历史文件中;


调用历史中的命令:

!#: 重复执行第#条指令;

!!:

!string


调用上一条命令的最后一个参数:

!$:

ESC, .    (先按esc 然后再按.)

Alt+.

控制命令历史的记录方式:

环境变量:HISTCONTROL

   (如:export HISTCONTROL='ignoredups')

   ignoredups:忽略重复的命令;连续且相同方为“重复”;

   ignorespace:忽略所有以空白开头的命令;

   ignoreboth:ignoredups, ignorespace;


修改环境变量值的方式:export 变量名="值"

    变量赋值:把赋值符号后面的数据存储于变量名指向内存空间;


shutdown:关机命令,默认操作时间是1分钟后,可以指点小时分钟

-h hh:mm 关机

[root@VM_13_60_centos chenweiliang]# shutdown -h 16:00
Shutdown scheduled for Thu 2016-12-29 16:00:00 CST, use 'shutdown -c' to cancel.
[root@VM_13_60_centos chenweiliang]#
Broadcast message from root@VM_13_60_centos (Thu 2016-12-29 15:49:52 CST):
The system is going down for power-off at Thu 2016-12-29 16:00:00 CST!


-r hh:mm 重启

[root@VM_13_60_centos chenweiliang]# shutdown -r 16:00
Shutdown scheduled for Thu 2016-12-29 16:00:00 CST, use 'shutdown -c' to cancel.
[root@VM_13_60_centos chenweiliang]#
Broadcast message from root@VM_13_60_centos (Thu 2016-12-29 15:45:05 CST):
The system is going down for reboot at Thu 2016-12-29 16:00:00 CST!


-s hh:mm 睡眠


-c 取消

[root@VM_13_60_centos chenweiliang]# shutdown -c
Broadcast message from root@VM_13_60_centos (Thu 2016-12-29 15:46:07 CST):
The system shutdown has been cancelled at Thu 2016-12-29 15:47:07 CST!

poweroff:关机命令,root用户直接执行命令 poweroff 即可关机

-f 强制关机


reboot:重启命令,root用户直接执行命令 reboot 即可重启


hwclock:查看及设置硬件时钟

-s, --hctosys    把硬件时间设置成跟系统时间相同

-w, --systohc    把系统时间设置成跟硬件时间相同

[root@VM_13_60_centos ~]# hwclock -s
[root@VM_13_60_centos ~]# hwclock
Thu Dec 29 16:26:29 2016  -0.459681 seconds

date:用于查看及设置系统时钟

date [OPTION]... [+FORMAT]:显示

    FORMAT: 格式符号

        %D    月日年 12/21/16

        %F    年月日 2016-12-21

        %T    时分秒 11:17:35

        %H    时 11

        %M    分 17

        %S    秒 35

    (例:date +%D   date +%F)

    自定义格式:date +%H--%M--%S

date [MMDDhhmm[[CC]YY][.ss]]:设置

    MM: 月分

    DD:几号

    hh: 小时

    mm: 分钟

    YY: 两位年份

    CCYY: 四位年份

    .ss: 秒钟

    (例 date 1121112616.22   解读 11月21日11点26分16年22秒)

        date 1229164916.05


现在linux中系统时间,硬件时间都不对

[root@VM_13_60_centos ~]# hwclock
Mon Nov 21 11:36:34 2016  -0.802532 seconds
[root@VM_13_60_centos ~]# date
Mon Nov 21 11:37:15 CST 2016


修正系统、硬件时间:

Linux+Python高端运维班第一次作业_第3张图片

[root@VM_13_60_centos ~]# hwclock
Thu Dec 29 16:54:47 2016  -0.703422 seconds


3、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。


1)首先通过 type 区分命令属于内部命令还是外部命令:type COMMAND


内部命令:

[root@VM_13_60_centos ~]# type cd

cd is a shell builtin


外部命令:

[root@VM_13_60_centos ~]# type shutdown
shutdown is /usr/sbin/shutdown


2)获取命令的帮助信息方式:


内部命令: help COMMAND

外部命令: man COMMAND

为了区分命令权限,man分为9个章节,存放于/usr/share/man目录。


man1: 用户命令

man2: 系统调用

man3: C库调用

man4: 设备文件及特殊文件

man5: 配置文件格式

man6: 游戏

man7: 杂项

man8: 管理类的命令



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


文件管理命令有cp, mv, rm

复制命令:cp

    cp [OPTION]... [-T] SOURCE DEST

    cp [OPTION]... SOURCE... DIRECTORY

    cp [OPTION]... -t DIRECTORY SOURCE...


    cp SRC DEST

        SRC是文件:

            如果目标不存在:新建DEST,并将SRC中内容填充至DEST中;

            如果目录存在:

                如果DEST是文件:将SRC中的内容覆盖至DEST中;

                    此时建议为cp命令使用-i选项;   

                              [chenweiliang@VM_13_60_centos ~]$ ls
                    test1.txt test2.txt  tmp
                    [chenweiliang@VM_13_60_centos ~]$ cp -i test1.txt test2.txt
                    cp: overwrite 'test2.txt'? yes

                如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中;

                    [chenweiliang@VM_13_60_centos ~]$ ls
                    test1.txt  test2.txt  tmp
                    [chenweiliang@VM_13_60_centos ~]$ tree
                    .
                    |-- test1.txt
                    |-- test2.txt
                    `-- tmp
                    1 directory, 2 files
                    [chenweiliang@VM_13_60_centos ~]$ cp test1.txt tmp
                    [chenweiliang@VM_13_60_centos ~]$ tree
                    .
                    |-- test1.txt
                    |-- test2.txt
                    `-- tmp
                        `-- test1.txt
                    1 directory, 3 files

    cp SRC... DEST

        SRC...:多个文件

            DEST必须存在,且为目录,其它情形均会出错;

            [chenweiliang@VM_13_60_centos ~]$ cp test1.txt test2.txt tmp
            [chenweiliang@VM_13_60_centos ~]$ tree
            .
            |-- test1.txt
            |-- test2.txt
            `-- tmp
                |-- test1.txt
                `-- test2.txt
            1 directory, 4 files

    cp SRC DEST

        SRC是目录:

            此时使用选项:-r


            如果DEST不存在:则创建指定目录,复制SRC目录中所有文件至DEST中;

            如果DEST存在:

                如果DEST是文件:报错

                如果DEST是目录:

            [chenweiliang@VM_13_60_centos ~]$ tree
            .
            |-- test1.txt
            |-- test2.txt
            `-- tmp
                |-- test1.txt
                `-- test2.txt
            1 directory, 4 files
            [chenweiliang@VM_13_60_centos ~]$ cp tmp -r tmp2
            [chenweiliang@VM_13_60_centos ~]$ tree
            .
            |-- test1.txt
            |-- test2.txt
            |-- tmp
            |   |-- test1.txt
            |   `-- test2.txt
            `-- tmp2
                |-- test1.txt
                `-- test2.txt
            2 directories, 6 files

    常用选项:

        -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: move,

        mv [OPTION]... [-T] SOURCE DEST

        mv [OPTION]... SOURCE... DIRECTORY

        mv [OPTION]... -t DIRECTORY SOURCE...


        常用选项:

            -i: 交互式

            -f: 强制

        移动前:

        [chenweiliang@VM_13_60_centos ~]$ tree
        .
        |-- test1.txt
        |-- test2.txt
        |-- tmp
        |   |-- test1.txt
        |   `-- test2.txt
        |-- tmp2
        |   |-- test1.txt
        |   `-- test2.txt
        `-- tmp3
        3 directories, 6 files
        [chenweiliang@VM_13_60_centos ~]$ move tmp/test1 tmp3


        移动后:

        [chenweiliang@VM_13_60_centos ~]$ mv tmp/test1.txt tmp3
        [chenweiliang@VM_13_60_centos ~]$ tree
        .
        |-- test1.txt
        |-- test2.txt
        |-- tmp
        |   `-- test2.txt
        |-- tmp2
        |   |-- test1.txt
        |   `-- test2.txt
        `-- tmp3
            `-- test1.txt
        3 directories, 6 files


删除文件命令:rm: remove

        rm [OPTION]... FILE...


        常用选项:

            -i: 交互式

            -f: 强制删除

            -r: 递归


            rm -rf


        删除包含文件的文件夹:

            [chenweiliang@VM_13_60_centos ~]$ tree
        .
        |-- test1.txt
        |-- test2.txt
        |-- tmp
        |   `-- test2.txt
        |-- tmp2
        |   |-- test1.txt
        |   `-- test2.txt
        `-- tmp3
            `-- test1.txt
        3 directories, 6 files
        [chenweiliang@VM_13_60_centos ~]$ rm -rf tmp3
        [chenweiliang@VM_13_60_centos ~]$ tree
        .
        |-- test1.txt
        |-- test2.txt
        |-- tmp
        |   `-- test2.txt
        `-- tmp2
            |-- test1.txt
            `-- test2.txt
        2 directories, 5 files



5、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

bash使用特殊变量$?保存最近一条命令的执行状态结果:


    0:成功

    1-255:失败


程序执行有两类结果:

    程序的返回值;

    程序的执行状态结果;

[chenweiliang@VM_13_60_centos root]$ echo $?
0


命令行展开

~: 展开为用户的主目录

~USERNAME:展开为指定用户的主目录

{}:可承载一个以逗号分隔的列表,并将其展开为多个路径

    /tmp/{a,b} = /tmp/a, /tmp/b

    /tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi

[chenweiliang@VM_13_60_centos ~]$ ls /home/chenweiliang
test1.txt  test2.txt  tmp  tmp2
[chenweiliang@VM_13_60_centos ~]$ ls /home/chenweiliang/{tmp,tmp2}
/home/chenweiliang/tmp:
tmp.txt
/home/chenweiliang/tmp2:
tmp2.txt



6、请使用命令行展开功能来完成以下练习:


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

[chenweiliang@VM_13_60_centos tmp]$ mkdir {a,b}_{c,d}
[chenweiliang@VM_13_60_centos tmp]$ tree
.
|-- a_c
|-- a_d
|-- ap_1004.pid
|-- b_c
|-- b_d
|-- net_affinity.log
`-- setRps.log

4 directories, 3 files


(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

[chenweiliang@VM_13_60_centos 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}
[chenweiliang@VM_13_60_centos tmp]$ tree mylinux/
mylinux/
|-- bin
|-- boot
|   `-- grub
|-- dev
|-- etc
|   |-- rc.d
|   |   `-- init.d
|   `-- sysconfig
|       `-- network-scripts
|-- lib
|   `-- modules
|-- lib64
|-- lock
|-- log
|-- proc
|-- run
|-- sbin
|-- sys
|-- tmp
|-- usr
|   `-- local
|       |-- bin
|       `-- sbin
`-- var
24 directories, 0 files



7、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。


文件元数据包括:

    File:文件或目录名称

    Size:文件大小 Blocks:块大小 IO Block:

    Device:设备位置 Inode:节点号 Links:链接数

    Access:权限 Uid:文件属主 Gid:文件属组

    Access:文件访问时间

    Modify:文件修改时间,内容改变

    Change:文件改变时间,元数据改变


通过stat命令查看文件元数据信息

[chenweiliang@VM_13_60_centos tmp]$ stat ap_1004.pid
  File: 'ap_1004.pid'
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d    Inode: 491530      Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-12-29 16:17:39.512160395 +0800
Modify: 2016-12-29 16:17:39.512160395 +0800
Change: 2016-12-29 16:17:39.512160395 +0800
 Birth: -
[chenweiliang@VM_13_60_centos tmp]$ ls -l ap_1004.pid
-rw------- 1 root root 0 Dec 29 16:17 ap_1004.pid

修改文件的时间戳信息。

touch [OPTION]... FILE...

-a 仅修改访问时间

-m 只更改修改时间

-t STAMP

   use [[CC]YY]MMDDhhmm[.ss] instead of current time

[root@VM_13_60_centos tmp]# touch -t 201601032215.20 ap_1004.pid 
[root@VM_13_60_centos tmp]# stat ap_1004.pid 
  File: 'ap_1004.pid'
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d    Inode: 491530      Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-01-03 22:15:20.000000000 +0800
Modify: 2016-01-03 22:15:20.000000000 +0800
Change: 2017-01-03 22:10:18.411613380 +0800
 Birth: -



8、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。


自定义目录 /tmp/mytest3 代替 /var:

[root@VM_13_60_centos mytest3]# ls
l4a         libaudit.conf  locale.conf     man_db.conf  nsswitch.conf
ld.so.conf  libuser.conf   logrotate.conf  mke2fs.conf  ntp.conf
[root@VM_13_60_centos mytest3]# ls l*[0-9]*[[:lower:]]
l4a



9、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。


自定义目录 /tmp/mytest3 代替 mytest3

[root@VM_13_60_centos mytest3]# ls [[:digit:]]*[^[:digit:]]
2a
[root@VM_13_60_centos mytest3]# ls [0-9]*[^0-9]
2a



10、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。


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



11、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-09-20-09-32-22。


[root@VM_13_60_centos tmp]# touch /tmp/tfile-$(date +%F-%H-%M-%S)
[root@VM_13_60_centos tmp]# ls
*.d  a_d          b_c  mylinux  mytest3           setRps.log
a_c  ap_1004.pid  b_d  mytest2  net_affinity.log  tfile-2017-01-05-15-40-47



12、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。


[root@VM_13_60_centos mytest2]$ mkdir /tmp/mytest2
[root@VM_13_60_centos mytest2]# cp -a /etc/*.d /tmp/mytest2/
[root@VM_13_60_centos mytest2]# ls
bash_completion.d  gdbinit.d       my.cnf.d        rc1.d      rwtab.d           xinetd.d
binfmt.d           grub.d          pam.d           rc2.d      setuptool.d       yum.repos.d
chkconfig.d        init.d          popt.d          rc3.d      statetab.d
cron.d             ld.so.conf.d    prelink.conf.d  rc4.d      sudoers.d
depmod.d           logrotate.d     profile.d       rc5.d      sysctl.d
dnsmasq.d          modprobe.d      rc.d            rc6.d      tmpfiles.d
dracut.conf.d      modules-load.d  rc0.d           rsyslog.d  usb_modeswitch.d



13、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。


[root@VM_13_60_centos ~]# mkdir /tmp/mytest3
[root@VM_13_60_centos ~]# cp -a /etc/[lmn]*.conf /tmp/mytest3/
[root@VM_13_60_centos ~]# ls /tmp/mytest3
ld.so.conf     libuser.conf  logrotate.conf  mke2fs.conf    ntp.conf
libaudit.conf  locale.conf   man_db.conf     nsswitch.conf