一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
常用工具cp mv rm cat tac head tail more less stat
cp
cp SRC…DEST
A. 如果SRC是文件:
a. 如果目标不存在:新建DEST,并将SRC中的内容填充至DEST中。
b. 如果目标存在:
(1). 如果DEST是文件,将SRC中的文件内容覆盖至DEST中,可以使用 – i 来提醒用户是否覆盖。
(2). 如果DEST是目录,在DEST下新建与源文件同名的文件,并将DEST中的内容填充至新文件中。
B. 如果SRC是目录:则必须使用-r选项
a.如果DEST存在,则其必须是目录,否则报错。先在DEST目录下创建与SRC同名的目录,并将SRC中的所有内容复制到DEST中
b.如果DEST不存在,则先创建DEST目录,并将SRC中的所有内容复制到DEST目录中
cp常用选项
-i 交互式
-r 递归复制
-a 归档,相当于-dR –preseve=all
-d 表示不跟踪符号链接所指向的源文件
-p 保持原有文件的属性信息
-f 强制覆盖
-v 显示过程
mv
三种使用格式:
1. 如果SRC是单个文件,DEST不存在,相当于剪贴功能
2. 如果SRC是多个文件,DEST不存在,剪贴
3. 如果SRC是个目录,DEST不存在,先创建同名目录再复制
选项:-i 交互式 -f 强制
rm
选项:-i 交互式 -f 强制 -r 递归 所有不用的文件建议不要直接删除,而是移动至某个专用目录;(模拟回收站)
二、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
1. 命令行的执行结果状态:0成功,0-255失败
2. 程序的返回值:程序的功能定义
3. 程序的执行状态结果:程序执行完成后的状态
4. bash使用特需变量$?保存最近一条命令的执行状态结果
5. 命令行展开:
~:自动展开为用户的家目录,或指定的用户的家目录;
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径
三、请使用命令行展开功能来完成以下练习:
(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
mkdir -v {a,b}_{c,d}
(2)、创建/tmp/mylinux目录下的:
mkdir -pv {bin,boot/grub,dev,etc/rc.d/init.d,etc/sysconfig/network-scripts,lib/modules,lib64,
proc,sbin,sys,tmp,usr/local/{bin,etc,lib,sbin},var/{cache,log,run}}
四、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
文件的元数据信息就是stat跟上文件名查看到的信息,里面有文件大小,权限,时间戳,inode,硬连接数,
块大小等信息;比如时间戳中的mtime更改是指数据改变,ctime改动指元数据改变,数据改变了元数据一
定会改变;touch可以修改时间戳信息,但不能手动指定ctime,
touch命令:
touch – change file timestamps
touch [OPTION]… FILE…
-c: 指定的文件路径不存在时不予创建;
-a: 仅修改access time;
-m:仅修改modify time;
-t STAMP [[CC]YY]MMDDhhmm[.ss]
五、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
定义别名:alias new_name='old_name optios'
例如:alias cdnet='cd /etc/sysconfig/network-scripts/'
通过命令行定义的命令只对当前shell有效,如果想永久有效,需要配置文件中,仅对当前用户有效:~/.bashrc
对所有用户有效:/etc/bashrc
在命令中引用别名:使用$(COMMAND)或者` `命令引用
六、显示var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
ls -d /var/l*[0-9]*[[:lower:]]
七、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
ls -d /etc/[0-9]*[^0-9]
八、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
ls -d /etc/[^[:alpha:]][[:alpha:]]*
九、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
mkdir -v tfile-`date +%F-%H-%M-%S` y
十、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
cp -a /etc/p*[^[:digit:]] /tmp/tytest2
十一、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
cp -a /etc/*.d /tmp/mytest2
十二、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
cp -a /etc/[lmn]*.conf /tmp/mytest3
原创文章,作者:N24_小呆,如若转载,请注明出处:http://www.178linux.com/57825
评论列表(1条)
写的还是蛮详细的,能配合markdown优化下会更好~~加油~