Linux常用命令
linux目录结构:
bin:存储普通命令
sbin:存储超级命令
home:存储普通用户
root:存储超级用户
/usr/local:下存储数据或软件
tmp:临时目录 迎来存放临时数据
常用命令:
ifconfig:查看网络 service network restart:重启网络 hostname:查看主机名 hostnamectl set-hostname 主机名:永久修改主机名 systemctl status firewalld.service:查看防火墙状态 systemctl stop firewalld.service:关闭防火墙状态(重启后自动打开) systemctl disable firewalld.service:关闭防火墙开机自启
man命令:帮组命令查询当前命令的使用方式(打开当前命令的帮组手册)
格式: man 命令
例:man cd
cd命令:切换目录
格式:cd 目录名称(单极目录或多级目录(目录全路径或当前目录下开始的全路径))
注意:
/ :linux根目录
~ :当前用户的家目录
. :当前命令
.. :上一级目录
tab :一次补全 两次搜索
pwd 列出当前目录路径
stat 文件名 查看文件信息
ls:查看
格式:ls [选项] [文件名]
选项:
-l:查看详细信息 可以简写为ll
-a:查看所有
-la:查看所有详细信息
-help 查看ls用法
mkdir:创建目录
格式:
mkdir [选项] [目录名称....]
选项:
-p:迭代创建
rmdir:删除目录
格式:
mkdir [选项] [目录名称....]
选项:
-p:迭代删除
注意:
只能删除空目录
多级目录只能删除最后一个
touch:创建空白文件
格式:
touch 文件名
注意:
只能创建空白文件
如果文件已存在,不创建
rm:删除
格式:
rm [选项] [文件或目录]
选项:
-f:跳过提示信息
-r:强制删除
-rf:跳过提示信息强制删除
注意:
使用-rf注意注意注意再注意,特别是rm -rf /* 代表的是删除整个跟目录文件
vim:文本编辑器
格式:
vim 文件名
注意:
文件存在直接打开
文件不存在也直接打开,保存就是创建 不保存就是不创建
如何进入编辑模式:
i:在当前光标,进入插入模式
o:下一行进入插入模式
如何保存和退出
:q :退出
:w :保存
:wq :保存并退出
:q! :强制退出 不保存
:w! :强制保存
:wq! :强制保存并退出
注意:
vim因为意外终止,会产生交换文件(隐藏的),和源文件在同一级
如何进行阅读模式行首行尾,开头末尾切换
行首:home/0
行尾:end/$
开头:gg
结尾:G
cp:复制
格式:
cp [选项] [源文件或目录路径] [新文件或目录路径]
选项:
-r:复制目录
注意:
复制过程中可以对名称做修改没有特殊需求不要修改
ssh免密设置
远程复制
scp命令用于在网络中不同主机之间复制文件。scp是有Security的文 件copy,基于ssh登录。
如果没有配置免key登陆,需要输入主机密码。
常见用法
提示:显示进度在scp后添加-v;复制目录在scp后添加-r
从本地复制到远程
scp /home/test/*.sh root@172.19.2.75:/home/root
从远程复制到本地
scp root@/172.19.2.75:/home/root/*.txt /home/test
从远程到远程
scp root@192.168.21.1:/root/test/*.sh root@192.168.31.1:/root/test
mv:剪切 移动
格式:
mv [选项] [源文件或目录路径] [新文件或目录路径]
注意:
剪切过程中可以对名称做修改,没有特殊需求不要修改
用户和用户组:
用户在/etc/passwd中
用户组在/etc/group/中
注意:
在创建用户时,系统默认生成一个用户组(组名和用户名一致)
useradd:添加用户
格式:
useradd 用户名
passwd:修改密码
格式:
passwd 用户名
注意:输入密码时,密码默认不显示
su:切换用户
格式:
su 用户
注意:root切换普通用户时,不需要输入密码。其他用户相互切换都需要密码
userdel:删除用户
格式:
userdel [选项] 用户名
选项:
-f:删除登录用户
-r:删除用户和用户相关文件和目录
-rf:删除登录用户和登录用户相关文件和目录
注意:用户主目录在/home,通信文件在/var/spool/mail/
使用-f时,用户相关文件和目录不会进行删除
查看用户时(vim /etc/passwd):cy:x:1000:1000:cy:/home/cy:/bin/bash
cy:用户名
x:加密的密码
1000:用户编号
1000:组编号
cy:用户全名称
/home/cy:所在位置
/bin/bash:可执行命令
groupadd:创建组(普通组,由系统默认生成的叫做主组)
格式:
groupadd 组名
注意:
创建普通组不会生成用户
groupdel:删除组(普通组,不能删除主组)
格式:
groupdel 组名
注意:
不能删除主组,主组随着用户的消失而消失
区分:主组是创建用户时系统默认生成的,依赖于用户的存在而存在
手动创建的普通组用于管理多个普通用户
gpasswd:管理用户和组
格式:
gpasswd [选项] 用户 组
选项:
-a:添加
-d:删除
注意:组默认是没有任何用户的
添加一个用户到组的时候,可以添加到普通组,别的主组和本身的主组
如果是普通组,无论组下是否有用户都可以直接删除
如果是主组并且主组下面有用户,删除用户时主组不会删除(主组变成普通组)
删除前:
删除后:(删除user1用户,user主组变成普通组,在可以直接删除user普通组)
权限:
文件的类型:
1、- 普通文件
2、d 目录
3、l 软链接
4、c 字符设备【键盘,鼠标】
5、块文件,硬盘
r:读 4
w:写 2
x:执行 1
u:当前用户
g:当前组
o:其他
a:所有
权限分配
chmod:修改权限
格式1:(使用相加减表达权限)
chmod [选项] [权限修改] [文件]
格式2:(使用数字表达权限)
chmod [选项] [权限修改] [文件]
4:读
2:写
1:执行
7:全部
注意:如果只给一个数字表示修改o,两个表示修改go
选项:
-R:迭代修改
注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组
如果不存在就显示编号,存在显示名称
chgrp:修改用户组
格式:
chgrp [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改
注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组
如果不存在就显示编号,存在显示名称
chown:修改所属用户
格式:
chown [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改
创建组:
创建用户并且移动到所在组
jack创建文件,修改权限
修改成其他组可读,本组可以读写
xh投靠警察
jack设置检查组权限至少有个可执行
xh进入jack修改文件
sudo:越权执行
格式:
sudo 命令
注意:sudo实际上去借root权限执行命令(root对普通用户分配了权限)
sudo -l:查看当前权限
visudo:修改配置文件进行权限分配(文件所在位置/etc/sudoers)
例如:普通用户拥有root所有权限
用户名 ALL=(ALL) ALL
用户名 ALL=(root) ALL
例如:普通用户只能执行一个命令
用户名 ALL=(root)/bin/rm
可以同过vim /etc/sudoers修改权限分配
查看命令:
查找: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
查看文件:cat 查看文件中的所有内容
格式: cat [选项] 文件的全路径或文件名称
选项
-n:加行号进行显示
more 分页查看(只
能加载一部分)
格式:more 文件的全路径或文件名称
操作
回车:显示下一行
s或者空格:显示下一页
q:直接退出
less 分页查看(加载完毕,只显示一部分)
格式:
less 文件的全路径或文件名称
注意:可以在查看文件下,最后一行输入行号,向下显示多少行
:q 退出
head 查看文件头部
格式
head [选项] 文件的全路径或文件名称
选项
-数字:从头开始显示多少行
默认显示10行
tail 查看文件尾部(管道,能实时检测输入信息 “)
格式
tail [选项] 文件的全路径或文件名称
选项
-数字:从尾开始显示多少行
默认显示10行
实时监测:
|:管道,把前面一部分的内容交给后面去处理
例如:
cat -n /etc/profile | head
grep:筛选
格式:
grep 筛选条件
>>:追加,把命令1的结果写入到命令2
格式:
命令1 >> 命令2
例如:cat profile >> test.txt
>:覆盖
格式:
命令1 > 命令2
例如:cat profile > test.txt
软件包管理
rpm:查看 管理 删除软件
格式:
rpm [选项] [软件名称] [后缀]
选项:
-q:查询
-a:所有
-qa:查询所有
-e:删除
后缀:
--nodeps:无视依赖关系
注意:直接-e时,如果有依赖关系,不能直接删除
需要加上--nodeps后缀
tar:解压和压缩
格式:
tar [选项] [包] [路径]
选项:
-c:压缩
-x:解压
-v:显示
-z:gzip
-j:bzip
-f:使用当前名称
-t:查看
常用:
-zxvf
-cvf
解压:
-C:指定解压路径
例如:解压jdk
tar -zxvf jdk.tar.gz -C /usr/local/soft/
打包:
例如:把jdk从新打包
tar -cvf 包的所在位置加包的名称 所要打包的内容
停止命令
cyrl+c和ctrl+z的区别:
ctrl+z:直接杀死当前执行的东西
ctrl+c:只是不显示了,后台直到运行完
配置文件完成后刷新文件:source /etc/profile