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命令总结
- 查看目录内容
lstree以树状图列出文件目录结构
- 切换目录
cd
- 创建和删除操作
touchmkdirrm
- 拷贝和移动文件
cpmove
- 查看文件内容
catmoregrep
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 |
搜索源代码 |