ShellScript -> Variable nur mit positivem Wert
Posted: 13. Dec 2013 7:22
Hallo zusammen,
ich möchte eine Variable mit dem Ergebnis einer Subtraktion füllen, aber so, dass dort nie eine negative Zahl drin steht. Kann man eine Variable entsprechend vorbelegen?
Hintergrund:
Ich bastele gerade an einem Script, welches alle Dateien aus einem Verzeichnis löscht, außer die 8 "jüngsten". Funktioniert auch solange min. 8 Dateien im Verzeichnis sind.
Sobald dort weniger drin sind macht mir das "tail -n$LoeAnz" Sorgen. tail zeigt auch Einträge an, wenn in der $LoeAnz ein negativer Wert drin steht. Wie kann ich der Variablen beibringen, dass ihr Wert nie kleiner als 0 sein darf?
Hat Jemand eine Idee? Sorry, falls ich auf dem Holzweg bin. Bin noch Anfänger mit der Shellprogrammierung.
Danke.
ottto
ich möchte eine Variable mit dem Ergebnis einer Subtraktion füllen, aber so, dass dort nie eine negative Zahl drin steht. Kann man eine Variable entsprechend vorbelegen?
Hintergrund:
Ich bastele gerade an einem Script, welches alle Dateien aus einem Verzeichnis löscht, außer die 8 "jüngsten". Funktioniert auch solange min. 8 Dateien im Verzeichnis sind.
Sobald dort weniger drin sind macht mir das "tail -n$LoeAnz" Sorgen. tail zeigt auch Einträge an, wenn in der $LoeAnz ein negativer Wert drin steht. Wie kann ich der Variablen beibringen, dass ihr Wert nie kleiner als 0 sein darf?
Hat Jemand eine Idee? Sorry, falls ich auf dem Holzweg bin. Bin noch Anfänger mit der Shellprogrammierung.
Danke.
ottto
Code: Select all
DatAnz=`find -type f| wc -l`
echo $DatAnz
LoeAnz=$(($DatAnz-8))
echo $LoeAnz
DatNam=`ls -tr| tail -n$LoeAnz`
if [ -n "${DatNam}" ] ; then
echo "${DatNam}"
#rm ${DatNam}
fi