1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
文件管理类命令有cp mv rm
cp 复制文件和目录
cp SOURC DEST #SOURC指源文件,若DEST不存在,则新建DEST并将SOURC文件中的内容复制 到 DEST中;若DEST存在:若是文件,则覆盖其中的内容;若是目录,则在其中创建名为SOURX的文件并将源文件的内容复制到其中。
例如cp /etc/fstab /tmp/a.txt cp /etc/fstab /tmp
cp FILE1,FILE2,... DEST #当源为多个文件时,DEST必须存在且为目录
例如cp /etc/fstab /var/log/messages /tmp
cp -r SOURC DEST #此时SOURC是目录,若DEST不存在,则创建名为DEST的目录并将SOURC复制 到其中;若DEST存在,则直接将DEST复制到其中
例如cp -r /etc/rc.d/ /tmp cp /etc/rc.d/ /dire
mv 重命名或者移动文件/目录到目录中
mv SOURC DEST
mv SRC1 src2 ... DEST
例如mv /tmp/a.txt /tmp/b.txt #重命名
mv /tmp/b.txt /root/
rm删除文件或目录
rm [OPTION]... FILE...
rm -rf DIRECTORIES #强制删除目录及其内部所有内容,慎用该命令!
2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
bash命令状态返回值取值范围为0--255 .命令执行成功,状态返回值为0,否则状态返回值为1--255 中的税基一个数字 当执行命令后,执行echo $?
即可得到上个命令的状态返回值
当输入一个命令的部分字符后,bash从内部命令中搜寻与之相匹配ude所有命令,若无其他命令与该命令的已输入部分相同,按一次Tab键即可进行命令补全;
若有若干个命令包含已输入的字符串,连续按两次Tab键会列出全部搜索到的命令。
3、请使用命令行展开功能来完成以下练习:
(1)、创建/tmp目录下的:a_c, a_d, b_c, 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
(1) touch/tmp/{a,b}_{c,d}
(2) mkdir -p /tmp/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}
4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
文件的元数据有:
mode 文件的权限
ownership 属组属主
timestramp时间戳
links链接属性
xattr 扩展属性
context安全上下文
通过lsattr file 可以查看文件的扩展属性,设置文件的扩展属性用chattr [options] file
其他的元数据信息可以用ll file stat file 来查看。修改文件时间戳可以使用touch命令
touch -t STAMP file STAMP可以是这种格式[[CC]YY]MMDDhhmm[.ss],用以替换文件当前的时间戳.
5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
alias 是用来定义别名的命令 例如alias pp=’ps -aux’ 则在执行pp后就等同于执行了命令“ps–aux”撤销别名可用unalias
例如unalias pp 可使用管道命令(|)来引用另一个命令的输出结果,例如 cat /etc/passwd | cut –d ”:” -f 1,7
6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
ls–d /var/1*[[ :digit: ]]*[[ :lower: ]]
7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
ls–d /etc/[[ :digit: ]]*[^[ :digit: ]]
8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
ls –d /etc/[^[ :alpha: ]]*[a-z]*
9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile2016-08-06-09-32-22。
touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`
10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
cp -a /etc/p*[^[ :digit: ]] /tmp/mytest1
11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
cp -a /etc/*.d /tmp/mytest2
12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
cp -a /etc/[lmn]*.conf /tmp/mytest3