1、常用文件管理类命令:cp, mv, rm
cp: copy命令
单元复制 cp [OPTION]… [-T] SOURCE DEST
DEST不存在:先创建-复制数据-EDST
例如: ~~]# cp /tmp/cat.out /tmp/cat1.out
DEST 存在:DEST非目录-覆盖DEST
b 例如: ~~]# cp /tmp/cat.out /tmp/cat.out
DEST是目录-先创建-复制数据流至DEST
例如: ~~]# cp /tmp/cat.out /tmp/
多元复制 cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
DEST不存在:错误
DEST 存在:DEST非目录-错误
DEST是目录-分别复制至目标目录
例如: ~~]# cp /tmp/ip.txt /tmp/ipnew.txt /tmp/12
常用选项:
i 交互
f 强制
r 递归,
d 复制链接,
a 全部属性归档
mv: move命令 移动,重名名
mv [OPTION]… [-T] SOURCE DEST
例如: ~~]# mv /tmp/ip.txt /tmp/ip_new.txt
mv [OPTION]… SOURCE… DIRECTORY
例如: ~~]# mv /tmp/ip.txt /etc/
mv [OPTION]… -t DIRECTORY SOURCE…
例如: ~~]# mv /tmp/12 /tmp/man/
常用选项:
i 交互
f 强制
r 递归,
rm:remove命令:删除,
rm [OPTION]… FILE…
常用选项:
-i:interactive
-f:force
-r: recursive
删除目录: rm -rf /PATH
注意:慎用rm命令建议使用mv代替 临时目录回收站 危险命令:rm -rf /*
2、bash的基础特性:命令的执行状态结果
命令执行的状态结果:
bash通过状态返回值来输出此结果:
成功:0
失败:1-255
执行结果保存于bash的$变量中
引用命令的执行结果:
$(COMMAND)
或`COMMAND`
强引用:""
bash的基础特性之:命令行展开
~:自动展开为用户的家目录,或指定的用户的家目录;
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;
例如:/tmp/{a,b} 相当于 /tmp/a /tmp/b
3、命令展开功能练习:
(1)创建/tmp目录下的:a_c,a_d, b_c, b_d
~]# mkdir -pv /tmp/{a_{c,d},b_{c,d}}
/tmp
|– a_c
|– a_d
|– b_c
|– b_d
(2) 创建/tmp/mylinux目录下的对应目录
~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/ini.d,sysconfig/network-script},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
/tmp/mylinux/
|– bin
|– boot
| `– grub
|– dev
|– etc
| |– rc.d
| | `– ini.d
| `– sysconfig
| `– network-script
|– lib
| `– modules
|– lib64
|– proc
|– sbin
|– sys
|– tmp
|– usr
| `– local
| |– bin
| `– sbin
`– var
|– lock
|– log
`– run
4、文件元数据信息又哪些,分别表示什么意义,如何查看如何修改文件的时间戳信息。
元数据包含文件的路径、大小,权限、时间戳等
查看元数据命令 stat [OPTION]… FILE…
例如: ~]#stat /tmp/ip_new.txt
时间戳:
access time:2015-12-10 16:12:22.776423693 +0800 存取时间(最后一次读的时间) cat more
modify time:2015-12-10 16:12:22.776423693 +0800 文件内容修改时间 (数据)
change time:2015-12-10 16:12:22.776423693 +0800 文件修改时间 (数据和元数据)
touch命令:
touch [OPTION]… FILE…
-c:指定文件不存在时不创建
-a:修改access time:
-m:修改modify time;
-t:STAMP 指定时间
[[CC]YY]MMDDhhmm[.ss]
例如:
~]# touch -t 0911142234.50 /tmp/ip_new.txt 更新 access,modify为指定时间
~]# touch -a /tmp/ip_new.txt 更新access时间为当前系统当前时间
~]# touch -r A B 更新B文件的时间戳和A文件的相同
注意change time 即当前修改时间
5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
alias,命令别名
alias NAME='COMMAND' 定义一个命令别名
例如 ~]# alias cp='cp -i'
alias 查看bash中存在的命令别名
命令引用
引用命令的执行结果:
$(COMMAND) $(cat /tmp/ip_new.txt)
或`COMMAND` $`cat /tmp/ip_new.txt`
bash基本特性:引用
强引用: ''
弱引用:""
命令引用:“
6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
~]# ls -d /etc/l?*[0-9]*[[:lower:]]
7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
~]# ls -d /etc/[0-9]*[^0-9]
8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
~]# ls -a /etc/[^a-z][a-z]*
~]# ls -d /etc/[^[:alpha:]][[:alpha:]]*
9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
~]# touch /tmp/tfile-$(date +"%Y-%m-%d-%H-%M-%S")
10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
~]# mkdir /tmp/mytest1 | cp -rf /etc/*[^0-9] /tmp/mytest1
11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
~]# mkdir /tmp/mytest2 | cp -rf /etc/*\.d /tmp/mytest2
12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。
~]# mkdir /tmp/mytest3 && cp -rf /etc/[l-n]*\.conf /tmp/mytest3
~]# mkdir /tmp/mytest3 | cp -rf /etc/[l-n]*\.conf /tmp/mytest3
原创文章,作者:N24-zhoub,如若转载,请注明出处:http://www.178linux.com/57782
评论列表(1条)
内容基本上都完成了,结合markdown来展示的话,会更好;继续加油~