Linux学习笔记

一、目录与导航 ⭐⭐⭐

pwd                     # 显示当前所在目录的绝对路径
cd 路径                 # 切换到指定目录(如 cd /var/log)
cd ~                    # 回到当前用户的家目录(/home/用户名)
cd ..                   # 返回上一级目录
ls -la                  # 列出当前目录所有文件(含隐藏文件,含详细信息)
ls 路径                 # 列出指定目录的文件(如 ls /var/log)

二、文件操作 ⭐⭐⭐

touch 文件名            # 创建一个空文件,或更新已有文件的时间戳
cp 原文件 目标文件      # 复制文件(如 cp test.txt test_backup.txt)
cp -r 原目录 目标目录   # 复制目录(-r = 递归复制)
mv 原文件 目标文件      # 移动文件,或重命名文件(如 mv A B 把A改名为B)
mv 文件 路径/           # 把文件移动到另一个目录
rm 文件名               # 删除文件(Linux无回收站,删除不可恢复!)
rm -r 目录名            # 删除文件夹(-r = 递归删除)
cat 文件名              # 查看文件全部内容(适合小文件)
echo "内容" > 文件      # 把内容写入文件(覆盖原有内容)
echo "内容" >> 文件     # 把内容追加到文件末尾(不覆盖)

三、日志查看与搜索⭐⭐⭐

head -n 5 文件名        # 查看文件的前5行
tail -n 5 文件名        # 查看文件的最后5行
tail -f 文件名          # 实时监控文件新增内容(按 Ctrl+C 退出)
less 文件名             # 分页查看大文件(空格翻页,/搜索,q退出)
grep "关键词" 文件名    # 在文件中搜索关键词(区分大小写)
grep -i "关键词" 文件名 # 搜索关键词(忽略大小写)
grep -i error 文件名 -A 5 -B 3  # 搜到后显示前后各5行上下文grep -r "关键词" 目录/  # 在目录下所有文件里搜索(-r = 递归)grep -rl "关键词" 目录/ # 只显示包含关键词的文件名,不显示内容
cat 文件名 | grep 关键词        # 组合用法:先读文件再搜索
history                 # 查看历史命令记录(带序号)
!数字                   # 重复执行历史命令中对应序号的那条
clear                   # 清空当前终端屏幕
Ctrl+C                  # 终止当前正在运行的程序(如 tail -f、ping)

四、进程管理 ⭐⭐⭐

ps -ef                  # 查看系统所有正在运行的进程
ps -ef | grep 程序名    # 精准查找某个程序是否在运行
top                     # 实时查看系统资源占用(按 q 退出)

五、网络相关⭐⭐⭐

# ---- IP与路由 ----
ip addr                 # 查看所有网络接口的IP地址
ip addr show 网卡名     # 查看指定网卡的IP(如 ip addr show enp0s1)
ip route                # 查看路由表,可查网关IP和本机IP

# ---- 网络连通性测试 ----
ping 8.8.8.8            # 持续ping,检查网络通不通(Ctrl+C停止)
ping -c 4 8.8.8.8       # ping 4次后自动停止,看丢包率
ping -c 4 192.168.64.1  # ping网关,判断是内网问题还是外网问题

# ---- 网卡管理 ----
ip link set enp0s1 up   # 启用网卡(通常已是UP状态,报错属正常)ip link set enp0s1 down # 禁用网卡(⚠️ 慎用,会断网!)

# ---- 主机信息 ----
hostname                # 查看主机名(短名)
hostnamectl             # 查看详细主机信息(系统版本、架构、内核等)

六、端口排查⭐⭐⭐

ss -tlnp                # 查看所有监听中的TCP端口
sudo ss -tlnp           # 带sudo才能看到程序名称
sudo ss -tlnp | grep 端口号  # 精确查某个端口被谁占用(如 grep 8080)

记忆口诀:t 是 TCP,l 是 Listen,n 是数字,p 是程序

七、磁盘与资源 ⭐⭐⭐

