Kodesemu
ln -s $HOME/file $HOME/Documents/ $HOME/Desktop/
tempat saya ingin membuat symlink dari sumber ke dua tujuan. Mungkin, moreutils
dan pee
.
Bagaimana Anda bisa membuat banyak symlink dari satu sumber?
Kodesemu
ln -s $HOME/file $HOME/Documents/ $HOME/Desktop/
tempat saya ingin membuat symlink dari sumber ke dua tujuan. Mungkin, moreutils
dan pee
.
Bagaimana Anda bisa membuat banyak symlink dari satu sumber?
Jawaban:
Anda tidak dapat melakukan ini dengan satu permintaan ln
, tetapi Anda dapat mengulangi semua tujuan yang diperlukan:
$ for i in "$HOME/Documents/" "$HOME/Desktop/"; do ln -s "$HOME/file" "$i"; done
Jika sudah, gnu parallel
Anda bisa mencobanya
parallel ln -s /path/file {} ::: /path/dest1 /path/dest2 /path/dest3
atau, untuk menghubungkan berbagai target ke (yang sama) beberapa tujuan
parallel ln -s {1} {2} ::: /path/file1 /path/file2 ::: /path/dest1 /path/dest2
parallel
perintah dari parallel
paket dan bukan yang dari moreutils
.
Ini tidak kurang dari dua ln -s
doa terpisah :
echo $HOME/Documents/ $HOME/Desktop/ | xargs -n 1 ln -s $HOME/file
tetapi itu hanya berfungsi untuk path absolut (karena tautan simbolik ditafsirkan relatif terhadap direktori induknya, kecuali jika itu absolut).
(Biaya relatif turun tentu saja karena jumlah tautan naik. Juga, cuplikan ini bergantung pada fakta yang $HOME
tidak mengandung spasi, tab, atau baris baru.)