Linux跨服务器压缩源文件然后复制给目标服务路径下传输的脚本
时间: 2024-11-27 15:19:22 浏览: 0
FTP服务器项目开发,支持window/linux和多线程
在Linux环境下,你可以使用bash脚本来完成这个任务。以下是一个基本的shell script示例,它会先通过`gzip`命令压缩源文件,然后使用`scp`命令将压缩后的文件传输到指定的目标服务器:
```bash
#!/bin/bash
# 定义源文件路径、目标文件夹路径和目标服务器地址
source_file="src/myfile.txt"
target_folder="/path/to/destination"
remote_server="user@remote_host"
# 使用gzip压缩源文件
compressed_file="${source_file}.gz"
gzip -c $source_file > $compressed_file
# 检查压缩是否成功
if [ $? -eq 0 ]; then
echo "Compression successful."
# 使用scp将压缩文件传送到目标服务器
scp $compressed_file $remote_server:$target_folder
# 检查传输是否成功
if [ $? -eq 0 ]; then
echo "File transferred successfully."
echo "Decompress and verify the file at remote server."
else
echo "Error transferring file to remote server."
fi
else
echo "Error compressing file."
fi
```
保存此脚本为`compress_and_transfer.sh`,然后赋予执行权限(`chmod +x compress_and_transfer.sh`),然后运行它(`./compress_and_transfer.sh`)。
阅读全文