一.Linux上常用的文件管理类命令及用法示例
1.cp复制命令,具体有两个,一为单源复制,一种为多源复制。
常用选项
-i :交互式复制,覆盖之前提醒用户确认。
-f:强制覆盖,不提示。
-r:递归复制目录。(注意不同windows复制文件夹名相同会覆盖,这里会把源目录里的所有文件附加到新的目录下)
-d:复制符号链接文件本身(如果没有这选项,则会复制文件本身,-d 等于直接复制快捷方式)
-a: -dR –preserve=all ,archive, 用于实现归档
–preserve=
mode:权限
ownership:属主和属组
timestamps:时间戳
context:安全标签
xattr:扩展属性
links:符号链接
all:以上所有属性
单源复制:cp [OPTION]… SOURCE DEST
示例:copy文件到目录
[root@localhost ~]# cp /etc/fstab /tmp/
copy目录到另一个目录
[root@localhost ~]# cp -r /var/log /tmp/log
copy目录到另一个目录,并重命名
[root@localhost ~]# cp -r /var/log /tmp/log1
多源复制: cp [OPTION]… SOURCE… DIRECTORY
cp -f /etc/fstab /var/log/boot.log /var/log/yum.log /tmp/
cp [OPTION]… -t DIRECTORY SOURCE…
2.mv命令:移动文件或目录
mv [OPTION]… [-T] SOURCE DEST
mv [OPTION]… SOURCE… DIRECTORY
mv [OPTION]… -t DIRECTORY SOURCE…
用法和cp差不多,常用选项
-i:交互式
-f:强制移动
3.rm命令:删除文件或目录
rm [OPTION]… FILE…
常用选项:
-r:递归删除
-f:强制删除
示例: rm -rf /tmp/
4.mkdir:建立目录
mkdir [OPTION]… DIRECTORY …
-p:自动按需创建父目录
-v:显示详细过程
-m: 直接给定权限
示例:[root@localhost ~]# rmdir /tmp1
5.rmdir:删除空目录
示例:[root@localhost ~]# rmdir /tmp1 这里也可以使用rm -rf /tmp1
6.tree:显示目录层级结构
tree [OPTION] [directory]
-L : level ,要显示的层级
示例:
只显示一层
二.bash的工作特性之命令执行状态返回值和命令展开所涉及的内容及示例
1.命令执行状态返回值
bash下执行命令后,不管成功与否,都会有一个返回值,我们可以通过
命令echo $?查看这个近回值可以判断上一次的命令执行是否成功,成功返
回0,失败返回非0。
示例:执行成功
执失失败
2.命令展开
~:展开为用户的主目录
~USERNAME:展开为指定用户的主目录
{ }:可承载一个以逗号分隔的路径列表,并能够将
例如:mkdir /tmp{a,b} 相当于mkdir /tmp/a /tmp/b
mkdir {a,b}_{c,d} 相当于mkdir a_c a_d b_c b_d
三.命令展开创建目录练习
练习(1)创建/tmp目录下的a_c,a_d ,b_c, b_d
(2)创建下图目录层结构
[root@localhost 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}}
四.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何时修改文件的时间戳信息。
无数据包含信息有路径,大小inode,权限,修改时间,访问时间,链接信息等相关属性信息。通过命令stat查看
可通过touch命令来修改相关时间戳
touch – change file timestamps (如果文件不存在,则创建新文件)
touch [OPTION]… FILE…
-c :指定文件路径不存在时不创建新文件
-a:修改access time
-m:修改modify time
-t: STAMP
use [[CC]YY]MMDDhhmm[.ss] instead of current time
五.如何定义一个命令别名,如何在命令中引用另一个命令的执行结果?
定义别名:
#alias NAME='COMMNAD' (只对当前shell进程有效) (永久有效修改家目录 .bash_profile)
在命令中引用另一个命令的执行结果可以用反引号 `COMMAND`或$(COMMAND)
六.显示/var目录下所有l开头的,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
七.显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
[root@localhost tmp]# ll /etc/[0-9]*[^0-9]
八.显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意长符的文件或目录。
[root@localhost tmp]# ll -d /etc/[^a-z][a-z]*
九.在/tmp目录下创建以下所有tfile开头,后面跟当前日期和时间的文件,文件名形如:tfile-2016-05-27- 09-32-22.
[root@localhost tmp]# touch /tmp/tfile-`date +%F-%H-%M-%S`
十.复制/etc目录下所有以p开头,以非数字结尾的文件到目录到/tmp/mytest1目录中。
[root@localhost tmp]# cp -r /etc/p*[^0-9] /tmp/mytest1
十一.复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
cp -r /etc/*.d /tmp/mytest2
十二.复制/etc目录下所有以l或m开头,以.conf结尾的文件 至/tmp/mytest3目录中
cp -r /etc/[lm]*.conf /tmp/mytest3/
原创文章,作者:mr.sprint,如若转载,请注明出处:http://www.178linux.com/63396
评论列表(1条)
赞,基础命令总结的非常详细,基础命令很重要~~加油