![f6f14904a77795f50b72e6650591d1a7.png](https://i-blog.csdnimg.cn/blog_migrate/a6748856285916865bcc7b0cedd201c6.jpeg)
【linux命令大全】
ifup ens33 打开网络连接
systemctl restart network 重启网络
ctrl + c 停止当前任务
ip a 查看IP地址
pwd 查看当前路径
cd 切换路径
mkdir 创建目录
su -user 切换用户
exit 退出当前用户
查看时间
date 查看当前服务器时间
date +%F 只显示当前年月日
date +%X 只显示当前时间到秒
查看文件
ls 查看当前目录下的文件
ls 文件路径 单独列出文件
ls -l 长格式显示
ls -lh 人性化显示(显示文件大小)
ls -a 显示所有文件(包括隐藏文件)
ls file* 显示以file开头的所有文件 * 通配符
ls *.txt 以任意开头,以.txt结尾的所有文件
ll -d 目录路径 查看目录的详情信息
ll -t 按最新的修改时间排序
clear 清屏(ctrl+l)
.文件名 隐藏文件
touch 创建文件
rm -rf 文件名 删除文件
init 0 /poweroff 关机
init 6 reboot 重启
别名
alias 别名 查看指定别名是什么命令的别名
alias 别名=‘命令’ alias 使用
unalias 别名 取消别名
关闭防火墙和selinux
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 永久关闭防火墙
sed -i '7cSELINUX=disable' /etc/sysconfig/selinux 关闭selinux
getenforce 查看selinux状态
setenforce 0 临时关闭selinux
命令行
ctrl + a 移动到命令行首
ctrl + e 移动到命令行尾
ctrl + xx 在命令行首光标之间移动
ctrl + u 从光标处删除至命令行首
ctrl + k 从光标处删除至命令行尾
ctrl + w 从光标处删除至字首
ctrl + d 删除光标处的字符
ctrl + h 删除光标前的字符
ctrl + r 逆向搜索命令历史
ctrl + p 历史中的上一条命令
esc + . 引用上一条命令后的路径或文件
tab 自动补全
history 历史命令
目录功能
/dev 设备文件
tty 本机终端
/root root用户的家目录
/home 普通用户的家目录
/usr 系统文件
/usr/local 软件安装目录
/usr/bin 普通用户使用的应用程序
/usr/sbin 管理员使用的应用程序
/usr/lib32 库文件32bit
/usr/li64 库文件64bit
/boot 存储系统启动相关文件
/etc 配置文件目录
/tmp 临时文件目录
/opt 空文件目录
/var 存放一些变化文件
/proc 虚拟文件系统
/mnt 临时挂载其他的文件系统
文件管理
- 普通文件
d 目录文件
b 设备文件
c 字符设备文件
l 链接文件
s 套接字文件
p 管道文件
切换目录
. 表示当前目录
cd .. 回到上一级目录等价于相对路径
cd 或cd~ 直接回到家目录
cd - 回到原来目录
touch
touch 文件名 无则创建,如存在,则修改使时间
touch 路径或文件名 创建指定路径下的文件
touch 路径/{文件名,文件名} 创建集合中的文件
touch 路径/file{1..20} 批量创建文件1-20
echo 内容>文件名 覆盖
echo 内容>> 文件名 追加
mkdir
mkdir 路径/目录名 创建目录
mkdir 路径/目录名 路径/目录名 创建两个不同路径的目录
mkdir 路径/{目录名,目录名} 创建集合中的目录
mkdir -v 路径/{目录名,目录名} 显示创建时的详情信息
mkdir -p 创建连接目录
mkdir -pv 显示创建连接目录时详情信息
复制
cp -v 路径/文件名 路径 复制时显示详情信息
cp 路径/文件名 路径/文件名 复制并改文件名
cp -r 路径/目录 路径/目录 拷贝目录及目录里的文件
cp -r file1 file2 file3 file4 目标目录 将多个文件拷贝到同一个目录
cp -a 在拷贝文件时不改变权限属性
移动
mv 路径/文件 路径/ 将文件移动到目录
mv 路径/文件 路径/文件2 将文件更名为文件2
删除
rm -r 递归删除
rm -f 强制删除
rm -v 删除的详情过程
* 通配符
查看文件内容
cat -n 文件 查看文件全部内容并显示行号
cat -A 文件 查看文件全部内容并显示控制字符
head -n 文件 显示文件前n行内容
tail -n 文件 查看五年的后n行内容
tail -f 文件 动态查看文件的尾行内容
grep '关键词' 文件 在文件内容中过滤关键词
less/more 文件 分页显示内容
r 翻页
n 翻行
/关键字 搜索(n按关键字往下翻)
q 退出分页显示
【文件编辑器】
vim 文件名 编辑指定文件
编辑模式
i 在光标所在处进入编辑模式
a 在当前光标后面进入编辑模式
A 在行尾进入编辑模式
o 在光标的下一行进入编辑模式
O 在光标的下一行进入编辑模式
esc 进入命令模式
命令模式
hjkl 上下左右
0 $ 行首行尾
gg 页首
G 页尾
3G 进入第三行
/string 查看字符 n 下一个
文本编辑
yy 复制
3yy 从光标开始向下复制3行
ygg 从当前光标开始复制至页首
yG 从当前光标开始复制至页尾
dd 删除一行
3dd 删除光标开始的3行
dgg 从光标开始删除到页首
dG 从光标开始删除到页尾
d^ 删除当前光标之前的内容
p 粘贴到本行的下一行
P 粘贴到本行的上一行
x 删除光标所在字符
D 删除光标处删除到行尾
u 撤销
r 可以用来修改一个字符
shift + : 进入尾行模式
:10 进入第10行
:w 保存
:q 退出
:wq 保存退出
:wq! 强制保存退出
ctrl + v 进入可视化块模式
shift + v 进入可视化行模式
查找或替换
s/old/new/ 替换当前光标所在行
3s/old/new/ 替换指定行
1,5 s/old/new/ 从替换1-5行的指定字符
%s/old/new/g 替换行内所有关键词
w 路径/文件名 另存为
1,3 w 路径/文件名 从1-3行的内容另存为
set nu 显示行号
set list 显示控制符
set nonu 取消设置行号
atime 查看访问内容时间
mtime 查看修改内容时间
ctime 改变文件属性时间
grep '关键词' 路径/文件 过滤文件中带有关键字的内容
grep '^内容' 路径/文件 过滤带有以关键字开头的内容
grep '内容$' 路径/文件 过滤带有以关键字结尾的内容
groupadd 用户组名 创建一个用户组
groupadd 用户组 -g 创建用户组并指定gid
groupmod -g 组的id 修改组的id
groupmod -n 组名 修改组名
cat /etc/group 查看组的文件
groupdel 组名 删除组
用户
useradd 用户名 创建用户
/etc/passwd 查看用户是否存在的文件
/home 用户的家目录
cat /etc/shadow 用户的密码文件
用户命令
id 用户名 查看用户是否存在
whoami 查看当前用户
useradd 用户名 -u uid 创建并指定用户的uid
useradd 用户名 -s 路径 创建用户并指定shell
useradd 用户名 -G 用户组,用户组 创建用户并指定两个用户组
useradd 用户名 -g 组号 创建指定用户的组号
userdel -r 用户名 删除用户
passwd 用户名 给普通用户设置密码
passwd 给当前用户设置密码
su - 用户 切换用户
用户操作
usermod -l 新名 用户 修改用户名
usermod 用户 -g new gid 修改gid
usermod -s 路径/文件 修改登录shell
usermod -aG 组 用户 从组删除用户
基本权限
属主 u
属组 g
其他人 o
r 4 w 2 x 1
设置权限
chown 用户.组 文件 修改属主 属组
chown 用户 文件 修改属主
chown .组 文件 只改属组
chown -R 用户.组 目录 递归修改
更改权限
chmod u+x 文件名 属主增加执行
chmod a=rwx 文件名 所有人赋予读写执行权限
chmod a=- 文件名 所有人都没权限
chmod ug=rw o=r 文件 属主属组有读写权限,其他人只读
使用数字
chmod 644 文件名 给文件更改为644权限
权限掩码
umask 查看用户掩码
umask 0111 修改用户掩码
特殊权限
suid : chmod u+s /usr/bin/cat 提权(只对二进制命令文件生效)
sgid : chmod g+s /opt/file/ 组权限继承(只对目录设置)
sticky: chmod o+t /opt/dir/ 权限控制(只对目录设置)
sudo 针对某个用户以root执行命令
suid 命令路径 所有用户可执行该命令