首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在LINUX中有选择地创建指向另一个目录中特定文件的符号链接?

问如何在LINUX中有选择地创建指向另一个目录中特定文件的符号链接?
EN

Stack Overflow用户
提问于 2012-06-05 04:45:05
回答 4查看 3.6K关注 0票数 3

我不太确定该怎么做,但我需要为一个目录中的某些文件创建符号链接,并将这些符号链接放在另一个目录中。

例如,我想要链接当前目录bar1中名称中包含单词"foo“的所有文件,该目录没有扩展名".cc”,并将符号链接放在一个目录bar2中。

我想知道在LINUX bash中是否有单行命令可以实现这一点。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-06-05 05:01:50

假设您在一个包含目录bar1和bar2的目录中

代码语言:javascript
复制
find bar1 -name '*foo*' -not -type d -not -name '*.cc' -exec ln -s $PWD/'{}' bar2/ \;
票数 3
EN

Stack Overflow用户

发布于 2012-06-05 05:04:09

试试这个:

代码语言:javascript
复制
cd bar1
find . -maxdepth 1 -name '*foo*' -not -name '*.cc'  -exec echo ln -s $PWD/{} ../bar2 \;

对演练感到满意后,从命令中删除echo并真正运行它。

票数 2
EN

Stack Overflow用户

发布于 2012-06-05 05:06:42

这很容易通过扩展的globbing来处理:

代码语言:javascript
复制
shopt -s extglob
cd bar2
ln -s ../bar1/foo!(*.cc) .

如果您真的想在一行中完成所有操作,只需使用命令分隔符:

代码语言:javascript
复制
shopt -s extglob; cd bar2; ln -s ../bar1/foo!(*.cc) .

这两个示例是相同的,但第一个更容易阅读。

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

https://stackoverflow.com/questions/10888105

复制
相关文章

相似问题

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