[linux-audio-user] batch creation of symlinks

Emiliano Grilli emillo at libero.it
Sat Jul 8 16:28:11 EDT 2006


sabato, 08 luglio 2006 alle 22:15:23, Hans ha scritto:
> Hello everyone,
> 
> Maybe not entirely related to music, so forgive me for that. I have been 
> busy with the following problem for sometime now and I can't seem to 
> figure it out.
> 
> I want to batch create symlinks in the main directory, of all the files 
> in subdirectories. E.g.
> 
> $ls
> dir1
> dir2
> dir3
> file1.mp3 -> .dir1/file1.mp3
> file2.mp3 -> .dir1/file2.mp3
> file3.mp3 -> .dir2/file3.mp3
> file4.mp3 -> .dir2/file4.mp3
> file5.mp3 -> .dir3/file5.mp3
> file6.mp3 -> .dir3/file6.mp3
> 
> I tried various shell thingies like:
> 
> for i in *.mp3; do ln -s --target-directory=../ $i $i; done
> 
> in the subdir, or
> 
> for i in ./dir1/*.mp3; do ln -s $i $i;done

This one works for me:

for i in `ls dir1/*.mp3`; do ln -s $i `basename $i`; done

> with various variations, but it seems impossible to do it this way. What 
> is the right way to go about this? I know very little Python and some 
> bash scripting. I want to figure the solution out myself, so any 
> suggestions/hints related to Python/bash are more than welcome.
> 
> Cheers,
> 
> Hans

HTH

Ciao
-- 
Emiliano Grilli
Linux user #209089 
http://www.emillo.net



More information about the Linux-audio-user mailing list