文件和目录常用命令
终端实用技巧
- 自动补全
- 在敲出 文件 / 目录 / 命令 的前几个字母后,按下tab键。
- 如果输入的没有歧义,系统会自动补全。
- 如果还存在其他 文件 / 目录 / 命令,再按一下tab键,系统会提示可能存在的命令。
- 曾经使用过的命令
- 按 上 / 下 光标键可以在曾经使用过的命令之间来回切换
- 如果想要退出选择,并且不想执行当前选中的命令,可以按
CTRL + C
查看文件目录
ls
参数 | 含义 |
---|
-a | 显示指定目录下所有子目录与文件,包括隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合-l以人性化的方式显示文件大小 |
eg:查询文件信息
①ls -l
②ls -l -h
也可以联合使用,而且顺序没有要求
ls -lh = ls -l -h
ls -lha
通配符 | 含义 |
---|
* | 代表任意个数个字符 |
? | 代表任意一个字符 |
[] | 表示可以匹配字符组中的任意一个 |
[abc] | 匹配a、b、c中任意一个 |
[a-f] | 匹配从a到f范围内的任意一个字符 |
切换目录
cd
命令 | 含义 |
---|
cd | 切换到当前用户的主目录(/home/用户目录) |
cd ~ | 切换到当前用户的主目录(/home/用户目录) |
cd . | 保持在当前目录不变 |
cd .. | 切换到上级目录 |
cd - | 可以在最近两次工作目录之间来回切换 |
- 绝对路径与相对路径 - 绝对路径:在输入路径时,最前面是 / 或者 ~,表示从根目录/家目录开始的具体位置 - 相对路径:在输入路径时,最前面不是 / 或者 ~,表示相对当前目录所在的目录位置
创建和删除目录
touch
- 创建文件或修改文件时间
- 如果文件不存在,可以创建一个空白文件
- 如果文件已经存在,可以修改文件的末次修改日期
mkdir
- 创建一个新的目录
-p
表示可以递归创建目录- 新建目录的名称不能与当前目录中已有的目录或文件同名
rm
使用rm命令要小心,文件删除后不能恢复
命令 | 含义 |
---|
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
拷贝和移动文件
tree
[目录名]
cp
源文件 目标文件
命令 | 含义 |
---|
-i | 覆盖文件前提示 |
-r | 若给出的源文件是目录文件,则cp;将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
mv
源文件 目标文件
- 移动文件或目录/重命名文件或者目录
-i
表示覆盖文件前提示
查看文件内容
cat
文件名
cat
(concatenate)会一次性显示所有文件内容,适合查看内容较少的文本文件
命令 | 含义 |
---|
-b | 对非空输出行编号 |
-n | 对输出的所有行编号 |
more
文件名
-
可以用于分屏显示文件内容,每次只显示一页内容
-
适合于查看内容较多的文本文件
-
用more查看文件内容时所需快捷键
- 空格键:显示手册页的下一页
- Enter键:一次滚动手册页的一行
- b:回滚一屏
- f:前滚一屏
- q:退出
grep
搜索文本 文件名
grep
为 一种强大的文本搜索工具grep
允许对文本文件进行模式查找,所谓模式查找,又被称为正则表达式
命令 | 含义 |
---|
-n | 显示匹配行及行号 |
-v | 显示不包含匹配文本的所有行(相当于求反) |
-i | 忽略大小写 |
- 常用的两种模式查找
^a
表示行首,搜索以a开头的行ke$
表示行尾,搜索以ke结束的行
其他命令
echo
文字内容
echo
会在终端中显示参数指定的文字,通常会和重定向联合使用
重定向 >
和 >>
- 将本应该显示在终端上的内容 输出/追加 到指定文件中,指定文件不存在时创建
>
表示输出,会覆盖文件原有的内容>>
表示追加,会将内容追加到已有文件的末尾- 使用途径:当想保存终端命令或者将命令以文件的形式显示,此时就用重定向
eg:和echo命令一块使用
echo hello python > a # 此命令即表示创建了一个a的文件,并将内容hello python 写入了文件a中
管道|
- Linux允许将一个命令的输出可以通过管道
|
作为另一个命令的输入 - 常用管道命令
more:
分屏显示内容grep:
在命令执行结果的基础上查询指定的文本