df -h                   # 查看磁盘剩余空间(-h = 人类可读格式)
du -sh 目录名           # 查看目录总共多大(如 du -sh /var/log)
du -sh *                # 查看当前目录下每个文件/文件夹的大小
du -sh /var/log/* | sort -rh | head -10  # 按大小排序,看前10个最大的
free -h                 # 查看内存使用情况(重点看 available 列)
top                     # 实时查看资源占用,重点看 load average 和 %CPU

八、权限与文件查找 ⭐⭐

# ---- 修改权限 ----
chmod 755 文件名        # 数字方式改权限(7=rwx, 5=r-x)
chmod +x 文件名         # 给所有人加执行权限(最常用)
chmod u+x 文件名        # 只给所有者加执行权限
chmod o-r 文件名        # 去掉其他人的读权限

# ---- 修改所属人 ----
sudo chown cc 文件名    # 把文件所有者改成 cc 用户
sudo chown cc:cc 文件名 # 同时改所有者和所属组

# ---- 查找文件 ----
find /路径 -name "文件名"    # 按文件名查找(如 find /var/log -name "syslog")
find /路径 -type f           # 只找普通文件find /路径 -type d           # 只找目录find /路径 -mtime -1         # 找1天内修改过的文件find /路径 -mtime +7         # 找7天前修改过的文件find /路径 -size +10M        # 找大于10MB的文件

权限数字速记:r=4,w=2,x=1,-=0

权限三组: 所有者(u) → 所属组(g) → 其他人(o)

九、打包压缩与远程传输 ⭐⭐

# ---- 打包压缩 ----
tar -czvf 包名.tar.gz 目录/   # 打包+压缩(最常用)
tar -xzvf 包名.tar.gz         # 解压
tar -tzvf 包名.tar.gz         # 只看包里有什么,不解压
tar -xzvf 包名.tar.gz -C /目标目录/  # 解压到指定目录

# ---- 远程传输 ----
scp 文件 用户@IP:/路径/       # 本地文件传到远程服务器
scp 用户@IP:/路径/文件 ./     # 从远程服务器下载到本地
scp -r 目录 用户@IP:/路径/    # 传整个目录(加 -r)
scp -P 2222 文件 用户@IP:/路径/  # 指定端口(注意大写 P)

# ---- 远程登录 ----
ssh 用户@IP                   # 登录远程服务器
ssh -p 2222 用户@IP           # 指定端口登录
exit                          # 退出远程登录(或 Ctrl+D)

# ---- 下载文件 ----
wget URL                      # 下载文件(支持断点续传)
wget -O 新名字.zip URL        # 下载并指定保存文件名
curl URL                      # 发HTTP请求/下载
curl -X POST -d "参数" URL    # 发POST请求

tar 记忆口诀: 打包压缩 czvf,解压 xzvf,看内容 tzvf,f 永远在最后。

十、系统管理 ⭐⭐⭐

sudo 命令               # 以管理员身份执行(需输入密码)
shutdown -h now         # 立刻关机(优雅关机,会通知程序保存数据)
shutdown -h +2          # 2分钟后自动关机
shutdown -c             # 取消已计划的关机/重启
shutdown -r now         # 立刻重启(-r = reboot)
reboot                  # 重启系统(与 shutdown -r now 等效)

速查表:按”问题”反查命令

遇到的问题用什么命令
我在哪个目录?pwd
这个目录下有什么文件?ls -la
我想看日志文件的最新几行tail -n 20 文件名
我想实时盯着日志看tail -f 文件名(Ctrl+C退出)
日志里有报错,怎么找?grep -i error 文件名
文件太大,想一页一页看less 文件名(空格翻页,q退出)
我想知道我的IP是多少ip addr 或 ip route
网络好像断了,先测一下ping 8.8.8.8
某个端口(如8080)被谁占了?sudo ss -tlnp | grep 8080
想确认某个程序在不在运行ps -ef | grep 程序名
服务器卡了,想看谁在吃CPUtop(按 q 退出)
磁盘满了,怎么看还剩多少?df -h
磁盘满了,哪个目录最大?du -sh * | sort -rh | head -10
内存还够不够?free -h
脚本没有执行权限怎么办?chmod +x 脚本名
文件属主不对,改不了怎么办?sudo chown 用户名 文件名
知道文件名但不知道在哪?find /路径 -name "文件名"
想找最近1天改过的文件?find /路径 -mtime -1
想在整个目录里搜关键词?grep -r "关键词" 目录/
日志太大要发给开发怎么办?tar -czvf 包名.tar.gz 目录/
收到压缩包怎么解压?tar -xzvf 包名.tar.gz
怎么把文件传到服务器?scp 文件 用户@IP:/路径/
怎么登录公司服务器?ssh 用户@IP
怎么下载一个文件?wget URL
想复制/备份一个文件cp 原文件 备份文件名
想删除一个文件rm 文件名(删了找不回!)
命令敲到一半卡住了按 Ctrl+C 终止
屏幕太乱想清空clear
我刚刚敲过什么命令来着?history
想关机shutdown -h now
版权声明

本网站名称:学海拾茜
本文链接:https://www.61lyf.top/linux%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/
本网站的文章部分内容可能来源于网络,仅供学习与参考,如有侵权,请联系站长进行核实删除。
转载本站文章需要遵守:商业转载请联系站长,非商业转载请注明出处并附带原文链接!!!
站长邮箱:cyg1900@outlook.com 或studygod825@qq.com ,如不方便留言可邮件联系。
暂无评论

发送评论 编辑评论


				
上一篇