一、Linux下文件和目录的特点
- Linux文件或目录名称最长可以有256个字符
- 以 . 开头的文件为隐藏文件,需要使用参数 -a 才能显示出来
- . 代表当前目录
- ..代表上级目录
二、终端实用技巧
1、自动补全
- 在敲出目录/文件/命令的前几个字母之后,按下 tab 键
- 如果有歧义,则再按一下 tab 键,系统会提示可能存在的命令
2、曾经使用过的命令
- 按上/下光标键,可以在曾经使用过的命令之间来回切换。
- 如果不想使用当前命令,并且退出选择,按 ctrl+c 。
三、相对目录与绝对目录
相对目录:表示相对当前目录所在的目录位置
绝对目录:从根目录开始的具体目录位置,最前面是 / 或者 ~
四、常用命令预览
命令 |
作用 |
ls |
查看当前文件夹下的内容 |
pwd |
查看当前所在文件夹路径 |
cd |
切换工作目录 |
touch |
如果文件不存在,则新建文件 |
mkdir |
创建目录 |
rm |
删除指定文件或目录 |
mv |
移动文件或目录 / 文件或目录重命名 |
cat |
查看文件内容,创建文件,文件合并 |
more |
分屏显示文件内容 |
grep |
搜索文本文件内容 |
tree |
以树状图列出文件目录结构 |
cp |
复制文件或者目录 |
clear |
清屏 |
ls
- 作用:查看当前文件夹下的内容
- 格式:ls [选项]
选项 |
含义 |
-a |
显示指定目录下的所有子文件和目录,包括隐藏文件 |
-l |
以列表形式显示文件的详细信息 |
-h |
配合-l使用,以人性化的方式显示文件大小 |
ls通配符的使用
- 举例:查找以a开头的文件或目录 ls a*
通配符 |
含义 |
* |
代表任意个数个字符 |
? |
代表任意一个字符,至少一个 |
[] |
可以匹配字符组中的任意一个 |
[abc] |
匹配a、b、c中的任意一个 |
[a-f] |
匹配 a - f 范围中的任意一个字符 |
cd
- 作用:切换工作目录
- 格式:cd [选项] [参数]
命令 |
含义 |
cd |
切换到当前用户的主目录 |
cd ~ |
切换到当前用户的主目录 |
cd . |
保持在当前目录不变 |
cd .. |
切换到上级目录 |
cd - |
可以在最近两次工作目录之间来回切换 |
touch
- 作用:一是如果要创建的文件已经存在,则已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。
- 格式:touch [选项] [参数]
- 举例:touch -t 201910042054 file1
选项 |
含义 |
-t |
使用指定的日期时间 [[CC]YY]MMDDhhmm[.SS] |
mkdir
- 作用:创建目录
- 格式:mkdir [选项] 目录名
- 举例:mkdir -p aa/bb/cc
选项 |
含义 |
-p |
递归创建目录 |
-m |
建立目录的同时设置目录的权限 |
rm
- 作用:删除指定文件或目录
- 格式:rm [选项] 文件名或目录名
- 注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它
选项 |
含义 |
-f |
强制删除文件或目录 |
-r |
递归的删除目录下的所有内容,删除文件夹时必须有此参数 |
mv
- 作用:移动文件或目录 / 文件或目录重命名
- 格式:mv [选项] 源文件 目标文件
- 当源文件与目标文件的路径相同时,则为修改文件名
- 但若修改之后的文件名之前就存在此目录下,则修改后将覆盖那个已存在的文件,造成之前已存在的那个文件的内容丢失,所以需要加上选项 -i
选项 |
含义 |
-i |
如果目标文件存在,覆盖文件前提示是否覆盖(是y,否n) |
-b |
若覆盖文件,则覆盖前先进行备份 |
-f |
如果目标文件存在,不会询问,直接强制覆盖 |
cat
- 作用:①显示文件内容
②创建一个文件
③将几个文件合并为一个文件
- 格式:① cat filename
② cat > filename
③ cat file1 file2 > file
- 注意:cat会一次显示所有内容,适合查看内容较少的文件
选项 |
含义 |
-b |
对非空输出行编号 |
-n |
对输出的所有行编号 |
more
- 作用:分屏显示文件内容
- 格式:more 文件名
- 注意:适用于查看内容较多的文本文件
选项 |
含义 |
-s |
将多个空行压缩成一行显示 |
-u |
将文件内容中的下划线去掉 |
-c |
从顶部清屏,然后显示内容 |
more的操作键
操作键 |
功能 |
空格 |
显示手册的下一屏 |
回车 |
一次滚动手册页的一行 |
b |
回滚一屏 |
f |
前滚一屏 |
q |
退出 |
grep
- 作用:强大的文本搜索工具,可以使用正则表达式搜索文本
- 格式:grep [参数] 要查找的内容 文件名
- 注意:如果要查找的内容中有空格,则需要添加引号
选项 |
含义 |
-n |
显示匹配行及行号 |
-v |
显示不包含匹配文本的所有行(相当于求反) |
-i |
忽略大小写 |
-c |
只输出匹配行的总数 |
常用的两种模式查找
选项 |
含义 |
^a |
行首,搜寻以a开头的行 |
ke$ |
行尾,搜寻以ke为结尾的行 |
tree
- 作用:以树状图列出文件目录结构
- 格式:tree [选项] [参数]
- 注意:tree是需要自己安装的,每个版本的安装方式可能有不同
- 举例:Ubuntu安装tree:sudo apt install tree
选项 |
含义 |
-d |
只显示目录 |
-a |
显示所有文件和目录 |
-t |
按文件和目录的更改时间排序 |
-f |
在每个目录或文件前面,显示完整的相对路径 |
-s |
列出文件或目录的大小 |
cp
- 作用:复制文件或目录
- 格式:cp [选项] 源文件或目录 目标文件或目录
- 举例:cp -r /usr/Myfile1 /usr/Myfile2
选项 |
含义 |
-a |
此参数的效果和同时指定"-dpR"参数相同 |
-b |
覆盖已存在文件时,先对目标文件进行复制 |
-d |
复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式 |
-f |
强制覆盖已经存在的目标文件,不给出提示 |
-i |
覆盖文件前先询问 |
-l |
对源文件建立硬链接,而非复制文件 |
-p |
保留源文件或目录的属性,包括所有者、所属组、权限与时间 |
-r |
若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
-s |
对源文件建立符号链接,而非复制文件 |
五、查询命令帮助信息
- 格式:命令 --help
man 命令
man的操作键
操作键 |
功能 |
空格 |
显示手册的下一屏 |
回车 |
一次滚动手册页的一行 |
b |
回滚一屏 |
f |
前滚一屏 |
q |
退出 |
以上是Linux的一些常用命令及使用方法,如果你在学习Linux,建议亲自动手操作,命令都很简单,熟练操作才是王道。