Linux常用命令
约 1349 字大约 5 分钟
2025-09-04
📁 一、创建文件
1. 创建空文件
touch filename
# 如果文件不存在,则创建空文件。
# 如果文件已存在,则更新其访问和修改时间。
# 示例:
touch example.txt
touch /path/to/config.php2. 使用重定向创建文件
> filename # 创建空文件(覆盖)
>> filename # 创建空文件或追加(不写内容时)
# 示例:
> log.txt # 创建空日志文件
echo "" > note.md # 创建并写入空行3. 使用 echo 或 printf 创建并写入内容
echo "内容" > filename
printf "内容\n" > filename
# 示例:
echo "Hello Linux" > hello.txt
echo "<?php" > index.php4. 使用 cp 复制文件(间接创建)
cp source.txt dest.txt
cp template.conf /etc/myapp/✏️ 二、修改文件内容
1. 覆盖写入(>`)
echo "新内容" > filename
# 清空原文件内容,写入新内容。
# 示例:
echo "v1.0.0" > version.txt2. 追加写入(>>)
echo "追加内容" >> filename
在文件末尾添加内容,不覆盖原有内容。
示例:
echo "$(date): 服务启动" >> log.txt echo "define('DEBUG', true);" >> config.php
3. 使用 cat 写入多行(Here Document)
cat > filename << EOF
第一行内容
第二行内容
第三行内容
EOF
# 示例:
cat > info.txt << EOF
项目名称:WebApp
版本:1.2.0
作者:Solarsea
EOF4. 使用 tee 命令(写入文件并输出到终端)
echo "内容" | tee filename # 覆盖
echo "内容" | tee -a filename # 追加📝 三、编辑文件(交互式)
1. 使用 vim 编辑
vim filename
# i 进入编辑模式
# Esc 退出编辑模式
# :w 保存,:q 退出,:wq 保存并退出 :qa! 退出所有不保存2. 使用 nano 编辑(简单易用)
nano filename
# Ctrl+O 保存,Ctrl+X 退出3. 使用 sed 替换内容(非交互)
sed -i 's/旧内容/新内容/g' filename
# 示例:
sed -i 's/port=3306/port=3307/g' config.ini🗑️ 四、删除文件
1. 删除文件
rm filename
# 删除单个文件。
# 示例:
rm old.log
rm /tmp/tempfile.txt2. 强制删除(不提示)
rm -f filename
# 强制删除,不询问确认。3. 递归删除目录及内容
rm -r directory/ # 递归删除目录
rm -rf directory/ # 强制递归删除(慎用!)
# ⚠️ 警告:rm -rf / 或 rm -rf * 可能导致系统崩溃,请谨慎使用!📋 五、查看文件内容
| 命令 | 说明 |
|---|---|
cat filename | 显示全部内容 |
less filename | 分页查看(支持上下滚动) |
head filename | 查看前10行 |
head -n 5 filename | 查看前5行 |
tail filename | 查看后10行 |
tail -f filename | 实时查看日志追加内容 |
查看项目日志
grep "关键词" filename # 区分大小写搜索
grep -i "关键词" filename # 忽略大小写(常用)
grep -n "关键词" filename # 显示匹配行的行号
grep -r "关键词" /path/ # 递归搜索目录下所有文件
# 示例:
grep -i "select" 25.log # 查找日志中所有 SELECT 语句(不区分大小写)s🔒 六、文件权限与所有权管理
1. 文件所有权管理(chown)
更改文件/目录的所有者和所属组:
sudo chown 用户:组 文件/目录
# 常见用法:
# 修改单个文件/目录的所有者和组
sudo chown root:root solarseahorse
# 递归修改整个目录及其子内容
sudo chown -R www:www webman-redis-queue/
# 只修改所有者
sudo chown www webman-redis-queue/
# 只修改所属组
sudo chown :www webman-redis-queue/
⚠️ 注意:-R 表示递归操作,慎用于系统目录。2. 文件权限管理(chmod)
修改文件或目录的读、写、执行权限。
数字法设置权限(常用)
chmod [-R] <三位数字> <文件/目录>
# 数字 权限 说明
# 4 r-- 可读
# 2 -w- 可写
# 1 --x 可执行
# 7 rwx 可读可写可执行
# 常见组合:
chmod 755 file # 所有者:rwx, 组:r-x, 其他:r-x
chmod -R 755 dir # 递归修改目录权限
chmod 644 file # 所有者:rw-, 组:r--, 其他:r--
chmod +x script.sh # 给文件添加执行权限
符号法(灵活控制)
chmod u+x file # 给所有者添加执行权限
chmod g-w file # 去除组的写权限
chmod o=r file # 其他用户只读🔍 七、端口与进程管理
查看端口占用情况
netstat -tulnp | grep <端口号>
# 示例:
netstat -tulnp | grep 41005
# t: TCP 连接
# u: UDP 连接
# l: 监听状态
# n: 显示数字地址和端口
# p: 显示进程 PID 和名称
替代命令(推荐):
ss -tulnp | grep 41005 # 更快更现代的工具
lsof -i :41005 # 查看指定端口的进程终止进程
kill <PID> # 正常终止进程
kill -9 <PID> # 强制终止进程(SIGKILL)
# 示例:
kill -9 10226💡 八、其他实用命令
| 命令 | 用途 |
|---|---|
ps aux | 查看进程信息 |
top / htop (sudo yum install htop -y) | 实时查看系统资源和进程 |
df -h | 查看磁盘使用情况 |
free -h | 查看内存使用情况 |
systemctl start/restart/stop <服务> | 管理系统服务 |
ufw allow 80/tcp | 开放防火墙端口(Ubuntu) |
tail -f /var/log/nginx/error.log | 实时查看日志 |
九、Linux定时任务
1.查看当前定时任务
crontab -e # 编辑当前用户的定时任务
crontab -l # 列出当前用户的定时任务
crontab -r # 删除当前用户的定时任务2.定时任务格式
* * * * * command # 每分钟执行一次
分 时 日 月 周
*/1 * * * * /usr/bin/curl -s http://ip/ # 每1分钟执行一次 (curl具体路径)
-s : 不显示进度条、错误信息等无关输出十、创建文件夹
创建文件夹命令
mkdir "D:\你的文件夹名"删除文件夹命令
要删除一个空文件夹
rmdir "名称"删除非空
rmdir /s "D:\你的文件夹名"
跳过确认直接删除
rmdir /s/q "D:\你的文件夹名"版权所有
版权归属:念宇
