我正在尝试编写一个每天都会触发的 shell 脚本,并将昨天的日志文件从多个服务器传输到 ftp 服务器。
到目前为止,我已经设法将它们复制并根据命名约定(必须包含 YYYYMMDD)将它们重命名到另一个目录,但不在 FTP 上。
这是我到目前为止所得到的:
#!/bin/sh
path=/home/log/
backupPath=/home/new_directory/log
if [ ! -d $backupPath ]; then
echo "$backupPath does not exist. Create it"
mkdir $backupPath
fi;
server=$(uname -n)
for filename in $path/*string*; do
timestamp=$(date -d "$(stat -c %y "$filename")" +%Y%m%d)
basename=$(basename $filename)
newfilename=$(echo "$basename" | sed s/access/access_"$timestamp"_"$server"/g)
cp $filename $backupPath"/$newfilename"
echo "$filename moved to $backupPath/$newfilename"
done
现在我需要修改它以仅将昨天格式良好的文件复制到 FTP 服务器。