Linux命令
linux命令
小技巧:
ctrl + shift + =
放大终端字体ctrl + -
缩小终端字体tab
- 若不存在歧义,则自动补全
- 若
tab
目标太多不能自动补全时,按两次tab
可显示符合条件的目录ctrl + c
可退出ctrl + a
快速回到行首,ctrl + e
快速回到行尾ctrl + w
删除光标前一个单词ctrl + k
删除光标后的所有ctrl + u
删除所有
1.Linux命令概述
1.1 终端命令格式
|
|
说明:
command
:命令名[-options]
:选项- 多选项时可单独列出
-a -b -c
等,也可合在一起-abc
- 多选项时可单独列出
[parameter]
:传递的参数
[]
代表可选
1.2 查询命令帮助信息
1.2.1 –help
|
|
说明:
- 显示
command
命令的帮助信息
1.2.2 man
|
|
说明:
- 查询
command
命令的使用手册
man是manual的缩写,是linux提供的一个手册,包含了绝大多数命令的详细使用说明
使用man的快捷键
操作键 | 功能 |
---|---|
空格 | 显示手册的下一屏 |
回车键 | 一次滚动手册页的一行 |
b | 回滚一屏 |
f | 前滚一屏 |
q | 退出 |
/word | 搜索word字符串 |
2.linux文件和目录命令
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ls | list | 查看当前文件夹内容 |
02 | pwd | print work directory | 查看当前所在文件夹 |
03 | cd [目录名] | change directory | 切换文件夹 |
04 | touch [文件名] | touch | 如果文件不存在,则新建文件 |
05 | mkdir [目录名] | make directory | 创建目录 |
06 | rm [文件名] | remove | 删除指定文件名 |
07 | clear | clear | 清屏 |
08 | cp 源文件 目标文件 | copy | 复制文件或目录 |
09 | mv 源文件 目标文件 | move | 移动文件或者目录/文件或者目录重命名 |
10 | cat [文件名] | concatenate | 查看文件所有内容 |
11 | more [文件名] | more | 按页查看文件内容 |
12 | less [文件名] | 按页查看文件内容 | |
13 | grep [文本] [文件名] | 在文件中查找匹配的文本 | |
14 | file [文件名] | 查看文件类型 |
注意事项
- Linux下区分大小写
- 不加参数的rm只能删除文件,不能删除文件夹
2.1命令总结
- 查看目录内容
ls
tree
以树状图列出文件目录结构
- 切换目录
cd
- 创建和删除操作
touch
mkdir
rm
- 拷贝和移动文件
cp
move
- 查看文件内容
cat
more
grep
2.2 ls命令详细用法
1. Linux文件特点
- 以
.
开头的文件为隐藏文件,需要加参数-a
才能显示 .
代表当前目录..
代表上级目录
2. ls命令常用选项
选项 | 含义 |
---|---|
-a | 显示指定目录下的所有文件和目录,包括隐藏 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合-l 以人性化方式显示文件大小 |
3.ls通配符使用
通配符 | 含义 | 举例使用 |
---|---|---|
* | 代表任意个字符 | ls 1* ,ls 12*.txt ,ls *.txt |
? | 代表任意一个字符 | ls 12?.txt ,ls ?12.txt |
[] | 创建字符组,表示可以匹配字符组中的任意一个 | ls [123][123].txt |
[a-f] | 匹配a到f所有字符中的一个 | ls [1-3].txt ,ls [a-f].txt |
2.3 cd命令详细用法
1. cd命令常用用法
命令 | |
---|---|
cd | 进入到用户家目录 |
cd ~ |
进入到用户家目录 |
cd .. | 返回到上级目录 |
cd - |
在最近两次的工作目录中来回切换 |
2. 绝对路径和相对路径
- 绝对路径:输入路径开头是
/
或者~
,表示从根目录或家目录开始的具体目录位置 - 相对路径:输入路径开头不是
/
或者~
,表示相对当前目录的目录所在位置
2.4 创建和删除命令详细用法
1.touch命令
- 创建文件或修改文件时间
- 若文件不存在,则创建一个空白文件
- 若文件已经存在,则修改文件的末次修改日期
2.mkdir命令
-
创建一个新的目录
mkdir -p
循环创建多个目录
例如**
mkdir -p a/b/c/d
**mkdir
创建的目录路径下不能有与之同名的目录或文件
3.rm命令
rm
删除直接从磁盘上删除文件,并不会放到垃圾桶,无法恢复
选项 | 含义 |
---|---|
-f | 强制删除,忽略不存在的文件,且不提示 |
-r | 递归删除一个目录下所有内容,删除文件夹时使用 |
rm
命令也可以使用通配符
2.5 拷贝和移动命令
1. tree命令
tree
命令可以以树状图列出文件目录结构- 不加参数显示当前目录的树形结构
tree [目录]
显示指定目录的结构
参数 | 含义 |
---|---|
-d | 只显示目录 |
2.cp命令
cp
命令的功能是将给出的文件或目录复制到另一个文件或者目录中cp 源路径/源文件名 目标路径/目标名
同时可以给目标重命名cp
并不能直接复制目录
cp ~/documents/123.txt ./readme.txt
选项 | 含义 |
---|---|
-i | 提示覆盖信息 |
-r | 复制目录 |
3. mv命令
mv
命令可以移动文件和重命名
例:
mv ./desktop/123.txt ./documents/(234.txt)
ps:
123.txt
会消失,()
代表可选
mv 123(.txt) 2(.txt)
可以重命名注意事项:
假设已经存在了234.txt,则会用123.txt覆盖234.txt
参数 | 含义 |
---|---|
-i | 覆盖文件前提示 |
2.6 查看和查找文件内容
1.cat
命令
cat 123.txt
可以显示123.txt
的所有内容cat file1 file2 > file3
可以将file1和file2合并到file3中cat file1 >> file2
可以将file1的内容追加到file2后面
选项 | 含义 |
---|---|
-b | 按非空行编号并输出 |
-n | 按所有行编号并输出 |
2.more
命令
more
比cat
强大,可以按页查看文件内容more 1.txt
可以实现一屏的内容
操作键 | 功能 |
---|---|
空格 | 显示手册的下一屏 |
回车键 | 一次滚动手册页的一行 |
b | 回滚一屏 |
f | 前滚一屏 |
q | 退出 |
3.less
命令
less
命令比more更为强大,可以通过上下键来卷动文件,支持vi的搜索和首末行跳转
操作键 | 功能 |
---|---|
空格 | 显示手册的下一屏 |
回车键 | 一次滚动手册页的一行 |
方向键 | 上或下移 |
b | 回滚一屏 |
f | 前滚一屏 |
q | 退出 |
G | 跳到末尾 |
1G/g | 跳到行首 |
/char | 搜索 |
h | 显示帮助 |
4.grep
命令
grep 文本内容 文件
grep "hello world" 1.txt
当匹配的字符串含空格,则用“”框起来
选项 | 含义 |
---|---|
-n | 显示匹配行及行号 |
-v | 显示不包括匹配文本的所有行 |
-i | 忽略大小写 |
2.7 重定向和管道
echo
命令会在终端中显示参数指定的文字,通常和重定向联合使用
1.重定向 >和»
-
可以将命令的执行结果重定向到一个文件中
-
将本应输出在终端的结果输出或追加到其他文件上
-
>
输出到文件中,覆盖原文件内容 -
>>
输出到文件中,追加到原文件最后
2. 管道|
ls -lh | more
类似这样的用法- 将第一个命令的输出作为第二个命令的输入
3.远程管理命令
3.1命令总结
序号 | 命令 | 英文 | 作用 |
---|---|---|---|
01 | shutdown 选项 时间 |
shutdown | 关机/重新启动 |
02 | ifconfig |
configure a network interface | 查看/配置计算机当前的网卡配置 |
03 | ping IP地址 |
ping | 检测到目标ip地址的连接是否正常 |
04 | ssh [-p port] user@remote |
ssh客户端命令 | 连接远程ssh服务器 |
3.2 关机和重启命令
shutdown
可以安全关闭或者重新启动系统
选项 | 含义 |
---|---|
-r | 重新启动 |
提示:
- 不指定选项和参数时,默认1分钟后关闭电脑
|
|
3.3 查看和配置网卡信息
3.3.1 网卡和IP地址
-
网卡是一个专门负责网络通讯的硬件设备
-
ip地址是设置在网卡上的地址信息,不能重复
电脑是电话,网卡是SIM卡,IP地址是电话号
3.3.2 ifconfig
命令
ifconfig位于net-tools工具中
目前iproute2已逐渐取代net-tools工具包,成为系统自带的网络工具,iproute2命令包主要是以ip作为前缀的一些命令
ifconfig
可以查看/配置计算机当前的网卡配置信息
|
|
127.0.0.1
被称为本地回环/环回地址,一般用来测试本机网卡是否正常
3.3.3 ping
命令
|
|
3.4 远程登录和复制文件
3.4.1 ssh基础
-
通过ssh客户端 登录管理 ssh服务器
-
在linux/macOS上 ssh服务器和ssh客户端都是自动安装的,只有windows需要自己安装
-
ssh客户端是一种使用
Secure Shell(SSH)
协议连接到远程计算机的软件程序 -
SSH
数据传输是压缩且加密的
1)域名和端口号
1.域名
www.baidu.com
类似如此的名字,是IP地址的别名,方便用户记忆
2.端口号
- IP地址:通过IP地址找到计算机
- 端口号:通过此找到计算机上的应用程序
- 常见服务器端口列表
序号 | 服务 | 端口号 |
---|---|---|
01 | SSH服务器 | 22 |
02 | Web服务器 | 80 |
03 | HTTPS | 443 |
04 | FTP服务器 | 21 |
如果是默认端口号,在连接时可以省略
否则
IP地址:端口号
2)ssh客户端的简单使用
|
|
user
是远程机器上的用户名,不指定的话默认为当前用户remote
是远程机器的地址,可以是ip/域名
或者是别名port
是SSH Server监听的端口,如果不指定,就为默认值22
提示:
- 使用
exit
退出当前用户的登录
3.4.2 scp
命令
scp
命令,是一个在linux下进行远程拷贝文件的命令scp
地址格式与ssh基本相同,但在指定端口时,使用-P
而不是-p
|
|
选项 | 含义 |
---|---|
-P |
加端口 |
-r |
拷贝目录 |
3.4.3 sftp
命令
- SFTP是一种安全文件传输协议,通过SSH协议进行加密传输,可以保证文件传输的安全性。SFTP命令可以在本地和远程服务器之间进行文件传输,并且支持各种文件操作,如上传、下载、删除等。
sftp -P port user@remote
连接到服务器- 下载文件
get remote_file local_file
- 上传文件
put local_file remote_file
- 删除远程文件
rm remote_file
- 列出远程目录
ls
- 切换远程目录
cd
- 退出
exit
切换和列出本地目录,在命令前加
l
即可,即lls和lcd
4.搜索命令
序号 | 命令 | 英文 | 作用 |
---|---|---|---|
01 | locate name |
搜索以name开头的文件 | |
02 | find [目录] [选项] [参数] |
搜索文件 | |
03 | which [命令] |
在PATH指定的路径中,查找系统命令的位置 | |
04 | whereis [命令] |
搜索程序 |
4.1locate
locate
命令依赖于updatadb
命令创建的数据- 大多数linux发行版都会定期执行
updatadb
命令 - 新文件搜索不到需要使用
updatadb
更新数据库 - 速度比find快,因为使用的是数据库
|
|
在bin目录下数据库中查找name开头的文件
可以配合grep使用,不拘泥于name开头
4.2find
- 如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。
- 此命令参数较多,使用
man
来查看用法
4.3which
- 搜索PATH里的系统命令位置
4.4whereis
- 搜索程序,默认二进制文件,man文件,源代码都显示
选项 | 含义 |
---|---|
-b |
搜索二进制文件 |
-m |
搜索man文件 |
-s |
搜索源代码 |