Ich brauche des öfteren Schleifen in der Art:
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">for i in `seq 1 27 1100`
do test $i -le 9 && i=0$i
test $i -le 99 && i=0$i
test $i -le 999 && i=0$i
echo $i
done</font><hr></pre></blockquote>
Das funktioniert zwar, wie es soll, ist aber in einem Punkt unschön: Ich brauche drei Zeilen, nur um ausreichend führende Nullen vor die Variable zu hängen. Gibt es da keinen einfacheren Weg?
Führende Nullen in Schleifenvariablen
Re: Führende Nullen in Schleifenvariablen
Hi Sascha,
versuch's mal damit:
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
for i in `seq 1 27 1100`
do
i=`printf %0.4d $i`
echo $i
done
</font><hr></pre></blockquote>
Sollte klappen.
Gruß,
nano
versuch's mal damit:
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
for i in `seq 1 27 1100`
do
i=`printf %0.4d $i`
echo $i
done
</font><hr></pre></blockquote>
Sollte klappen.
Gruß,
nano
Re: Führende Nullen in Schleifenvariablen
Viel einfacher: Einfach in die Man-Page zu seq schauen und die Option -w bzw. --equal-width finden.<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">for i in $(seq -w 1 27 1100) ; do
echo $i
done</font><hr></pre></blockquote>Dann füllt seq die Zahlen mit führenden Nullen zu gleicher Länge auf.
Jochen
echo $i
done</font><hr></pre></blockquote>Dann füllt seq die Zahlen mit führenden Nullen zu gleicher Länge auf.
Jochen