【发布时间】:2013-05-06 21:03:30
【问题描述】:
正如标题中指定的那样,我正在寻找一种方法来创建指向名称中包含指定文本的所有子文件夹的链接,例如,对于名称中包含“.app”的根目录的所有子文件夹,将创建一个链接到“/AppLinks”目录。我想在 bash 脚本中使用它(开源,免费)。
有人知道怎么做吗? 我用谷歌搜索它没有运气。
【问题讨论】:
正如标题中指定的那样,我正在寻找一种方法来创建指向名称中包含指定文本的所有子文件夹的链接,例如,对于名称中包含“.app”的根目录的所有子文件夹,将创建一个链接到“/AppLinks”目录。我想在 bash 脚本中使用它(开源,免费)。
有人知道怎么做吗? 我用谷歌搜索它没有运气。
【问题讨论】:
find yourdir -type d -name '*.app' -exec ln -s {} /AppLinks \;
在yourdir 中找到所有名为something.app 的目录,并在/AppLinks 中创建指向它们的符号链接。
【讨论】:
单行bash-fu
function FUNCsymlink() { echo "$1"; fileName=`basename "$1"`; ln -s "$1" "/AppLinks/$fileName"; }; export -f FUNCsymlink; find `pwd`/ -maxdepth 1 -type d -iname "*.app" -exec bash -c "FUNCsymlink '{}'" \;
方便阅读:
function FUNCsymlink() {
echo "$1";
fileName=`basename "$1"`;
ln -s "$1" "/AppLinks/$fileName";
};
export -f FUNCsymlink;
find `pwd`/ -maxdepth 1 -type d -iname "*.app" -exec bash -c "FUNCsymlink '{}'" \;
您可能需要针对您的具体解决方案进行一些调整。
无论您在哪里运行它,它都会创建指向 /AppLinks 的符号链接
它只会寻找直接的子文件夹,而不是子文件夹的子文件夹,这就是我相信你需要的......
【讨论】: