目录
开机关机
bash
//重启
reboot 或shutdown -r now #-r表示参数重启
shutdown -r 5 (5分钟后重启)
//关机
poweroff 或 shutdown -h now #-h表示关机 (分钟)
shutdown -h 10:20 (10:20关机)
//取消
shutdown -c
获取帮助的Linux
bash
help 命令字
命令字 --help
man 命令字
info 命令字
Linux的辅助快捷键
bash
Tab键:自动补全命令
Ctrl+L:快速清屏
Ctrl+C:中断命令
Ctrl+U:删除当前光标所在处至行首
Ctrl+K:删除当前光标所在处至行尾
Ctrl+A:切换到命令行首
shift+Page Up:向上翻页
shift+Page down:向下翻页
目录操作命令
bash
pwd:打印当前目录位置
cd 目录名:切换目录
ls 选项 参数
ls -lhsi 参数
ls -lR | grep "^d" | wc -l #查看目录下的文件夹数
mkdir 选项 参数
mkdir -p Zy/Zj/Rys #创建多级目录
mkdir {a..d} #批量新建多个目录
mkdir test1 test2 #创建两个文件
du 选项 参数 #统计目录或磁盘所占空间
du -ha /root
du -sh /root 查看该文件占用的磁盘空间
文件操作命令
bash
stat命令 #用于显示目录的详细属性信息
stat /root/index.html
touch 选项 文件名 #创建文件或修改文件
touch 1.txt
cp 选项 源文件 目标位置文件 #复制文件或目录
cp -fr /*.txt /opt/test1 #循环递归复制
rm 选项 文件或目录 #删除文件或目录
rm -fr * #循环删除
mv 源文件或目录 目标文件或目录 #用于剪切或重命名文件或目录
mv test1.txt test2.txt
find 路径名 选项 查询结果处理动作 #整个磁盘中搜索文件
find -name a.txt 通过文件名进行搜索
find -type b.txt 通过文件类型进行搜索
...
locate 文件或目录 #locate命令==find -name
locate 1.txt
ln -s 源文件或目录 链接文件或目录 #软链接,无论哪个文件发生修改,另一个都会跟着变
ln -s /a/bb.txt bb.txt
ln 源文件 目标文件 #硬链接,修改都会相互影响但删除只删除自己
ln /a/bb.txt bb.txt
文件内容操作命令
bash
cat 文件名 #查看文件内容
cat -b ect/hosts #显示行号(不包括空行)
cat -n ect/host #包括空行
wc 选项 文件 #统计文件中的行数、单词数和字节数
wc -c a.txt #统计字节数
wc -l a.txt #统计行数
wc -w a.txt #统计单词数
wc -m a.txt #统计字符数
more 命令
more 000000000000000000000000000
查找命令
bash
which 命令字
find 路径名 选项 查询结果处理动作
打包
bash
解压:tar -xzvf 归档文件名.tar.gz 源文件或目录
压缩:tar -czvf 归档文件名 源文件或目录文件
tar 选项 归档文件名 源文件或目录 命令
-c:创建.tar格式的包文件
-x:解压.tar格式的包文件
-v:输出详细信息
-f:使用归档文件
-p:打包时保留原始文件及目录的权限
-t:查看包内的文件
-C:解包时指定释放的目标文件夹
-z:调用gzip程序进行压缩或解压
-j:调用bzip程序进行压缩或解压
解压缩
bash
gzip用于解压缩后缀名为.gz的归档文件
解压缩后文件是不存在的
只能解压缩.gz后缀的文件
Vi文本编辑模式
命令模式下的操作键
光标的移动
bash
向上 光标向上移动一个字符
向下 光标向下移动一个字符
向左 光标下左移动一个字符
向右 光标向右移动一个字符
+ 光标移动到下一行的行首
- 光标移动到上一行的行首
n+对应操作键 光标向上移动n个字符
翻页
bash
Page Up 向上翻页
Page Down 向下翻页
Ctrl+D 向下翻半页
Ctrl+U 向上翻半页
单词健的快速跳转
bash
w 跳转到下一个单词词首
e 跳转到下一个单词词尾
b 跳转到上一个单词词首
n+对应操作健 跳转到后面n个单词的词首
行内快速跳转
bash
Home 跳转到行首
End 跳转到行尾
行间快速跳转
bash
lG 跳转到行首
G 跳转到行尾
nG 跳转到文件第n行
n+ 向下跳n行
n- 向上跳n行
当前页跳转
bash
H 跳转到当前页的首行
M 跳转到当前页的中建行
L 跳到当前页的末尾行
zt 当前光标所在行至于屏幕顶部
zz 当前光标所在行至于屏幕中间
zb 当前光标所在行至于屏幕尾部
行号显示
bash
:set nu 编辑器中显示行号
:set nonu 取消显示行号
删除
bash
x 删除光标位置的单个字符
X 删除光标位置的前一个字符
nx 删除从光标开始的n个字符
dd 删除当前光标所在行
ndd 删除从光标所在行开始的n行内容
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标所在位置到行尾的所有字符
dw
de
db
复制
bash
yy 复制当前行整行的内容到剪切版
nyy 复制从光标位置开始的n行内容
y^ 复制从光标至行首的内容
y$ 复制从光标至行尾的内容
yw
ye
nyw
粘贴
bash
p 粘贴到光标位置之后
P 粘贴到光标位置之前
搜索
bash
/word 从上而下在文件中查找字符串word
?word 从下而上在文件中查找字符串word
n 定位下一个匹配查找的字符串
N 定位上一个匹配查找的字符串
撤销
bash
u 按一次撤销最近的一次操作
U 用于撤销对改行的所有编辑
ZZ 保存当前文件内容并退出vi编辑器
输入模式的操作键
模式切换
bash
i 在当前光标所在位置之前插入数据
I 在当前光标所在行的行首插入数据
a 在当前光标所在位置之后插入数据
A 在当前光标所在行的行尾插入数据
o 在当前光标所在行的下一行插入数据
O 在当前光标所在行的上一行插入数据
输入模式操作
bash
Backspace 删除光标之前的一个字符
Del 删除光标之后的一个字符
Home 跳转到当前光标所在行的行首
End 跳转到当前光标所在行的行尾
Enter 换行 行首上一行另起/行尾 下一行另起
末行模式的操作键
bash
//保存与退出
:w 保存文件
:w /root/newfile 另存为文件
:q 不保存文件 直接退出
:q! 不保存文件,强制退出
:wq 保存并退出
:wq! 强制保存并退出
//打开新的文件
:e/路径名/文件名 打开新的文件进行编辑
:r/路径名/文件名 在当前文件中读入其他文件内容
//替换操作
账号管理和权限控制
用户管理
用户账户管理
bash
添加用户账户命令
useradd 选项 用户名
-c 指定用户账户的描述语
-d 指定用户账户的宿主目录
-e 指定用户账户的失效日期
-f 指定用户账户密码过期多少天后禁用改用户
-g 指定用户账户的基本GID
-G 指定用户账户的附加GID
-m 默认在/home下生成宿主目录
-M 指定用户目录不生产宿主目录
-r 指定用户账户为程序账户
-o 指定用户账户的UID,允许重复
-s 指定用户账户的Shell环境
-p 指定用户账户的密码
-u 指定用户账户的UID
设置与更改用户账户密码
bash
passwd 选项 用户名
-d 删除用户账户密码
-l 锁定用户账户(仅限root)
-u 解锁用户账户 (仅限root)
-e 修改用户账户密码有效期
-f 强制操作(当使用选项-l锁定密码为空时或无密码,必须使用-uf选项来进行解锁用户操作)
-x 修改用户账户的最长使用天数(仅限root)
-n 修改用户密码的最短使用天数(仅限root)
-w 修改用户账户密码过期的警告天数(仅限root)
-i 当密码过期后经过多少天后账户被禁用(仅限root)
-S 查看用户账户的状态
临时切换用户命令
bash
su - 用户名
修改用户账户属性:
bash
usermod 选项 用户名
-c 修改用户的账号描述
-d 修改用户账户的宿主目录
-e 修改用户账户的失效日期
-f 当密码过期后经过多少天改账户会被禁用
-g 修改账户的基本组
-l 重命名用户账户
-L 锁定用户账户
-u 修改用户账户的UID
-U 解锁用户账户
-p 使用加密后的密码来修改用户账户的密码
-m 将用户的宿主目录移到新目录(仅和-d选项一起使用)
删除用户账户命令
bash
userdel 选项 用户名
-r 删除用户账户的宿主目录一并删除
用户组管理
创建组账户命令
bash
groupadd 选项 用户组名
-g 指定用户账户组的GID号
-o 创建用户账户组时候允许GID号不唯一
-r 指定用户账户组为程序用户组
修改组账户密码和添加组成员密码
bash
gpasswd 选项 用户组明
-a 添加组成员
-d 删除组成员
-r 删除组密码
-M 添加多个组成员
-A 设置组管理组
修改组账户命令
bash
groupmod 选项 用户组名
-g 修改组的GID
-n 重命名组名
-o 允许GID不唯一
删除用户组
当一个用户组是某个用户的基本组时是无法直接删除的,默认情况下使用userdel 命令删除用户账户时。和用户组同名的用户组也会一并被删除
bash
groupdel 选项 用户组
用户与用户组账户查询命令
bash
//id命令 查询到用户的UDI 基本组 附加组
id 用户名
//groups命令 查询到用户属于哪些组
groups 用户名
//finger命令 查询到用户账户的详细信息 (默认CentOS是没有的,需要先安装:yum -y install finger)
finger 用户名
//w、users和who命令 都可以查询到当前登录到系统中所有用户的账户名
文件权限和归属权管理
查看文件和权限和归属权
bash
ls -lhsi /home
修改文件权限
使用chmod命令修改文件权限时还需要指明针对不同的用户类型,即所属主,所属组,和其他用户三个类型
- 一般用u 表示user 代表文件的所属主
- g表示group ,代表文件的所属组
- o表示other 代表文件 的其他用户
- 字符a表示all,代表所有,等同于ugo
- 字符+ 在原有权限的基础上增加权限
- 字符- 在原有权限的基础上减掉权限
- 字符= 会覆盖掉原有权限
- 注意选项-R是针对目录而言,递归修改指定目录下所有的子目录和文件的权限
bash
//使用chmod 修改权限的字符形式如下
chmod [-R] ugo+/-rwz 文件或目录
chmod -u+r a.txt
//使用chmod 修改权限的数字形式如下
chmod [-R] nnn 文件或目录
修改文件归属权
bash
修改文件所属主
chown [-R] 用户名 文件或目录名
修改文件所属组时,组名前面必须使用:或 . 如下:
chown [-R] :用户组名 文件或目录名
chown [-R] .用户组名 文件或目录名