Linux常用操作命令(详细)
linux目录结构
bin:存储普通命令
sbin:存储超级命令
home:存储普通用户
root:存储超级用户
usr /usr/local:下存储数据或软件
tmp:临时目录 迎来存放临时数据
常用命令一
ifconfig:查看网络
service network restart:重启网络
hostname:查看主机名
hostnamectl set-hostname 主机名:永久修改主机名
systemctl status firewalld.service:查看防火强状态
systemctl stop firewalld.service:关闭防火墙状态(重启后自动打开)
systemctl disable firewalld.service:关闭防火墙开机自启
常用命令二
1.man:帮组命令查询当前命令的使用方式(打开当前命令的帮组手册)
格式:
man 命令
例:man help 查看help的用法
2.cd:切换目录
格式:
cd 目录名称(单极目录或多级目录(目录全路径或当前目录下开始的全路径))
注意:
cd / linux根目录
cd ~ 当前用户的家目录
cd . 当前命令
cd .. 上一级目录
tab 按一次tab表示补全 按两次搜索
3.ls:查看
格式:
ls [选项] [文件名]
选项:
ls -l 查看详细信息 可以简写为ll
ls -a 查看所有
ls -la 查看所有详细信息
4.mkdir:创建目录
格式:
mkdir [选项] [目录名称....]
选项:
mkdir -p 迭代创建
例:mkdir -p /usr/local/soft
5.rmdir:删除目录
格式:
格式:
mkdir [选项] [目录名称....]
选项:
-p:迭代删除
注意: 只能删除空目录
多级目录只能删除最后一个
例:mkdir -p /usr/local/soft
6.touch:创建空白文件
格式:
touch 文件名
注意:
只能创建空白文件
如果文件已存在,不创建
例:touch test.txt
7.rm:删除
格式:
rm [选项] [文件或目录]
选项:
-f:跳过提示信息
-r:强制删除
-rf:跳过提示信息强制删除
注意:
>>> 使用-rf注意注意注意再注意
8.cp:复制
格式:
cp [选项] [源文件或目录路径] [新文件或目录路径]
选项:
-r:复制目录
注意:
复制过程中可以对名称做修改没有特殊需求不要修改
9.mv:剪切 移动
格式:
cp [选项] [源文件或目录路径] [新文件或目录路径]
注意:
剪切过程中可以对名称做修改,没有特殊需求不要修改
10.vim:文本编辑器
格式:
vim 文件名
注意:
文件存在直接打开
文件不存在也直接打开,保存就是创建 不保存就是不创建
如何保存和退出
:q :退出
:w :保存
:wq :保存并退出
:q! :强制退出 不保存
:w! :强制保存
:wq! :强制保存并退出
注意:
vim因为意外终止,会产生交换文件(隐藏的),和源文件在同一级
如何进入编辑模式:
i:在当前光标,进入插入模式
o:下一行进入插入模式
如何进行行首行尾,开头末尾切换
行首:home/0
行尾:end/$
开头:gg
结尾:G
常用命令三
1.用户和用户组
用户在/etc/passwd中
用户组在/etc/group/中
注意:在创建用户时,系统默认生成一个用户组(组名和用户名一致)
查看用户时:cy:x:1000:1000:cy:/home/cy:/bin/bash
cy:用户名
x:加密的密码
1000:用户编号
1000:组编号
cy:用户全名称
/home/cy:所在位置
/bin/bash:可执行命令
1.1 useradd:添加用户
格式:
useradd 用户名
1.2 passwd:修改密码
格式:
passwd 用户名
注意:输入密码时,密码默认不显示
1.3 su:切换用户
格式:
su 用户
注意:root切换普通用户时,不需要输入密码。
1.4 userdel:删除用户
格式:
userdel [选项] 用户名
选项:
-f:删除登录用户
-r:删除用户和用户相关文件和目录
-rf:删除登录用户和登录用户相关文件和目录
注意:用户主目录在/home,通信文件在/var/spool/mail/
使用-f时,用户相关文件和目录不会进行删除
1.5 groupadd:创建组(普通组,由系统默认生成的叫做主组)
格式:
groupadd 组名
注意:
创建普通组不会生成用户
1.6 groupdel:删除组(普通组,不能删除主组)
格式:
groupdel 组名
注意:
不能删除主组,主组随着用户的消失而消失
区分:主组是创建用户时系统默认生成的,依赖于用户的存在而存在
手动创建的普通组用于管理多个普通用户
1.7 gpasswd:管理用户和组
格式:
gpasswd [选项] 用户 组
选项:
-a:添加
-d:删除
注意:组默认是没有任何用户的
添加一个用户到组的时候,可以添加到普通组,别的主组和本身的主组
如果是普 通组,无论组下是否有用户都可以直接删除
如果是主组并且主组下面有用户,删除用户时主组不会删除(主组变成普通组)
2.权限:
2.1 通过ll查看详细信息时:-rw-r--r--. 1 root root 181 3月 15 15:34 test.txt
-:表示类型
rw-:当前用户权限
r--:当前用户组权限
r--:其他用户权限
r:读
w:写
x:执行
u:当前用户
g:当前组
o:其他
a:所有
2.2 权限分配
chmod:修改权限
格式1:(使用相加减表达权限)
chmod [选项] [权限修改] [文件]
格式2:(使用数字表达权限)
chmod [选项] [权限修改] [文件]
4:读
2:写
1:执行
7:全部
注意:如果只给一个数字表示修改o,两个表示修改go
选项:
-R:迭代修改
chgrp:修改用户组
格式:
chgrp [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改
注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组
如果不存在就显示编号,存在显示名称
chown:修改所属用户
格式:
chown [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改
sudo:越权执行
格式:
sudo 命令
注意:sudo实际上去借root权限执行命令(root对普通用户分配了权限)
sudo -l:查看当前权限
visudo:修改配置文件进行权限分配(文件所在位置/etc/sudoers)
例如:普通用户拥有root所有权限
用户名 ALL=(ALL) ALL
用户名 ALL=(root) ALL
例如:普通用户只能执行一个命令
用户名 ALL=(root)/bin/rm
可以同过vim /etc/sudoers修改权限分配
3.查找
find
格式:
find 开始查找路径 [选项] [条件]
选项:
-name
*表示匹配所有
?表示匹配一个
例如:从/开始查找后缀为.txt
find / -name "*.txt"
-type
d:表示目录
f:表示文件
例如:从/开始查找文件
find / -type f
-size
ll --block-size=单位
例如:大小以k为单位进行显示
ll --block-size=k
注意:条件需要给上单位
+表示大于
-表示小于
不给就是等于
例如:从/开始查找文件大小大于2k
find / -size +2k
-user
-group
4.Linux常见符号
|:管道,把前面一部分的内容交给后面去处理
例如:
cat -n /etc/profile | more
grep:筛选
格式:
grep 筛选条件
>>:追加,把命令1的结果写入到命令2
格式:
命令1 >> 命令2
例如:cat profile >> test.txt
>:覆盖
格式:
命令1 > 命令2
例如:cat profile > test.txt
5.软件包管理
rpm:查看 管理 删除软件
格式:
rpm [选项] [软件名称] [后缀]
选项:
-q:查询
-a:所有
-qa:查询所有
-e:删除
后缀:
--nodeps:无视依赖关系
注意:直接-e时,如果有依赖关系,不能直接删除
需要加上--nodeps后缀
tar:解压和压缩
格式:
tar [选项] [包] [路径]
选项:
-c:压缩
-x:解压
-v:显示
-z:gzip
-j:bzip
-f:使用当前名称
-t:查看
解压:
-C:指定解压路径
例如:解压jdk
tar -zxvf jdk.tar.gz -C /usr/local/soft/
打包:
例如:把jdk从新打包
tar -cvf 包的所在位置加包的名称 所要打包的内容