shell脚本如下:
test.sh
|
1 2 3 4 5 6 |
#!/bin/bash WEB_DIR="/var/www/html" tar -czf website.tar.gz -C $(dirname "$WEB_DIR") $(basename "$WEB_DIR") 2>/dev/null |
这是一个 Linux的 shell 命令,用于将网站目录打包成压缩文件,详细解释:
1.命令分解:
1. WEB_DIR="/var/www/html"
- 设置一个变量,定义网站目录的路径
2. tar -czf website.tar.gz
tar: 打包命令c: 创建新归档z: 使用 gzip 压缩f: 指定文件名website.tar.gz: 输出的压缩文件名
3. -C (dirname "WEB_DIR")
-C: 改变工作目录到指定路径$(dirname "$WEB_DIR"): 获取目录路径(/var/www)- 这样 tar 命令会在
/var/www目录下执行
4. $(basename "$WEB_DIR")
- 获取目录名称(
html) - 这样只会打包
html目录本身及其内容
5. 2>/dev/null
- 将错误信息重定向到空设备(不显示错误信息)
2.执行效果:
这个命令会将 /var/www/html 目录打包并压缩成 website.tar.gz 文件,包含完整的目录结构。
3.相当于手动执行:
|
1 2 3 |
cd /var/www tar -czf website.tar.gz html/ |
4.用途:
- 网站备份
- 部署文件打包
- 目录迁移
这是一个很常见的网站备份命令!