linux学习笔记
文章目录
第一章
part1.基础命令
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
ls | list | [-a] 列出包括隐藏文件的全部文件 | 查看的指定文件夹(如/),不写则展示当前目录 |
[-l] 以列表形式展示内容 | |||
[-h] 以易于阅读的形式列出文件大小,如K、M、G | |||
cd | change directory | 指定切换到的目录(如/),不写则回到HOME目录 | |
pwd | print work directory | 查看当前所在的工作目录 |
-
相对路径:以当前工作目录下为起点,直接指定文件夹(比如当前工作目录是/home/yzw,可以使用cd命令指定工作目录为Desktop,此时工作目录称为/home/yzw/Desktop)
-
绝对路径:无论当前处于哪个工作目录,以根目录为起点,使用cd命令参数为/home/yzw/Desktop即可转到
特殊路径符:
- . 表示当前目录,比如cd ./Desktop表示切换到当前目录下的Desktop目录内,和cd Desktop效果一致
- … 表示上一级目录,比如cd … 切换到上一级目录,cd …/…切换到上二级的目录
- ~ 表示HOME目录,比如cd ~即可切换到HOME目录,或cd ~/Desktop,切换到…
part2.文件操作命令
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
mkdir | make directory | [-p] 表示自动创建不存在的父目录 | linux路径,相对路径或绝对路径均可 |
touch | (创建文件) | linux路径 | |
cat | (查看文件内容) | linux路径 | |
more | (查看文件内容,支持翻页,空格翻页,q退出查看) | linux路径 | |
cp | copy | [-r] 用于复制文件夹使用,表示递归 | 参数1 被复制的文件地址 参数2 复制到的地址 |
mv | move | 参数1 被移动的文件或文件夹 参数2 移动去的地方(可以更名) | |
rm | remove | [-r] 用于删除文件夹 -f 表示强制删除 | 参数1 参数2 … 参数N |
清屏:ctrl+l或者clear
rm命令支持通配符*,用来做模糊匹配
- test*,表示匹配任何以test开头的内容
- *test,表示匹配任何以test结尾的内容
- $ *test* $,表示匹配任何含有test的内容
临时切换到root用户:su - root 输入密码123456
退出命令:exit
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
grep | [-n] 显示行号 | 关键字+文件路径 | |
wc | word count | [-c] 显示字节数 -m 显示字符数 -l 显示行数 - w 显示单词数 | 被统计的文件路径 |
管道符:| 左边的结果作为右边的输入
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
echo | ”输出的内容“ u n d e f i n e d undefined undefined | ||
tail | [-f] 表示持续跟踪 -num 表示查看尾部多少行,默认10行 | 被跟踪的文件路径 |
重定向符:
> > >:将左侧命令的结果,覆盖写入到符号右侧的文件
> > >> >>:将左侧命令的结果,追加写入到符号右侧的文件
vi\vim编辑器的三种工作模式
-
命令模式:所敲按键都理解为命令,驱动不同功能,yyp复制粘贴行,dd删除行,u撤销操作
-
输入模式:自由编辑模式,命令模式下按键i进入,esc退出到命令模式
-
底线命令模式:开始,通常用于文件的保存、退出,命令模式下按键:进入
第二章
切换root命令:su - root
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
su | switch user | [-] 表示是否在切换用户后加载环境变量 | 用户名 |
exit或ctrl+d | |||
sudo | 为一条命令临时赋予root权限 |
part1.用户组命令
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
groupadd | 添加用户组 | 用户组名 | |
groupdel | 删除用户组 | 用户组名 |
part2.用户命令
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
useradd | 创建用户 | [-g] 指定用户的组 [-d] 指定用户HOME路径,不指定则HOME默认在:/home/用户名 | 用户名 |
userdel | 删除用户 | [-r] 删除用户的HOME目录,不使用则保留 | 用户名 |
id | 查看用户所属组 | 用户名 | |
usermod | 修改用户所属组 | [-aG] | 用户组+用户名 |
getent | 查看当前系统中的用户 | passwd | |
用户名:密码(x):用户ID:组ID:描述信息:HOME目录:执行终端(默认bash) | |||
group | |||
组名称:组认证:组ID |
part3.查看权限控制信息
-
第一列为权限细节:10个槽位
1:-或d或l. -表示文件,d表示文件夹,l表示软连接
2-4表示所属用户权限
5-7表示所属用户组权限
8-10表示其他用户权限
2-4:rwx或-. r表示读,w表示写,x表示执行
(cd至指定文件夹说明有x权限)
-
第三列为所属用户
-
第四列为所属用户组
part4.修改权限命令
只有文件、文件夹的所属用户或root用户可以修改
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
chmod | [-R] 对文件夹内的全部内容应用同样的操作 | 权限 文件或文件夹 |
示例: chmod u=rwx,g=rx,o=x hello.txt,将文件权限修改为rwxr-x–x其中:u表示user所属用户,g表示group所属用户组,o表示other其他用户
快捷写法:chmod 751 hello.txt
使用该命令,可以修改文件、文件夹的所属用户和用户组,此命令只适用于root用户执行,
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
chown | [-R] 对文件夹内的全部内容应用同样的操作 [用户] 修改所属用户 [:] 用于分隔 [用户组] 修改所属用户组 | 文件或文件夹 |
第三章
快捷操作与命令
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
history | 查看历史命令 | ||
python | 进入python编译环境 | ||
ctrl+c(快) | 停止进度 | ||
ctrl+d(快) | 退出 | ||
!+关键词 | 执行最近的匹配关键词的命令 | ||
ctrl+r(快) | 搜索 | ||
ctrl+a(快) | 跳到命令开头 | ||
ctrl+e(快) | 跳到命令结尾 | ||
ctrl+左右(快) | 跳过单词选取 |
第四章
part1.软件安装与管理
-
linux系统常见软件后缀.rpm
命令 全称 选项 参数 yum (需要root权限) [-y] 自动确认 [install] 安装 [remove] 卸载 [search] 搜索 软件名称 systemct 控制服务 [start] 启动 [stop] 关闭 [status] 查看状态 [enable] 开启开机自启 [disable] 关闭开机自启 服务,如NetworkManager主网络服务,network副网络服务,firewalld防火墙服务,sshd,ssh服务
part2.软链接
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
ln | [-s]创建软链接 | 参数1:被链接的文件或文件夹 参数2:链接的目的地 |
part3.时间和日期
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
date | [-d]按照给定的字符串显示日期,用于日期计算 [+格式化字符串] %Y年%y年份后两位数字(00-99)%m月份(01-12)%d日(01-31)%H小时(00-23)%M分钟 %S秒(00-60)%s时间戳(1970-01-01 00:00:00 UTC到现在的秒数) |
-
修改linux时区
使用root权限,执行如下命令
rm -f /etc/localtime sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
-
ntp程序自动校准系统时间
systemctl start ntpd systemctl enable ntpd 或手动校准 ntpdate -u ntp.aliyun.com
part4.IP地址和主机名
IP地址主要有2个版本,V4和V6版本(V6本文不涉及)
IPv4版本地址格式:a.b.c.d,其中abcd表示0~255的数字,如192.168.88.101
查看ip地址命令:ifconfig
特殊ip地址:
- 127.0.0.1,该IP地址用于指代本机
- 0.0.0.0
- 可以用于指代本机
- 可以在端口绑定中用来确定绑定关系
- 在一些IP地址限制中,表示所有IP
主机名:hostname
修改:hostnamectl set-hostname 主机名
配置固定IP地址:~
part5.网络请求与管理
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
ping | [-c num]-c 检查的次数,不限次数持续检查 | ip或主机名 | |
wget | [-b]可选,后台下载,会将日志写入到当前工作目录的wget-log文件 | url | |
curl | [-O]用于下载文件,当url时下载链接时,可以使用此选项保存文件 | url发起网络请求的链接 |
端口:
公认端口:1~1023,通常用于系统内置预留使用
注册端口:1024~49151,通常可以随意使用
动态端口:49152~65535,对外访问时临时使用
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
nmap | 查看端口占用情况(需要yum下载) | 被查看的IP地址 | |
net-tools | 查看指定端口占用情况(下载) | [-anp|grep] | 端口号 |
part6.进程管理
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
ps | 查看系统进程信息 | [-e -f]-e显示出全部的进程-f以完全格式化的形式展示信息 | |
kill | 关闭进程 | [-9]强制关闭 | 进程ID |
UID:进程所属的用户ID
PID:进程的进程号ID
PPID:进程的父ID(启动此进程的其他进程)
C:此进程的CPU占用率
STIME:进程的启动时间
TTY:启动此进程的终端序号,如显示?,表示非终端启动
TIME:进程占用CPU的时间
CMD:启动命令或启动路径
part6.主机状态
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
top | 查看CPU、内存使用情况 | [-p] [-d] [-c] [-n] [-b] [-i] [-u] | |
df | 磁盘信息监控 | [-h]以更人性化的单位显示 | |
iostat | 查看CPU、磁盘的相关信息 | [-x] 显示 [num1] 刷新间隔 [num2] 刷新几次 | |
sar | 查看网络的相关信息 | 固定写法sar -n DEV num1 num2 |
内容详解略
top还可以交互式运行,按下h键显示帮助
part7.环境变量
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
env | 查看环境变量 |
$符号用于取得环境变量
- 临时设置环境变量:
export 变量名=变量值
- 永久设置:
- 针对当前用户生效,配置在当前用户的:~/.bashrc文件中
- 针对所有用户生效,配置在系统的:/etc/profile文件中
- 并通过语法:source配置文件,进行立刻生效
part8.文件的上传和下载
- 鼠标操作
- rz、sz命令:
- 安装:yum -y install lrzsz
- sz 要下载的文件
- rz
part9.压缩和解压
tar、gzip压缩格式在linux中较为常用,分别为.tar和.gz
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
tar | [-c -v -x -f -z -C] -c 创键压缩文件 -v显示压缩、解压过程 -x 解压模式 -f 要创建的文件,必须处在所有选项最后一个 -z gzip模式,一般处在选项第一个, -C 解压的目的地 | 参数1 参数 2 参数N |
tar常用组合:
-
tar -cvf test.tar 1.txt 2.txt 3.txt
将1.txt 2.txt 3.txt压缩至test.tar
-
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt
将1.txt 2.txt 3.txt压缩到test.tar.gz
-
tar -xvf test.tar
解压test.tar至当前目录
-
tar -xvf test.tar -C /home/itheima
解压test.tar至/home/itheima
-
tar -zxvf test.gz -C /home/itheima
以gzip模式解压test.tar至/home/itheima
命令 | 全称 | 选项 | 参数 |
---|---|---|---|
zip | [-r] 被压缩的包含文件夹时,使用该选项 | 参数1 参数2 参数N | |
unzip | [-d] 指定要解压去的位置 | 被解压的zip压缩包文件 |
示例:
-
zip test.zip a.txt b.txt c.txt
将a.txt b.txt c.txt压缩到test.zip文件内
-
zip -r test.zip test itheima a.txt
将test itheima两个文件夹和a.txt文件压缩到test.zip
-
unzip test.zip
将test.zip解压到当前目录
-
unzip test.zip -d /home/itheima
| zip | | [-r] 被压缩的包含文件夹时,使用该选项 | 参数1 参数2 参数N |
| unzip | | [-d] 指定要解压去的位置 | 被解压的zip压缩包文件 |
示例:
-
zip test.zip a.txt b.txt c.txt
将a.txt b.txt c.txt压缩到test.zip文件内
-
zip -r test.zip test itheima a.txt
将test itheima两个文件夹和a.txt文件压缩到test.zip
-
unzip test.zip
将test.zip解压到当前目录
-
unzip test.zip -d /home/itheima
将test.zip解压到/home/itheima