在日常维护中,我们会常用到文件操作和目录操作命令,下面我们来学习下这些命令的使用
查看目录内容:
ls
ls是英文单词list的简写,其功能为列出目录的内容,是用户最常用的命令之一,类似于DOS下的dir命令
linux文件 或者 目录 名称最长可以有 256 个字符
以 “.” 开头的文件为隐藏文件,在用ls命令时,需要加 -a 参数才能显示出来
“.”代表当前目录
“..”代表上一级目录
ls 的常用选项:
参数 | 定义 |
-a | 显示指定目录下所有子目录与文件,包含隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合 -l 以人性化的方式显示文件的大小 |
ls通配符的使用:
通配符 | 含义 |
* | 代表任意个数个字符 |
? | 代表任意一个字符,至少1个 |
[] | 表示可以匹配字符组中任一个 |
[abc] | 匹配a、b、c中的任意一个 |
[a-f] | 匹配从a至f范围内的任意一个字符 |
切换目录:
cd
cd 是英文单词change directory 的简写,也是用户常用的命令之一,注意:linux所有的目录和文件名都是区分大小写敏感的
命令 | 含义 |
cd | 切换到当前用户的主目录(/home/用户目录) |
cd ~ | 切换到当前用户的主目录(/home/用户目录) |
cd . | 保持当前目录 不变 |
cd .. | 切换到上级目录 |
cd - | 可以在最近两次工作目录之间来回切换 |
创建和删除操作:
touch
touch 创建文件或修改文件时间
如果 文件不存在,可以创建一个空白文件,如何文件已经存在,可以修改文件的末次修改日期
rm
删除文件或目录
使用rm 命令要小心,因为文件删除后不参恢复
参数 | 含义 |
-f | 强制删除,忽略不存在的文件,无需提示 |
-f | 递归地删除目录下的内容,删除文件夹时必须加此参数,如rm a/b/c/a.txt |
rm 命令和ls命令一样,可以使用通配符删除目录和文件,并且使用rm 目录删除是不能恢复的,所以要非常注意
mkdir
创建一个新的目录
选项 | 含义 |
-p | 可以递归创建目录,如mkdir a/b/c |
拷贝和移动文件:
cp
cp 源文件 目标文件
cp命令的功能是将给出的文件或目录复制到另一个文件或目录中,相当于dos下的copy命令
选项 | 含义 |
-f | 已经存在的目标文件直接覆盖,不会提示 |
-i | 覆盖文件前提示 |
-r |
若给出的源文件是目录文件,则cp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
mv
mv 源文件 目标文件
mv 命令可以用来 移动 文件 或目录,也可以给文件 或目录重命名,
mv a.txt a/a.txt 或 mv a.txt b.txt (重命名) mv -i a test --移动目录,不需要使用-r ,使用-i是提示是否要覆盖
使用 -i 参数,用于在覆盖文件前有提示
cat
cat 是concatenate 简写,cat 命令 可以用来查看文件内容,创建文件/文件合并/追加文件 等功能,格式为:cat 文件名
cat 会一次显示 所有内容,适合 查看内容较少的 文本文件
cat -b 文件名 对非空输出行编号
cat -n 文件名 对输出的所有行编号
linux 中还有一个nl 的命令和cat -b 效果等价
more
more 文件对应英文就是more,分屏显示 文件内容,每次只显示 一页文件内容,用于显示 文本内容比较多的
使用more 的操作键
操作键 | 含义 |
空格键 | 显示 手册页面的下一屏 |
enter | 一次滚动手册页的一行 |
b | 回滚一屏 |
f | 前滚一屏 |
q | 退出 |
grep
linux 系统 中,grep命令是一种强大的文本搜索工具
grep 允许对文本进行 模式查找,所谓模式查找,又被 称为正则表达式,
选项 | 含义 |
-n | 显示匹配行及行号 |
-v | 显示不包含匹配文本的所有行(相当于求反) |
-i | 忽略大小写 |
常用两种模式查找
参数 | 含义 |
^a | 行首,搜寻以a开头的行 |
ke$ | 行尾,搜寻以ke结束的行 |
echo
重定向 > 和 >>
管道
终端实用技巧:
tab:自动补全
可以使用上/下光标键在曾经使用过的命令之间来回切换,如果想要退出选择,并且不想执行当前选中的命令,可以按ctrl + c 取消操作