Linux发行版本的命令大概有 200 多个,但是常用的命令只有 10 多个而已
终端命令格式
root@xxx :~$ command [-options] [parameter]
说明:
- command: 命令名,相应功能的英文单词或单词的缩写
- [-options]:选项,可用来对命令进行控制,也可省略
- 传给命令的参数,可以是零个、一个或者多个
[ ] 代表可选
在一些指令前加 sudo 可以以系统管理者的身份执行指令
一、文件和目录命令
1、ls
root@xxx:~$ ls #查看当前文件夹下的内容
-l #列出当前文件夹下的详细信息
-a #列出当前目录下所有文件及目录
-d #仅列出目录本身,而不是列出目录内的文件数据
-h #配合-l以人性化的方式显示文件大小
通配符 | 含义 |
---|---|
* | 代表任意个数的字符 |
? | 代表任意一个字符,至少1个 |
[ ] | 表示可以匹配字符组中的任意一个 |
[abc] | 匹配a、b、c中的任意一个 |
[a-f] | 匹配从a到f范围内的任意一个字符 |
2、cd
root@xxx:~$ cd [文件夹路径] #用于切换目录的指令
命令 | 含义 |
---|---|
cd | 切换到当前用户的主目录(/home/用户目录) |
cd~ | 切换到当前用户的主目录(/home/用户目录) |
cd. | 保持在当前目录不变 |
cd .. | 切换到上级目录 |
cd - | 可以在最近两次工作目录之间来回切换 |
3、pwd
root@xxx:~$ pwd #显示当前所在目录
-p #显示出当前目录的确实的路径
4、touch
root@xxx:~$ touch #创建一个空文件
- 如果文件 不存在,可以创建一个空白文件
- 如果文件 已经存在,可以修改文件的末次修改日期
5、mkdir
root@xxx:~$ mkdir #创建一个新的目录
-p #可以递归创建目录
新建目录的名称 不能与当前目录中 已有的目录或文件 同名
6、rm
使用rm命令要小心,因为文件删除之后不能恢复
root@xxx:~$ rm #删除文件和目录
-r #递归地删除目录下的内容,删除文件夹时必须加此参数
-f #强制删除,忽略不存在的文件,无需提醒
二、拷贝和移动命令
1、cp
root@xxx:~$ cp [源文件] [目标文件] #复制一个文件或目录
-f #已经存在的目标文件直接覆盖,不会提示
-i #覆盖文件前会有提示
-r #若给出的源文件是目标文件,cp将递归复制该目录下的所
有子目录和文件,目标文件必须为一个目录名
2、mv
root@xxx:~$ mv [源文件] [目标文件] #移动文件或目录/文件或目录重命名
-i #覆盖文件前会有提示
三、文件内容命令
1、cat
root@xxx:~$ cat [文件名] #查看文件内容、创建文件、文件合并、追加文件内容等功能
-b #覆盖文件前会有提示
-n #对输出的所有行进行编号
- cat 会一次性显示所有内容,适合查看内容较少的文本文件
- 使用 cat 若一页没完全显示完还有剩余,可按空格进行显示
2、more
root@xxx:~$ more #分屏显示文件内容
操作键 | 功能 |
---|---|
空格键 | 显示手册页的下一屏 |
Enter 键 | 一次滚动手册页的一行 |
b | 往回滚一屏 |
f | 向前滚一屏 |
q | 退出 |
/word | 搜索word字符串 |
3、grep
root@xxx:~$ grep #搜索文本文件内容
-n #显示匹配行及行号
-v #显示不包括含匹配文本的所有行(相当于求反)
-i #忽略大小写
参数 | 含义 |
---|---|
^a | 行首,搜索以a开头的行 |
ke$ | 行尾,搜索以ke结尾的行 |
四、终端编辑器
1、vim
root@xxx:~$ vim [文件名] #终端编辑器
操作键 | 功能 |
---|---|
/xxx | 在整篇文章中搜索匹配xxx的字符串 |
: s/aa/bb/g | 将aa替换成bb |
:q | 退出 |
:q! | 强制退出 |
:wq | 保存并退出 |
五、远程管理命令
1、关机/重启
root@xxx:~$ shutdown [选项] [时间] #关机(时间)
-r #重新启动
#重新启动操作系统
$shutdown -r now
#系统在今天22:00会关机
$shutdown 22:00
#系统过十分钟后自动关机
$shutdown +10
#取消之前指定的关机计划
$shutdown -c
- 不指定选项和参数,默认表示1分钟后关闭电脑
- 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
2、 查看或配置网卡信息
命令 | 作用 |
---|---|
ifconfig | 查看/配置计算机当前的网卡配置信息 |
ping ip地址 | 检测到目标IP地址是否正常 |
3、远程登录
ssh [-p port] user@remote
- user是在远程机器上的用户名,如果不指定的话默认为当前用户
- remote是远程机器的地址,可以是IP/域名
- port是SSH Server监听的端口,如果不指定,就为默认值22
命令 | 作用 |
---|---|
ssh 用户名@ip | 关机/重新启动 |
scp用户名@ip:文件名 ; 用户名@ip:文件名 | 远程复制文件 |
- 常见服务端口号列表
服务 | 端口号 |
---|---|
SSH服务器 | 22 |
Web服务器 | 80 |
HTTPS | 443 |
FTP服务器 | 21 |
- ssh这个终端命令只能在Linux或者Unix系统下使用
- 如果在Windows系统中,可以安装PuTTY或者XShell客户端软件即可
- 使用exit退出当前用户的登录
4、复制文件
root@xxx:~$ scp #用来进行远程拷贝文件
-r #若给出源文件是目标文件,则scp
将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
-P #若远程SSH服务器的端口不是22,需要使用大写字母-P选项指定端口
六、其他命令
1、tree
tree命令可以以树状图列出文件目录结构
root@xxx:~$ tree[目录名] #以树状图的形式列出文件目录结构
2、sudo 超级用户
- su是substitute user的缩写,表示 使用另一个用户的身份
- sudo命令用来以其他身份来执行命令,预设的身份为root
- 用户使用root时,必须先输入密码,之后有 5分钟的有效限期,超过期限则必须重新输入密码
若其未经授权的用户企图使用 sudo,则会发出警告邮件给管理员
3、查找命令
find命令通常用来在 特定的目录下 搜索 符合条件的目录
root@xxx:~$ find [路径] -name".py" #查找指定路径下拓展名是".py"的文件,包括子目录
- 如果省略路径,表示在当前文件夹下查找
- 可与上述通配符配合使用
4、打包压缩
- tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件
- tar的命令格式如下:
#打包文件
root@xxx:~$ tar -cvf 打包文件.tar 被打包的文件/路径
#解包文件
root@xxx:~$ tar -xvf 打包文件.tar
- tar选项说明
选项 | 含义 |
---|---|
c | 生成档案文件,创建打包文件 |
x | 解开档案文件 |
v | 列出归档解档的详细过程,显示进度 |
f | 指定档案文件名。f后面一定是.tar文件,所以必须放选项最后 |
5、压缩/解压缩
- tar与gzip命令结合使用可以实现文件 打包和压缩
- tar只负责打包文件,但不压缩
- 用 gzip压缩tar打包后的文件,其拓展名一般用xxx.tar.gz
在Linux中,最常见的压缩文件格式就是xxx.tar.gz
- 在tar命令中有一个选项**-z**可以调用gzip,从而可以方便的实现压缩和解压缩的功能
- 命令格式如下:
#压缩文件
root@xxx: tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
#解压缩文件
root@xxx: tar -zxvf 打包文件.tar.gz
#解压缩到指定路径
root@xxx: tar -zxvf 打包文件.tar.gz -C 目标路径(要解压缩的目录必须存在)
6、软件安装
通过apt 安装/卸载软件
- apt 是Advanced Packaging Tool,是Linux下的一款安装包管理程序
- 可以在终端中方便的 安装/卸载/更新软件包
#安装软件
root@xxx: sudo apt-get install 软件包
#卸载文件
root@xxx: sudo apt remove 软件包
#更新已安装的包
root@xxx: sudo apt upgrade