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

    1.cp:复制,cp SRC DEST

       1.1:若目标不存在,则新建DEST,并将SRC中内容写入DEST中;

       1.2:若目标存在,且是文件,cp -i SRC DEST,SRC会覆盖DEST;-i交互式

       1.3:若目标存在,且是目录,直接在DEST目录下,新建与SRC同名的文件,并写入源文件内容;

       1.4:cp SRC... DEST,源文件不止一个的时候,DEST必须存在且是目录;

       1.5:若SRC是目录,使用选项-r,

         ①若DEST不存在,新建DEST并将SRC所有文件写入DEST中;

         ②若DEST存在,且是文件,报错;

         ③若DEST是目录,复制SRC中所有文件至DEST中。

    2.mv:移动 mv [OPTION]... -t DIRECTORY SOURCE...

        2.1:-i(交互式);

        2.2:-f(强制);

         2.3:若在同一目录下移动,则重命名;

    3.rm:删除 rm [OPTION] FILE...

       3.1:-r 可递归删除目录;

       3.3:-i 交互式;

       3.2:-f 强制删除。

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

    1.显示命令执行状态返回值echo $?;0表示执行成功,1-255表示执行失败;

    2.命令行展开

    ~ : 展开为用户主目录;

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

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

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

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

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

mkdir /tmp/{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 -p /tmp/mylinux/{bin,boot/grup,dev,etc{rc.d/init.d,sysconfig/network-scripts,lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var,lock,log,run}}



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

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

access time:访问时间atime,读取文件内容发生改变;

modify time:修改时间mtime,文件内容发生改变;

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

touch修改文件时间戳 

touch [OPTION]... FILE...

-a:only atime;

-m:only mtime;


5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

alias cdnet='cd /etc/sysconfig/network-scripts/' 

在命令中引用另一个命令执行结果

管道 |

echo "$PATH" | tr 'a-z' 'A-Z' | tee /tmp/PATH.OUT

less /etc/man.conf | more

变量

export magedu="How are you?"

echo $magedu


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

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

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

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

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

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

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

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

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

mkdir /tmp/mytest1

cp -a /etc/p*[^[:digit]] /tmp/mytest1


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

mkdir /tmp/mytest2

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

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

mkdir /tmp/mytest3

cp -a /etc/[lmn].conf /tmp/mytest3