我想链接(ln -s)/ mnt / usr / lib /中的所有文件到/ usr / lib /
有很多文件,如何快速完成? :)
答案 0 :(得分:185)
ln -s /mnt/usr/lib/* /usr/lib/
我猜,这属于超级用户。
答案 1 :(得分:82)
答案 2 :(得分:14)
发布的解决方案不会链接任何隐藏文件。要包含它们,请尝试以下方法:
cd /usr/lib
find /mnt/usr/lib -maxdepth 1 -print "%P\n" | while read file; do ln -s "/mnt/usr/lib/$file" "$file"; done
如果你碰巧想要递归地创建目录而只想链接文件(这样如果你在一个目录中创建一个文件,它真的在/usr/lib
而不是/mnt/usr/lib
),你可以做这样:
cd /usr/lib
find /mnt/usr/lib -mindepth 1 -depth -type d -printf "%P\n" | while read dir; do mkdir -p "$dir"; done
find /mnt/usr/lib -type f -printf "%P\n" | while read file; do ln -s "/mnt/usr/lib/$file" "$file"; done
答案 3 :(得分:12)
ln -s / mnt / usr / lib / * / usr / lib /