我使用LFTP将一些Git文件镜像到我的服务器上,使用CI/CD管道供应商从Docker映像。这与预期的一样,但是当使用LFTP中的mirror命令时,我需要排除以点开头的任何类型的文件,如下所示:
lftp -u $USERNAME, -e "[...] mirror [...] --ignore-time -x '/(\.\w*.*)/$' --exclude README.md [...]; exit" sftp://$HOST但是所有这些都不起作用,它只是跳出-x命令,然后转到下一个命令(例如--exclude README.md)。
我想不是关于使用-x或--exclude,从医生们开始。
镜像 OPTSsource目标] ..。 -排除匹配的文件
这个也没用:
-x '/(\.\w*.*)/$'-x /(\.\w*.*)/$-x /(\.\w*.*)/-x (\.\w*.*)-x \.\w*.*那又有什么问题呢?这难道不是Bash的有效正则表达式吗?
发布于 2019-05-15 13:56:49
出于某些原因,对我来说唯一可行的方法是在$ regex的末尾使用--exclude,如下所示:
lftp -u $USERNAME, -e "[...] mirror [...] --exclude '^\..*$'[...]没有行尾分隔符,它似乎完全不起作用,只是忽略了--exclude或-x选项,然后转到下一个选项。另外,正则表达式必须用引号(单引号或双引号)包装。
希望这对某人有帮助:)
发布于 2019-05-16 06:53:18
使用这样的-X选项可能更容易:-X .* -X。
https://stackoverflow.com/questions/56132556
复制相似问题