使用 bash 命令和 ftp 连接我必须执行两个任务:
- 删除 ftp 服务器上某个目录中最旧的文件。要删除的文件的名称以 backup_ 开头
- 删除某个目录中最旧的子目录(在 ftp 服务器上)
你能帮助我如何实现吗?
我必须将这些功能集成到现有文件中,这样我就不会遇到如何创建 ftp 连接等问题。
答案1
您可以使用lftp作为 bash 脚本中的非交互式 ftp 客户端。
或者假设你有一个相当合理和现代的发行版,你可以使用curlftpfsFUSE 文件系统将 ftp 服务器文件夹挂载为本地文件夹,然后使用 bash 执行所需的逻辑位,然后卸载 ftp 服务器。
这有效地消除了仅通过 ftp 提供文件的复杂性,因为脚本会将文件视为本地可用。
关于如何根据名称或日期删除文件的示例有很多,curlftpfs 网站上的一个例子关于如何在脚本中挂载和卸载文件系统。
答案2
我向你推荐了 IBM 的一个优秀教程,
NcFTP:灵活的 FTP 客户端;
看着使用命令行
三位客户ncfpls,ncftp获取工具, 和ncfpput命令毫无疑问,其使用量将超过 NcFTP。当您需要批量或编写临时传输脚本时,这些实用程序非常有用。