TCH (statz) | #1, Főfasz (10466) |
1552 | #3a57 | ^ | Idézet | Thu, 21 Jan 2016 15:44:06 +01 |
94.21.*.* | *.pool.digikabel.hu |
Minthogy a múltkor, jó sok szopás árán rájöttem, hogy a csillag már alapból átad mindent a szkriptnek a UNIX shellben, így végül sikerült kiókumlálnom, hogy mifaszt lehet ezzel csinálni: argumentumok száma mínusz N és így lehet több paramétert átadni, ha csillag is volt köztük. Példa: faszom *.zip kecske macska túróÍgy a "kecske", "macska" és "túró" nem a 2., 3. és 4. argumentumok, hanem ismeretlen. Ha *.zip 110 volt a könyvtárban, akkor a 111., 112. és 113.-ak. (Igen.) Persze át lehet adni csillagot úgy, hogy \*.zip vagy "*.zip", de nem ez az elvárt. Mindenesetre bassza meg aki kitalálta. Az apropó az volt, hogy kellett nekem egy script ami minden CBZ-t átnevez ZIP-re, de akkor már legyen univerzális. Itt van: #!/bin/bash
IFS=$'\n'
array=( $@ )
len=${#array[@]}
x=${array[$len-2]}
y=${array[$len-1]}
let "len=len-3"
for i in $(seq 0 $len); do
f=${array[$i]}
f2=`echo $f | sed "s/$x/$y/"`
if [ "$f" != "$f2" ];
then
mv $f $f2
fi
done Lementitek, adtok neki nevet (nálam rif) a neve, oszt lehet használni:rif *.cbz cbz zipÉrtelemszerűen az első a maszk, a második, hogy mit, a harmadik, hogy mire cseréljen a fájlnevekben. De nem csak "kiterjesztést" tud cserélni: rif *kecske* kecske macskaés akkor minden "kecske"-t tartalmazó fájlnévben a "kecske" lecserélődik "macska"-ra. |