[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 7z command works fine on command line but not in script





Le 19.02.2014 09:53, Scott Ferguson a écrit :
On 19/02/14 19:47, berenger.morel@neutralite.org wrote:
Hello.

I made a script to extract music from a jamendo archive, but for a
reason I do not know, 7z does not accept the command line. I also echoed it, to be able to know what it tries to run, and it works fine when ran
on command line.

Here is the script:

#!/bin/sh

for i in *.zip;
do
    artiste=`echo $i|cut -f1 -d-|sed -e 's/^ *//g' -e 's/ *$//g'`
    album=`echo $i|cut -f2 -d-|sed -e 's/^ *//g' -e 's/ *$//g'`
    mkdir "$artiste/$album" -p
    7z x \"$i\" -o\"$artiste/$album\" || rmdir "$artiste/$album" -p
    echo 7z x \"$i\" -o\"$artiste/$album\"
done

With, for example, this archive:
http://www.jamendo.com/fr/list/a69778/monument, the folders are
correctly created, but it prints:
Error: Incorrect command line
7z x "Shearer - Monument - a69778 --- Jamendo - MP3 VBR 192k.zip"
-o"Shearer/Monument"

Do someone knows what I am doing wrong?



Maybe passing "-" without a recognised qualifier (after the
$artiste/$album\) ??

Kind regards

It does not change anything.

I have some "progress", when I do this:
7z x "\'$i\'" -o"\'$artiste/$album\'"
instead of
7z x \"$i\" -o\"$artiste/$album\"

But the the error become "there is no such archive". I wonder if the easier would not be to try another unarchiver...


Reply to: