hannhimhe
2010-09-26, 15:28
Har du, liksom jag, tröttnat på att bläddra runt bland flera mountade enheter för att hitta den där filmen frugan vill se på?
Problemet är ju det att man inte kan mounta flera enheter till samma mountpoint. Jag tröttnade på att leta runt bland 14 olika enheter för att hitta 'den där filmen' och gjorde något åt det. Ett väldresserat korn shell är att föredra men det jag lyckades få in i AzBoxen drabbas av scopingproblem från helvetet så jag portade hela härligheten till bash. Detta medförde att mappnamn som innehåller mellanslag får hela rasket att balla ur fullständigt.
#! /bin/bash
mountpoint="/DATA/download/ALL_AND_ALL/"
dirarray[0]="/DATA/download/MOUNT_1/"
dirarray[1]="/DATA/download/MOUNT_2/"
if [[ $1 = "build" ]];then
dircount=0
cnt=0
while [ $dircount -lt ${#dirarray } ]
do
cd "${dirarray[$dircount]}"
echo "Changed dir to: ${dirarray[$dircount]}"
Dirlist=$(ls -d */)
for line in $Dirlist ; do
echo "$line"
myarray[$cnt]="$line"
export cnt=$(($cnt+1))
done
ncnt=0
while [ $ncnt -lt ${#myarray } ]
do
ln -s "${dirarray[$dircount]}${myarray[$ncnt]}" "$mountpoint"
ncnt=$(($ncnt+1))
done
dircount=$(($dircount+1))
done
else
echo "Hello"
fi
ALL_AND_ALL erbjuds AS IS, helt utan garantier och support. Detta är ett första utkast. Jag kommer säkerligen att uppdatera med tiden.
Problemet är ju det att man inte kan mounta flera enheter till samma mountpoint. Jag tröttnade på att leta runt bland 14 olika enheter för att hitta 'den där filmen' och gjorde något åt det. Ett väldresserat korn shell är att föredra men det jag lyckades få in i AzBoxen drabbas av scopingproblem från helvetet så jag portade hela härligheten till bash. Detta medförde att mappnamn som innehåller mellanslag får hela rasket att balla ur fullständigt.
#! /bin/bash
mountpoint="/DATA/download/ALL_AND_ALL/"
dirarray[0]="/DATA/download/MOUNT_1/"
dirarray[1]="/DATA/download/MOUNT_2/"
if [[ $1 = "build" ]];then
dircount=0
cnt=0
while [ $dircount -lt ${#dirarray } ]
do
cd "${dirarray[$dircount]}"
echo "Changed dir to: ${dirarray[$dircount]}"
Dirlist=$(ls -d */)
for line in $Dirlist ; do
echo "$line"
myarray[$cnt]="$line"
export cnt=$(($cnt+1))
done
ncnt=0
while [ $ncnt -lt ${#myarray } ]
do
ln -s "${dirarray[$dircount]}${myarray[$ncnt]}" "$mountpoint"
ncnt=$(($ncnt+1))
done
dircount=$(($dircount+1))
done
else
echo "Hello"
fi
ALL_AND_ALL erbjuds AS IS, helt utan garantier och support. Detta är ett första utkast. Jag kommer säkerligen att uppdatera med tiden.