Linux基础命令
内容整理自网络,仅供个人学习记录使用,如有侵权请联系删除。
转载请注明出处:linux基础命令 - 简书 (jianshu.com)
linux命令基础
Linux命令基础格式
command [-options] [parameter]
- command:命令本身
- -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
- parameters:[可选,非必填]命令的参数,多数用于命令的指向目标等
语法中的[],表示可选的意思
ls命令入门
ls命令的作用是列出目录下的内容,语法细节如下:
ls [-a -l -h] [L inux路径]
- -a -l -h 是可选的选项,
-a选项表示all的意思,即列出全部文件(包括隐藏文件/文件夹)
linux中以.开头的,表示是linux系统的隐藏文件/文件夹(只要以.开头,就能自动隐藏),只有通过-a才能查看隐藏文件夹。
-l选项表示以列表形式展示内容,并展示更多信息。
语法中的选项可以组合使用,比如同时使用-a和-l有三种写法:
ls -l -a
ls -la
ls -al
-h表示以易于阅读的形式,列出文件大小,-h必须和-l搭配使用
- Linux路径是此命令可选的参数
当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容
cd pwd命令
cd:切换当前目录
pwd:查看当前所在工作目录
mkdir命令
语法:
mkdir [-p] Linux路径
- 参数必填,表示Linux路径
- -p选项可选,表示自动创建不存在的父目录
touch cat more命令
touch命令:创建文件,语法如下:
touch Linux路径
- touch命令无选项,参数必填
cat命令:查看文件内容
more命令:查看文件内容,空格翻页,q退出查看
- cat直接将内容全部显示
- more支持翻页
cp mv rm命令
cp命令用于复制文件/文件夹,语法如下:
cp [-r] 参数1 参数2
- -r选项,可选,用于复制文件夹使用,表示递归
- 参数1,Linux路径,表示被复制的文件或文件夹
- 参数2,Linux路径,表示要复制去的地方
mv命令用于移动文件/文件夹,语法如下:
mv 参数1 参数2
- 参数1,Linux路径,表示被移动的文件或文件夹
- 参数2,Linux路径,表示要移动去的地方,<mark>如果目标不存在,则进行改名</mark>,确保目标存在
rm用于删除文件/文件夹,语法如下:
rm [-r -f] 参数1 参数2 ...... 参数n
- 同cp命令一样,-r选项用于删除文件夹
- -f表示force,强制删除(不会弹出提示确认信息)
- 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
- 所以一般普通用户用不到-f选项
- 参数1、参数2、...... 、参数n表示要删除的文件或文件夹路径,按照空格隔开
rm命令支持通配符*,用来做模糊匹配
- 符号*表示通配符,即匹配任意内容(包含空),示例:
- test*,表示匹配任何以test开头的内容
- *test,表示匹配任何以test结尾的内容
- *test*,表示匹配任何包含test的内容
which find命令
which命令:Linux命令本体就是一个个的二进制可执行程序,和windows中的.exe是一个意思。
我们可以通过which命令,查看所使用的一系列命令的程序文件放在哪里
语法:
which 要查找的命令
witch.png
find命令可以通过用户给定的表达式在指定目录下搜索文件,并执行指定的操作。一般语法格式如下:
find path options [-print -exec -ok ...]
- path:所要查找的目录路径,例如"."表示当前目录,"/"表示根目录
- -print:将匹配的文件输出到标准输出
- -exec:对匹配的文件执行该参数所指定的shell命令
- -ok:和-exec的作用相同,只不过更加安全一点,在执行每一个命令之前,系统会让用户确定是否执行
常用命令选项参数如下:
- -name:按文件名查找文件
- -type:按文件类型查找文件
- -perm:按文件权限来查找文件
- -prune:表示要忽略的目录
- -depth:指定搜索顺序,从文件树的最子层目录查起
- -user:查找属于指定用户名的所有文件
- -group:查找属于指定用户组的所有文件
- -size n:查找文件长度为n块的文件,默认每块512字节
- -mtime -n/+n: 按照文件的更改时间来查找文件, -n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。
- -atime:按照文件的访问时间来查找文件,使用与mtime相同。
- -ctime: 按照文件的改变状态的时间来查找文件,使用与mtime相同。
按照文件名查找文件示例:
# 要在/root目录下查找名为find_test.txt的文件
find /root -name find_test.txt
# 忽略大小写的搜索,-name改为-iname
find /root -iname Find_Test.txt
# find支持通配符
find /root -name *_test.txt
# 按照扩展名搜索文件
find /root -name '*.tar.gz'
按照类型查找文件:
有时需要搜索特定文件类型的文件,比如普通文件,目录或符号链接等,可以使用-type选项和以下描述符之一来指定文件类型:
- f:常规文件
- d:目录
- l:符号链接文件
- c:字符设备文件
- b:块设备文件
- p:管道文件
- s:套接字文件
例如,要在当前目录中查找所有目录:
find . -type d
按大小查找文件
按文件大小查找文件,可以使用-size选项,可以使用以下后缀来指定文件大小:
- b:512字节块(默认)
- c:字节
- K:千字节
- M:兆字节
- G:千兆字节
以下命令将在/root目录下找到所有1024个字节的文件:
find /root -size 1024c
find命令还支持搜索大于或小于指定大小的文件,例如,在/root目录下搜索所有小于1MB的文件,需要使用-符号:
find /root -size -1M
搜索大于1MB的文件,则需要使用+符号:
find /root -size +1M
甚至可以搜索大小范围内的文件,例如,查找大小在1MB和2MB之间的文件:
find /root -size +1M -size 2M
按权限查找文件
-perm选项可以按照文件权限搜索文件,例如,要在/root目录中查找权限为775的文件:
find /root -perm 775
按所有者查找文件
要查找特定用户或组拥有的文件,可以使用-user和-group选项。
例如,要搜索用户tigeriaf拥有的所有文件和目录,应运行:
find / -user tigeriaf
查找文件并执行指定操作
查找所有匹配的文件,并执行指定的命令,可以使用-exec或者-ok选项,上面已经说过-exec和-ok的作用相同,只不过-ok更加安全一点,在执行每一个命令之前,系统会让用户确定是否执行。相应的格式为-exec/-ok command {} ;,"command"是要执行的命令,"{}"就是代替查到的文件。
例如,查找所有符合*test.txt的文件并删除它们:
find . -name *test.txt -exec rm {} \;
# 或者
find . -name *test.txt -ok rm {} \;
grep、wc和管道符
grep命令,可用于从文件中通过关键词过滤文件行,语法如下:
grep [-n] 关键字 文件路径
- -n,可选,表示在结果中显示匹配的行的行号(还有其他可用参数)
- 关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用“”将关键字包围
- 文件路径,必填,表示要过滤内容的文件路径,<mark>可作为内容输入端口</mark>
wc命令,做数量统计,可以通过wc命令统计文件的行数、单词数量等,语法:
wc [-c -m -l -w] 文件路径
- -c,统计bytes数量
- -m,统计字符数量
- -l,统计行数
- -w,统计单词数量
管道符
管道符:|,含义是:将管道符左边命令的结果,作为右边命令的输入
echo、tail和重定向符
echo命令用于在命令行内输出指定内容
当使用echo用于输出命令执行结果时,需要加上``符号,如下:
echo `pwd`
重定向符:>和>>
- >,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
- >>,将左侧命令的结果,追加写入到符号右侧指定的文件中
tail命令,可以查看文件尾部内容,跟踪文件的最新更改,语法如下:
tail [-f -num] Linux路径
- 参数,Linux路径表示被跟踪的文件路径
- 选项-f,表示持续跟踪
- 选项-num,表示查看尾部多少行,不填默认10行
vi编辑器
vi\vim是visual interface的简称,是Linux中最经典的文本编辑器。
vim是的加强版本,兼容ⅵi的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。
vi\vim编辑器的三种工作模式:
- 命令模式(Command mode):命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。此模式下,不能自由进行文本编辑。
- 输入模式(Insert mode):编辑模式,此模式下,可以对文件内容进行自由编辑。
- 底线命令模式(Last line mode):以:开始,通常用于文件的保存、退出。
- 如果文件不存在,则编辑新文件
- 如果文件存在,则编辑源文件
命令模式下的常见快捷键:
模式 | 命令 | 描述 |
---|---|---|
命令模式 | i | 在当前光标位置进入输入模式 |
命令模式 | a | 在当前光标位置<mark>之后</mark>进入输入模式 |
命令模式 | I | 在当前行的开头进入输入模式 |
命令模式 | A | 在当前行的结尾进入输入模式 |
命令模式 | o | 在当前光标下一行进入输入模式 |
命令模式 | O | 在当前光标上一行进入输入模式 |
输入模式 | esc | 任何情况下输入esc都能回到命令模式 |
命令模式 | / | 进入搜索模式 |
命令模式 | n | 向下继续搜索 |
命令模式 | N | 向上继续搜索 |
底线命令模式支持命令如下:
模式 | 命令 | 描述 |
---|---|---|
底线命令模式 | :wq | 保存并退出 |
底线命令模式 | :q | 仅退出 |
底线命令模式 | :q! | 强制退出 |
底线命令模式 | :w | 仅保存 |
底线命令模式 | :set nu | 显示行号 |
底线命令模式 | :set paste | 设置粘贴模式 |
ln命令创建软连接
在系统中创建软连接,可以将文件、文件夹链接到其他位置。类似windows的快捷方式。语法:
ln -s 参数1 参数2
- -s选项,创建软连接
- 参数1:被链接的文件或文件夹
- 参数2:要链接去的目的地
网友评论