目录
ls
常用选项及功能
综合示例
注意事项
cd和pwd命令
cd命令
pwd命令
相对路径、绝对路径和特殊路径符
特殊路径符号
mkdir命令
1. 功能与基本用法
2. 示例
3. 语法与参数
4. -p选项
touch-cat-more命令
1. touch命令
2. cat命令
3. more命令
cp-mv-rm命令
1. cp命令
2. mv命令
3. rm命令
rm命令的注意事项
危险命令示例
效果
which和find指令
权限修改
which 命令
功能
基本语法
常用选项
示例
注意事项
find 命令
功能
基本语法
常用选项
示例
注意事项
grep、wc、管道符
1. grep 命令
2. wc 命令
3. 管道符(|)
拓展说明:
echo、反引号``、重定向符(>)、tail 命令
1. echo 命令
2. 反引号符
3. 重定向符
4. tail 命令
Vim\vi编译器
vi/vim编辑器的三种工作模式
命令模式 (Command mode)
输入模式 (Insert mode)
底线命令模式 (Last line mode)
ls
在命令行中,以列表的形式,展示当前工作目录(默认HOME目录)下的内容(文件或文件夹)。
-
功能:列出目录中的文件和子目录。
-
基本语法:
ls [选项] [目录或文件]
常用选项及功能
选项 | 功能 |
---|---|
-a | 显示所有文件和目录,包括以点(. )开头的隐藏文件和目录。 |
-l | 以长格式显示文件和目录的详细信息,包括权限、所有者、所属组、大小、修改时间等。 |
-h | 与 -l 结合使用,以易读格式显示文件大小(如 KB、MB、GB)。 |
-t | 按文件的修改时间排序,最近修改的文件或目录排在前面。 |
-r | 反向排序。 |
-S | 按文件大小排序,最大的文件或目录排在前面。 |
-R | 递归显示目录中的所有子目录和文件。 |
-d | 显示目录本身,而不是目录中的内容。 |
综合示例
-
命令:
ls -laht
-
-l
:长格式显示。 -
-a
:显示所有文件,包括隐藏文件。 -
-h
:以易读格式显示文件大小。 -
-t
:按修改时间排序。
-
注意事项
-
默认行为:不指定任何选项或目录时,
ls
默认显示当前目录中的文件和目录,不显示隐藏文件。 -
颜色显示:在大多数现代终端中,
ls
会以颜色区分文件类型(如蓝色表示目录,绿色表示可执行文件等)。可以通过ls --color=auto
显式启用颜色显示。 -
别名:很多用户会通过别名(
alias
)为ls
设置默认选项,例如:alias ls='ls -lht --color=auto'
。
cd和pwd命令
cd命令
- 功能:用于切换当前工作目录。
- 来源:Change Directory。
- 语法:
cd [Linux路径]
- 没有参数:表示目标路径。
- 使用参数:可以切换到指定的路径。
- 不使用参数:则切换到当前用户的HOME目录。
pwd命令
- 功能:显示当前工作目录。
- 来源:Print Work Directory。
- 语法:直接输入
pwd
即可使用。- 没有参数或选项:直接输出当前所在的工作目录。
相对路径、绝对路径和特殊路径符
绝对路径:以根目录为起点,描述路径的一种写法,路径描述以 /
开头。
相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需 /
开头。
特殊路径符号
.
表示当前目录。例如:cd ./Desktop
表示切换到当前目录下的Desktop目录,效果与cd Desktop
一致。..
表示上一级目录。例如:cd ..
可切换到上一级目录,cd ../..
则切换到上二级目录。~
表示HOME目录。例如:cd ~
可切换到HOME目录,cd ~/Desktop
则切换到HOME内的Desktop目录。
mkdir命令
1. 功能与基本用法
mkdir
命令用于创建新的目录(文件夹)。- 基本语法:
mkdir 文件夹名称
2. 示例
- 创建一个名为
myfolder
的文件夹的命令:mkdir myfolder
- 执行后,
myfolder
将在当前目录下创建。
3. 语法与参数
- 语法:
mkdir [-p] Linux路径
- 参数:必填,表示要创建的目录路径,可以是相对路径、绝对路径或使用特殊路径符号。
4. -p选项
- 可选:表示自动创建不存在的父目录,适用于创建连续多层级的目录。
touch-cat-more命令
1. touch命令
- 功能:用于创建一个新的文件。
- 语法:
touch Linux路径
- 参数:必填,表示要创建的文件的路径,可以使用相对路径、绝对路径和特殊路径符号。
2. cat命令
- 功能:用于查看文件内容。
- 语法:
cat Linux路径
- 参数:必填,表示要查看的文件的路径。
3. more命令
- 功能:用于查看文件内容,支持翻页查看。
- 语法:
more Linux路径
- 参数:必填,表示要查看的文件的路径。使用空格进行翻页,按
q
退出查看。
cp-mv-rm命令
1. cp命令
- 功能:用于复制文件或文件夹。
- 语法:
cp [-r] 参数1 参数2
- 参数说明:
-r
选项:可选,用于复制文件夹时使用,表示递归。- 参数1:Linux路径,表示被复制的文件或文件夹。
- 参数2:Linux路径,表示要复制到的地方。
2. mv命令
- 功能:用于移动文件或文件夹。
- 语法:
mv 参数1 参数2
- 参数说明:
- 参数1:Linux路径,表示要移动的文件或文件夹。
- 参数2:Linux路径,表示要移动到的地方。如果目标不存,则执行改名。
3. rm命令
-
功能:用于删除文件或文件夹。
-
语法:
rm [-r] [-f] 参数1 参数2 ...... 参数N
-
选项说明:
-r
:可选,用于递归删除文件夹及其内容。-f
:可选,用于强制删除,不提示(一般用于root用户)。
-
参数:表示要删除的文件或文件夹的路径,支持多个参数,并用空格分隔。也可以支持通配符,以做模糊匹配。
rm命令的注意事项
- 功能:
rm
命令用于删除文件或目录。- 风险:该命令是一个危险的命令,特别是在以root(超级管理员)用户身份执行时,请慎重使用。
危险命令示例
- 请千万不要在root权限下执行以下命令:
rm -rf /rm -rf /*
效果
- 这些命令会删除根目录下的所有文件和目录,效果类似于在Windows上执行完整格式化操作。
请务必小心使用
rm
命令,以防误删除重要数据。
which和find指令
-
which
:用于查找可执行文件的路径,主要用于定位命令的完整路径。 -
find
:用于在文件系统中查找文件和目录,功能强大,支持多种条件和操作。
权限修改
为了确保后续演示,拥有最大的权限,可以在整个系统完成搜索。
我们可以切换到root用户以获得管理员权限。执行命令:
su - root (有两个空格)输入密码:123456(和你普通用户的密码一样)
which
命令
which
是一个简单的命令,用于查找可执行文件的路径。
功能
-
用途:查找用户输入的命令是否为可执行文件,并显示其完整路径。
-
主要用途:帮助用户快速定位系统中已安装的命令或程序的路径。
基本语法
which [选项] 命令名
常用选项
-
-a
:显示所有匹配的路径(默认只显示第一个匹配的路径)。 -
-s
:静默模式,不输出任何内容,只返回状态码(成功返回 0,失败返回非 0)。
示例
-
查找
ls
命令的路径which ls
输出示例:
/bin/ls
-
查找所有匹配的路径
which -a python
输出示例:
/usr/bin/python /usr/local/bin/python
-
静默模式
which -s some_command echo $?
如果命令存在,返回
0
;如果不存在,返回非0
。
注意事项
-
which
只会查找环境变量PATH
中定义的路径,不会搜索整个文件系统。 -
如果需要更全面的搜索,可以使用
find
或whereis
命令。
find
命令
find
是一个功能强大的命令,用于在文件系统中查找文件和目录。
功能
-
用途:在指定目录及其子目录中查找满足特定条件的文件或目录。
-
主要用途:根据名称、类型、大小、权限、修改时间等条件查找文件。
基本语法
find [搜索起始路径] [条件] [操作]
常用选项
-
搜索路径:指定从哪个目录开始搜索。如果不指定,默认为当前目录。
-
条件:
-
-name <模式>
:按文件名查找(区分大小写)。 -
-iname <模式>
:按文件名查找(不区分大小写)。 -
-type <类型>
:按文件类型查找(f
表示文件,d
表示目录)。 -
-size <大小>
:按文件大小查找(如-size +10M
表示大于 10MB 的文件)。 -
-mtime <天数>
:按修改时间查找(如-mtime +30
表示修改时间超过 30 天的文件)。
-
-
操作:
-
-print
:打印找到的文件路径(默认操作)。 -
-exec <命令> {} \;
:对找到的文件执行指定命令。
-
示例
-
按文件名查找
find /home/user -name "*.txt"
从
/home/user
目录开始,查找所有扩展名为.txt
的文件。 -
按文件类型查找
find . -type d
查找当前目录及其子目录中的所有目录。
-
按文件大小查找
find / -size +1G
查找整个文件系统中大于 1GB 的文件。
-
按修改时间查找
find . -mtime +30
查找当前目录及其子目录中修改时间超过 30 天的文件。
-
对找到的文件执行操作
find . -name "*.log" -exec rm -f {} \;
删除当前目录及其子目录中所有扩展名为
.log
的文件。
注意事项
-
find
的搜索范围非常广泛,可能会消耗较多时间,尤其是在大文件系统中。 -
使用
-exec
时,{}
表示找到的文件路径,\;
表示命令结束。 -
如果需要更复杂的条件组合,可以使用逻辑运算符
-and
、-or
和-not
。
grep、wc、管道符
1. grep 命令
功能:从文件中通过关键词过滤文档内容。
语法:
grep [-n] 关键字 文件路径
- -n 选项:可选,表示在结果中显示匹配的行号。
- 参数说明:
- 关键字:需要搜索的字符串或正则表达式。
- 文件路径:必填,表示要过滤的文件,可以为管道符的输入。
使用示例:
grep "error" log.txt
这一示例会查找 log.txt
文件中所有包含 "error" 的行。
2. wc 命令
功能:命令统计文件的行数、单词数、字节数等。
语法:
wc [-c -m -l -w] 文件路径
- 默认统计项:如果不带选项,默认统计行数、单词数、字节数。
- 选项:
-c
:字节数-m
:字符数-l
:行数-w
:单词数
- 参数说明:被统计的文件路径,可以作为管道符的输入。
使用示例:
wc -l example.txt
这一示例会返回 example.txt
文件中的行数。
3. 管道符(|)
管道符用于将一个命令的输出作为另一个命令的输入,通常将左边得到的数据输入到右边的文件地址位置上去,从而实现命令之间的数据传递。例如:
grep "error" log.txt | wc -l
这个命令会计数 log.txt
文件中包含 "error" 的行数,先通过 grep
获取匹配行,再通过 wc -l
计算行数。
拓展说明:
- grep 和 wc 都是非常强大的工具,在文本处理和数据分析中十分常用。
- 使用管道符可以组合多个命令,创建更复杂的数据处理流程,提高工作效率。
echo、反引号``、重定向符(>)、tail
命令
1. echo
命令
echo
命令用于在命令行中输出指定内容。它的基本语法如下:
echo 输出的内容
-
参数说明:
echo
命令只有一个参数,即要输出的内容。如果内容包含空格或特殊字符,可以用双引号" "
包围。
示例:
echo "Hello, World!"
2. 反引号符
反引号符 `
用于执行命令并将结果作为普通字符处理。被反引号包围的内容会被作为命令执行,而不是普通字符。
示例:
echo `pwd`
3. 重定向符
重定向符用于将命令的输出写入文件中。
-
覆盖写入:使用
>
符号将左侧命令的结果覆盖写入到符号右侧指定的文件中。ls -l > output.txt
-
追加写入:使用
>>
符号将左侧命令的结果追加写入到符号右侧指定的文件中。ls -l >> output.txt
4. tail
命令
tail
命令用于查看文件尾部的内容,并可以持续跟踪文件的更新。
-
基本语法:
bash复制
tail [-f] [-num] Linux路径
-
选项说明:
-
-f
:持续跟踪文件的更新。 -
-num
:启动时查看文件尾部的指定行数,默认为10行。
-
示例:
tail -f /path/to/logfile.log
tail -10 /path/to/logfile.log
Vim\vi编译器
vi/vim 是 visual interface 的简称,是 Linux 中最经典的文本编辑器。
同图形化界面中的文本编辑器一样,vi 是命令行下对文本文件进行编辑的绝佳选择。
vim 是 vi 的加强版,涵盖 vi 的所有指令,不仅能够编辑文本,而且还具有 shell 程序编辑的功能,可以用不同颜色的主题来辨别语法的正确性,极大方便了程序的设计和编辑性。
vi/vim编辑器的三种工作模式
命令模式 (Command mode)
命令模式下,所按的按键编辑器都理解为命令,以命令驱动执行不同的功能。此模型下,不能自由进行文本编辑。
输入模式 (Insert mode)
也就是所谓的编辑模式、插入模式。此模式下,可以对文件内内容进行自由编辑。
底线命令模式 (Last line mode)
开始,通常用于文件的保存、退出。
通过 vi
/vim
命令编辑文件,会打开一个新的窗口,此时这个窗口就是命令模式窗口。
- 命令模式是
vi
编辑器的入口和出口,如右图所示。 - 进入
vi
编辑器会进入命令模式。 - 通过命令模式输入键盘指令,可以进入输入模式。
- 输入模式需要返回到命令模式,然后通过命令可以进入底线命令模式。
关于操作vim的快捷键:Vim快捷键_vim到最后的快捷键-CSDN博客