ПСЕВДОКОД
ln -s $HOME/file $HOME/Documents/ $HOME/Desktop/
где я хочу создать символическую ссылку от источника до двух мест назначения. Возможно, moreutils
и pee
.
Как вы можете создать много символических ссылок из одного источника?
Вы не можете сделать это с помощью одного вызова ln
, но вы можете перебрать все необходимые пункты назначения:
$ for i in "$HOME/Documents/" "$HOME/Desktop/"; do ln -s "$HOME/file" "$i"; done
Если у вас есть,
gnu parallel
вы можете попробовать сили, чтобы объединить несколько целей в одно и то же место
источник
parallel
команду изparallel
пакета, а не изmoreutils
.Это не менее многословно, чем два отдельных
ln -s
вызова:но это работает только для абсолютных путей (потому что символические ссылки интерпретируются относительно их родительского каталога, если они не являются абсолютными).
(Относительная стоимость снижается, конечно, с увеличением количества ссылок. Кроме того, этот фрагмент основан на том факте, что
$HOME
не содержит пробелов, табуляции или новых строк.)источник