bash – 用原来的所有符号链接替换

前端之家收集整理的这篇文章主要介绍了bash – 用原来的所有符号链接替换前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下目录结构
/symdir
  sym1 -> ../dir1
  sym2 -> ../dir2
  hello.txt

接着

/dir1
  some
  files
  here
/dir2
  more
  files

我想用symdir(sym1,sym2)中的符号替换原件。即

some_awesome_bash_func symdir symdir_output

会创造

/symdir_output
  /dir1
    some
    files
    here
  /dir2
    more
    files
  hello.txt

我该如何做到这一点?

可能不是最好的方法,但它的作品:
#!/bin/bash.exe

for link in $(find /symdir -type l)
do
  loc=$(dirname $link)
  dir=$(readlink $link)
  mv $dir $loc
  rm $link
done

注意:这是写在cygwin上。您可能需要更改#!

猜你在找的Bash相关文章