7

如果目录不存在,我想使用 LFTP 创建一个目录。它应该是“单线”:

这确实有效:

lftp -c "open -u user,pass server; mkdir /test

lftp -c "open -u user,pass server; mkdir -p /test

如果目录已存在则失败:

mkdir: Zugriff nicht möglich:550-无法创建目录:文件存在 16 个文件已使用 (0%) - 已授权:50000 个文件 1286621 KB 已使用 (0%) - 已授权:512000000 Kb (/test2)

但如果该目录已经存在,它确实会失败。我怎样才能更优雅地做到这一点?

4

3 回答 3

7

您可以使用mkdir -f选项来抑制错误消息。该选项从 4.5.2 版本开始可用。最新的 lftp 版本是 4.7.3。

于 2016-08-26T12:17:14.883 回答
4

如果你不能升级到最新版本的 lftp,你可以使用这个:

lftp -c "cd /my/new/directory || mkdir -p /my/new/directory"

只有当它无法进入时它才会创建目录。

于 2017-02-17T18:06:18.580 回答
-1

你是说简单mkdir -p /test吗?

在这里回答:仅当目录不存在时如何 mkdir?

来自mkdir --help

-p, --parents 如果存在则没有错误,根据需要创建父目录

于 2016-08-25T11:41:27.620 回答