首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >排除lftp镜像命令中的带点的所有内容。

排除lftp镜像命令中的带点的所有内容。
EN

Stack Overflow用户
提问于 2019-05-14 14:16:45
回答 2查看 1.3K关注 0票数 2

我使用LFTP将一些Git文件镜像到我的服务器上,使用CI/CD管道供应商从Docker映像。这与预期的一样,但是当使用LFTP中的mirror命令时,我需要排除以点开头的任何类型的文件,如下所示:

代码语言:javascript
复制
lftp -u $USERNAME, -e "[...] mirror [...] --ignore-time -x '/(\.\w*.*)/$' --exclude README.md [...]; exit" sftp://$HOST

但是所有这些都不起作用,它只是跳出-x命令,然后转到下一个命令(例如--exclude README.md)。

我想不是关于使用-x--exclude,从医生们开始。

镜像 OPTSsource目标] ..。 -排除匹配的文件

这个也没用:

代码语言:javascript
复制
-x '/(\.\w*.*)/$'
代码语言:javascript
复制
-x /(\.\w*.*)/$
代码语言:javascript
复制
-x /(\.\w*.*)/
代码语言:javascript
复制
-x (\.\w*.*)
代码语言:javascript
复制
-x \.\w*.*

那又有什么问题呢?这难道不是Bash的有效正则表达式吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-15 13:56:49

出于某些原因,对我来说唯一可行的方法是在$ regex的末尾使用--exclude,如下所示:

代码语言:javascript
复制
lftp -u $USERNAME, -e "[...] mirror [...] --exclude '^\..*$'[...]

没有行尾分隔符,它似乎完全不起作用,只是忽略了--exclude-x选项,然后转到下一个选项。另外,正则表达式必须用引号(单引号或双引号)包装。

希望这对某人有帮助:)

票数 2
EN

Stack Overflow用户

发布于 2019-05-16 06:53:18

使用这样的-X选项可能更容易:-X .* -X。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56132556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档