ubuntu 常用的shell命令合集
Linux终端命令
ubuntu安装插件命令
1 2
| sudo apt-get install 插件名称(tree) 1
|
查看硬盘容量信息
1 2 3 4
| df -h #查看当前目录文件夹占用磁盘空间 du -sh * 123
|
查看内存使用情况
1 2 3
| cat /proc/meminfo free -h 12
|
查看当前目录
创建文件(创建file.txt文件)
查看帮助文档
1 2 3 4
| command --help
man command 123
|
ls命令
选项 |
说明 |
-a |
显示隐藏文件(以.开头的文件) |
-l |
显示文件详细信息 |
-h |
显示文件大小 需要配合-l选项使用 |
ls通配符
通配符 |
说明 |
* |
代表任意个数字符 |
? |
代表一个字符 |
[] |
标识匹配字符数组中的任意一个 |
[abc] |
匹配a、b、c中任意一个字符 |
[a-f] [0-9] |
匹配a到f范围内的任意一个字符 |
mkdir递归创建文件夹
1 2
| mkdir -p dir1/dir2/dir3 1
|
rm命令
选项 |
说明 |
-r |
递归删除 |
-f |
强制删除。忽略不存在的文件,不提示确认 |
-d |
删除空目录 |
拷贝和移动文件
1、tree [目录名]: 以树状图列出文件目录结构
2、cp 源文件 目标文件: 复制文件或者目录
选项 |
说明 |
-i |
覆盖文件前提示 |
-r |
递归复制该目录下所有子目录和文件,目标文件必须是一个目录名 |
3、mv 源文件 目标文件:
查看文件内容
1、cat 文件名: 查看文件内容、创建文件、文件合并、追加文件内容等功能(一次完整显示)
选项 |
说明 |
-b |
对非空行编号 |
-n |
对所有行编号 |
2、more 文件名: 分屏显示文件内容(分屏显示)
操作键 |
说明 |
空格 |
下一屏 |
enter |
下一行 |
b |
回滚一屏 |
f |
前滚一屏 |
q |
退出 |
/搜索字符串 |
搜索 |
3、grep 搜索内容(搜索内容有关键词、空格需要加上双引号) 文件名: 搜索文本文件内容
选项 |
说明 |
-n |
显示行号 |
-v |
显示不包含匹配文本的所有行 |
-i |
忽略大小写 |
常用的两种模式查找
^a:行首,搜索以a开头的行
d$:行尾,搜索以d结尾的行
其他命令
1、echo 文字内容
echo会在终端中显示参数指定的文字,通常会和重定向联合使用
2、重定向>和>>
表示输出,会覆盖文件原有的内容 (将终端中输入的内容输出到文件中)

表示追加,会将内容追加到已有文件的末尾(将终端中输入的内容追加到文件末尾)

所有命令终端输出结果都可以使用>和>>重定向到文件中例如

3、管道|
Linux允许将一个命令的输出可以通过管道做为另一个命令的输入
可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里的左右分为两端,左端塞东西(写),右端取东西(读)
常用的管道命令有:
more: 分屏显示内容
grep: 在命令执行结果的基础上查询指定的文本

远程管理常用命令
关机重启
1 2 3 4 5 6 7
| shutdown [选项] [时间] # 选项 -r 重新启动 showdown -t now shutdown 20:10 shutdown +10 #10分钟后关机 shutdown -c #取消关机 123456
|
查看网卡信息
1 2 3 4
| ip a ip address ifconfig 123
|
ssh命令(远程连接)
1 2 3
| ssh [-p 端口号] 用户名@ip(或者域名) ssh root@ip 12
|
scp(远程复制文件)
1 2 3 4
| scp [-P 端口号] 文件名称或路径 用户名@ip(或者域名):路径 # 复制本地文件到远程服务器 # 选项 -r 若给出的源文件是目录文件 则scp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 scp D:\dir\s.txt root@ip:/tmp 123
|
1 2 3
| scp [-p 端口号] 用户名@ip(或者域名):文件名称或路径 路径 # 复制远程服务器文件到本地 scp [email protected]:/home/zhaosc/demo/demo.txt D:\ 12
|
注:要确认安装ssh服务端和客户端
1 2 3
| sudo apt-get install openssh-server # 安装服务端 12
|
ssh高级
免密码登录
home目录下 .ssh隐藏文件夹
known_hosts文件存储授权信息
1 2 3
| 1、配置公钥 执行ssh-keygen即可生成SSH钥匙,一路回车即可 12
|
id_rsa 和 id_rsa.pub 远程登陆时用来加密使用的文件
1 2 3 4
| 2、上传公钥到服务器(id_rsa.pub) 执行ssh-copy-id -p port user@remote ,可以让远程服务器记住我们的公钥 ssh-copy-id -p 22 [email protected] 123
|
本地使用私钥对数据进行加密/解密 服务器使用公钥对数据进行加密
以上命令在本地客户端执行 需要将本地客户端公钥(id_rsa.pub)添加到远程服务端的 ~/.ssh/authorized_keys中(可以手动添加,注意单行添加)
配置别名(在本地客服端创建 .ssh/config)
1 2 3 4 5 6 7 8 9 10 11 12 13
| .ssh/config配置信息如下 --------------------------------- Host aly # 别名 HostName ip # ip/域名 User root # 用户名 Port 22 # 端口号 ---------------------------------- 登录 ssh aly 复制文件 scp -r aly:/usr/local/tomcat/webapps D:\ --------------------------------- 123456789101112
|
用户和权限
ls -l
权限信息:
文件 -开头; 文件夹 d开头 ;r可读w可写x可执行 权限列为三列(三个一组) 依次是 用户权限 组权限 其他用户权限
用户和组信息:
前面为用户后面为组
chmod命令
用户组管理
1 2 3
| groupadd 组名 # 添加组 groupdel 组名 # 删除组 12
|