系统文件管理命令
一个目录下不可能出现同名的文件,不管是文件夹还是文件都不能同名。linux区分大小写,windows不区分大小写。
创建目录mkdir
-
mkdir [option] directory # []表示可加可不加 -
-m:创建目录时授权 -
-p:递归创建目录,如果目录已经存在则不创建,并且不报错 -
-v:显示创建目录的信息,查看创建目录的过程 -
# 基本用法 -
mkdir /test # /目录下创建test目录 -
mkdir test # 当前目录创建 -
mkdir ../test # 当前目录的上一级目录 -
mkdir ./test # 当前目录创建 -
mkdir /usr/local/test # 指定目录创建 -
mkdir .test # 当前目录下创建隐藏目录 -
# 创建多个目录 -
cd /tmp -
mkdir -p test /usr/local/test /test/teat # 第一种方式 -
mkdir a{1, 2, 3} # 创建有规律的a1 a2 a3目录 -
mkdir a{10...100} # 创建a10 - a100目录 -
mkdir /{home/{test/test{1, 2}, oldboy}, backup} -
# -m 数字是是从000-777之间的数字,每一位不能超过7 -
mkdir -m 777 test # 所有的权限 -
mkdir -m 000 testb # 没有权限
创建目录时报错处理
-
[root@zhuang ~]# mkdir /abc/def/efg -
mkdir: cannot create directory '/abc/def/efg': No such file or directory -
报错原因是:/abc目录不存在,所以无法创建后续目录 -
解决方案:mkdir -p /abc/def/efg -
[root@zhuang ~]# mkdir /abc/def/efg -
mkdir:cannot create directory '/abc/def/efg': directory is exists -
报错原因:目录已经存在了 -
解决方法:不创建就好了呀~~~,或者加参数-p就不会创建了,而且不报错 -
[test@zhuang ~]$ mkdir /root/test -
mkdir:cannot create directory '/root/test': permission denied -
报错原因:权限不够 -
解决方法:需要授权
创建文件touch
-
touch [option] file -
1创建文件时如果文件已存在则修改它的 `修改时间` 和 `访问时间` 和 `改变时间`,不存在则创建 -
2必须创建在已经存在的目录中 -
3创建相同文件不会被覆盖 -
4linux中一切皆文件,没有后缀名之分
显示目录结构tree
-
# 什么参数都没有 -
tree # 当前目录的目录结构 -
# 指定文件夹查看目录结构 -
tree /r -
# 查看指定级数的目录结构-L -
tree -L 级数 /root -
tree -L 3 / -
# 只看目录结构-d,选项是指定给某个参数的,参数必须写在指定选项后面,比如-dL 1 不建议写-Ld 1 -
tree -d -L 3 /
复制文件或者目录cp
-
copy:拷贝,无法直接拷贝目录需要借助-r参数 -
cp [OPTION]... SOURCE... DIRECTORY # source路径下的文件拷贝到新路径下可以改名 -
cp www /root # 将当前路径下的www复制到/root路径下,文件名不变 -
cp www /root/aaa -
1.如果aaa存在并且是一个目录,会将www放到/root/aaa目录下 -
2.如果aaa存在并且是一个文件,会将www放到/root目录下,并且覆盖原文件的内容 -
3.如果aaa不存在,会将www放到/root目录下并改名为aaa -
# 三个语法 -
cp -T 原文件 目标文件(必须有文件名) -
cp -t 目标路径 原文件 -
cp 原文件路径 目标路径(可以改名) -
-a:相当于-r -p,既做到了递归又保持了文件的属性 -
-i:如果拷贝过程中出现重复文件名,询问是否覆盖 -
-r(-R, --recursivve):递归拷贝文件,直接拷贝会改变文件属性 -
-p:在拷贝文件的过程中保持文件原有的属性 -
-v:显示拷贝文件的过程 -
-t:将原文件和目标文件的书写位置反过来
移动命令mv
-
# 语法,mv命令可以直接移动目录不需要递归 -
mv [OPTION]... SOURCE1 SOURCE2.... ... DIRECTORY -
mv test test1 -
# test1是否存在,如果存在并且是个目录,就将test移动到test1中 -
# 如果test1存在,如果存在是个文件会询问是否覆盖。 -
# test1如果不存在,则将test文件改名为test1 -
# 选项 -
-i:在移动过程中如果存在相同的文件名就询问是否覆盖 -
-t:将原文件和目录反过来 -
# 注意 -
mv命令可以直接移动目录,不需要递归,并且不会修改文件属性 -
mv命令后可以写多个文件,但是最后一个必须是目录,表示将前面所有的原文件移动到最后的目录中 -
文件不能覆盖目录,但是可以放入目录里面,目录不能覆盖文件并且不能放到文件里
删除命令rm
-
# 语法 -
rm [OPTION]... FILE... -
Remove (unlink) the FILE(s). -
# 选项 -
-d:只能删除空目录,没什么用 -
-r:递归删除 -
-f:强制 -
-v:显示删除的细节 -
# 注意 -
rm命令本身只能删除文件不能删除目录,如果想要删除目录需要使用选项 -
linux中没有回收站,rm会永久删除文件 -
删除文件的时候尽量使用rm -f -
如果文件或者目录不存在不会报错
系统文件查看命令cat
-
# 语法 -
cat [OPTION]... [FILE]... -
# 选项 -
-n:查看文件并显示文件的行数,空行也编号 -
-E:以$标注每行结尾 -
-T:以^I标注文件中的tab键 -
-A:相当于-v -E -T -
# 其他用法 -
tac file # 把文件反过来看 -
cat >>xx.txt <<EOF # 向文件中输入内容,EOF表示输入EOF就结尾,也可以是其他字母
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

-
文档获取方式: -
加入我的软件测试交流群:680748947免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)
这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取