LINUX:链接从一个到另一个目录中的所有文件[关闭](LINUX: Link all files

2019-07-03 23:54发布

我想链接(LN-S)是在/ mnt / usr / lib中/到/ usr / lib目录中的所有文件/

有很多的文件,该怎么办呢快? :)

Answer 1:

ln -s /mnt/usr/lib/* /usr/lib/

我想,这是属于超级用户,虽然。



Answer 2:

GNU cp有一个选项来创建符号链接,而不是复制。

cp -rs /mnt/usr/lib /usr/

请注意,这是一个GNU扩展找不到在POSIX cp



Answer 3:

在发布的解决方案将不链接任何隐藏的文件。 包括他们,试试这个:

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


Answer 4:

LN-S的/ mnt / usr / lib目录/ * / usr / lib目录/



文章来源: LINUX: Link all files from one to another directory [closed]
标签: linux ln