1.按系列罗列linux的发行版,并描述不同发行版之间的俩系与区别。

  当前主流的linux发行版有:

      slackware:suse

      debian:Ubuntu mint

      redhat: RHEL centOS fedora

      联系:因为linux内核的源代码都是开放的,所以这些linux发行版都是基于linux内核衍生出来的。

      区别:slackware 是最古老的linxu发行版

            debian是互联网自发组织,最接近原汁原味的linux.Ubuntu是debian针对图形桌面的发行版。

            redhat是由红帽公司进行进行研发与发行的版本。是目前应用最广泛的linux服务器系统。centos就是redhat公司针对服务器的明星产品,目前得到广泛应用。

            程序包管理器的区别:

rpm:

RHEL, Fedora, S.u.S.E, CentOS

dpt:

Debian, Ubuntu


2.说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date

  ifconfig:配置与查看网卡的IP地址。ifconfig [option]

           ifconfig etho 192.168.0.1 netmask 255.255.255.0(在eth0上配置IP地址)

           ifconfig etho up(将网卡启用) ifconfig eth0 down (将网卡禁用)

  echo : 显示文字。echo [option][字符串]

         -n 不要在最后自动换行

         -E 取消反斜杠ECS转义

  tty  : 用于显示终端机连接标准输入设备的文件名称。

         #tty

  startx:从命令界面行进入图形界面.(用来启动X Windows)

         #startx

  export:增加修改删除环境变量。

         语法:export [-fnp] [变量名称]=[变量设置值]

               -f :代表[变量名称]中为函数名称。

               -n :删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

               -p :列出所有的shell赋予程序的环境变量。

  pwd :显示当前所在工作目录。

       #pwd

  history : 列出执行过的历史命令。

            n :数字,列出最近的n笔命令列表。

           !! :上一条命令

           !# :执行序号为#的命令

           !abc :执行第一条以abc开头的命令。

           !$ :调用最后一条命令的最后一条参数。

 shutdown :关机

 shutdown [OPTION]...  TIME [MESSAGE]

            shutdown [option]

            -r :reroot

            -h :halt (关闭电源)

            HH 多长时间后关机

 poweroff :  关闭系统后自动切断电源。是reboot的软链接

 reboot  :重启

           -n :重启系统,不执行sync,不写var/log/wtmp

           -w :不重启,仅在var/log/wtmp中添加相应记录。

           -i :重启前,关闭所有的网络接口,可以保证系统重启过程中不会有网络用户登录系统。

 hwclock :硬件时钟

           -s :系统时间同步硬件时间

           -w :硬件时间同步系统时间

 date :查看与设置当前系统时间。

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

       date默认格式:月日时分年.秒

       date:[MMDDhhmm[[CC][YY][ss]]

                MM: 月分

        DD:几号

        hh: 小时

        mm: 分钟

        YY: 两位年份

        CCYY: 四位年份

        .ss: 秒钟


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

   在linux上获取命令的帮助信息有两种,如果是shell自带命令,可以使用help [命令] 或 man [命令]获取帮助。

   如果不是shell自带命令,可以使用man [命令] 或者 [命令] --help 获取帮助

   man章节划分:帮助手册中的段落说明:

NAME  

SYNOPSIS      (大纲,概要)

DESCRIPTION  (描述)

OPTIONS     (选项)

EXAMPLES     (例子) 

AUTHOR

REPORTING BUGS

SEE ALSO

              各种类型的命令存在的位置:

                                        man1:用户命令

                               man2: 系统调用

man3: C库调用

man4: 设备文件及特殊文件

man5: 配置文件格式

man6: 游戏

man7: 杂项

man8: 管理类的命令

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

   文件管理命令有:cat more less (查看文件内容)

                   nano vim (编辑文件内容)

                       cat /etc/passwd

                   touch (创建文件)

                       touch 文件名         

                   cp   (文件复制)

                       -i :交互式

                       -r :递归复制目录及内部的所有内容

                       -f :强制

                       cp [option] /etc/passwd /tmp

                   rm   (删除文件)

                       -i :交互式

                       -r :递归复制目录及内部的所有内容

                       -f :强制

                       rm [option] /tmp/passwd

                   mv   (移动文件)

                       -i :交互式

                       -r :递归

                       -f 强制

                        mv [option] /etc/shadow /tmp

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

   命令执行之后都会有一个返回值,可以用echo $?查看返回值,如果返回值是0说明命令执行成功,如果返回值是1-255说明执行失败。

                

                 [root@centeos ~]# cat /etc/passwd &> /dev/null

                 [root@centeos ~]# echo $?

                 0

                 [root@centeos ~]# cat /etc/passeeewd &> /dev/null

                 [root@centeos ~]# echo $?

                 1

   命令行展开

~: 展开为用户的主目录

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

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

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

                 [root@centeos tmp]# mkdir a{d,e}

                 [root@centeos tmp]# ls

                  ad  ae

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

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

     # mkdir {a,b}_{c,_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

mkdir /tmp/mylinux/{bin,boot,dev,etc,lib,lib64,proc,sbin,sys,tmp,usr,var,lock,log,run}


mkdir -p /tmp/mylinux/grub  /tmp/mylinux/rc.d/init.d  /tmp/mylinux/sysconfig/network-scripts


mkdir -p /tmp/mylinux/lib/modules /tmp/mylinux/usr/local/{bin,sbin}


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

   元数据的信息有:如访问权限、文件拥有者以及文件数据块的分布信息、inode、以及文件的修改时间、访问时间、改变时间。

   具体含义

        access time:访问时间,用cat等文件查看命令访问文件的时间。

        modify time: 修改时间, 编辑文件内容以及属性的时间。

        change time: 改变时间, ctime,元数据发生改变

   查看文件的元数据:stat 文件路径

   修改文件的时间戳的命令touch

        -a :改变文件的访问时间为当前系统时间

        -m :改变文件的修改时间为当前系统时间

        -t :自己设定文件的访问时间与修改时间。

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

   ls  /var/l*[[:digit:]]*[[:lower:]]

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

   ls /etc/[[:digit:]]*[^[:digit:]]

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

    ls /etc/[^[:alpha:]][[:digit:]]*

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

    touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

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

    mkdir /tmp/mytest2

    cp -r /etc/*.d /tmp/mytest2

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

    mkdir /tmp/mytest3

    cp /etc/{l,m,n}*.conf /tmp/mytest3