Shell脚本
Reference
Shell笔记
shell自动清理30天以上的文件
shell自动备份PVE里的虚拟机系统文件
chatgpt做的自动备份pve镜像
shell 定时备份文件夹脚本以及删除过期备份
写一个断电按顺序自动关闭服务器的脚本
GPT:自动停止服务,控制关机
GPT: Shell 停止Docker 应用
GPT: Shell从文档读取配置信息
Shell传参给脚本,带参数运行
GPT:Shell停止Systemd服务
停止Moosefs服务
StartMoosefs.sh
StopMoosefs.sh
StopDocker.sh
StopSysyemService.sh
备份脚本
Linux运维常用脚本总结
网卡绑定bond配置脚本
自动取文件脚本
shell脚本: 同步两个本地文件夹
分割mysql-slow慢日志的脚本
解压不成功退出整个解压
Linux操作 :批量截取文件第一列,去重
文本的一些操作
nginx监控脚本
监控tomcat脚本
kafka监控脚本
zookeeper监控启动脚本
本文档使用 MrDoc 发布
-
+
首页
自动取文件脚本
以下是一个使用FTP从10.154.148.77的指定路径批量获取文件并存储到本地的Linux shell脚本示例。该脚本会根据指定的文件名格式和系统日期来下载文件,并将操作结果输出到日志文件中。 ```bash #!/bin/bash # FTP服务器的IP地址和用户名 ftp_server="10.154.148.77" ftp_username="your_username" # FTP服务器的密码 ftp_password="your_password" # 本地保存文件的目录 local_directory="/path/to/local/directory" # 远程FTP服务器上的目录 remote_directory="/path/to/remote/directory" # 指定文件名格式,这里使用日期作为文件名的一部分,日期格式为YYYYMMDD file_format="file_%Y%m%d.txt" # 获取当前系统日期并替换到文件名中 current_date=$(date +%Y%m%d) file_name=$(printf "$file_format" "$current_date") # 输出日志文件路径 log_file="/path/to/log.txt" # 下载文件并保存日志 ftp -n $ftp_server <<EOF >>$log_file 2>&1 user $ftp_username $ftp_password get $remote_directory/$file_name $local_directory/$file_name bye EOF ``` 在上述脚本中,ftp_username和ftp_password需要替换为实际的FTP用户名和密码。local_directory需要替换为本地保存文件的目录路径,remote_directory需要替换为远程FTP服务器上的目录路径。file_format定义了文件名的格式,其中使用了日期的占位符(%Y%m%d)。在脚本中,我们使用date命令获取当前系统日期,并将其替换到文件名中。log_file定义了日志文件的路径,将操作结果输出到该文件中。 保存脚本并赋予执行权限(例如,chmod +x script.sh),然后使用crontab工具设置定时任务。执行以下命令打开crontab编辑器: ```bash crontab -e ``` 然后添加以下行来设置每天定时执行脚本(例如在凌晨1点执行): ```bash 0 1 * * * /path/to/script.sh > /dev/null 2>&1 & ``` ``` #!/bin/bash # FTP服务器的IP地址和用户名 FTP_SERVER="10.154.148.77" FTP_USERNAME="your_username" # FTP服务器的密码 FTP_PASSWORD="your_password" # 本地保存文件的目录 LOCAL_DIR="/path/to/local/directory" # 远程FTP服务器上的目录 REMOTE_DIR="/path/to/remote/directory" # 指定要下载的文件名列表 FILE_NAMES=( "file1.txt" "file2.txt" "file3.txt" # 添加更多文件名... ) # 下载文件并保存到本地目录 for FILE_NAME in "${FILE_NAMES[@]}"; do FILE_PATH="$REMOTE_DIR/$FILE_NAME" LOCAL_PATH="$LOCAL_DIR/$FILE_NAME" ftp -n $FTP_SERVER <<EOF >>"$LOCAL_PATH.log" 2>&1 user $FTP_USERNAME $FTP_PASSWORD get $FILE_PATH $LOCAL_PATH bye EOF done ```
dz
2023年11月3日 05:17
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码