Hallo,
zwar hatte ich das Thema schon in einer anderen Rubrik begonnen - der Lösungsvorschlag dort hat aber auch nicht funktioniert.
Folgendes "Problem": Wie kann ich beim Ausführen eines Shellskripts diesem einen oder mehrere Parameter übergeben?
Das Skript sieht derzeit so aus:
#!/bin/bash
#Skript
sudo /sbin/befehl $PARAM
#ENDE
Zwar wird der Befehl "sudo /sbin/befehl" ausgeführt aber die oder der Parameter werden nicht übergeben (weswegen sich das Prog beschwert).
Woran liegts?
Vielen Dank,
Gruss,
Alex
bash Skript mit Parametern
Re: bash Skript mit Parametern
sorry, ich hab vorhin gepennt. die parameter werden numeriert. du musst also $1 schreiben: sudo /sbin/befehl $1
in deinem skript ist $PARAM nicht definiert.
in deinem skript ist $PARAM nicht definiert.
Re: bash Skript mit Parametern
Das Skript sieht also jetzt so aus:
#!/bin/bash
#Skript
sudo /sbin/befehl $1
und funktioniert aber trotzdem nicht. Hmmmm.... Was hab ich vergessen oder nicht bedacht?
Der Befehl wird ausgeführt, er beschwert sich aber immer noch, dass die Optionen fehlen.
Hmmm..
Gruss,
Alex
#!/bin/bash
#Skript
sudo /sbin/befehl $1
und funktioniert aber trotzdem nicht. Hmmmm.... Was hab ich vergessen oder nicht bedacht?
Der Befehl wird ausgeführt, er beschwert sich aber immer noch, dass die Optionen fehlen.
Hmmm..
Gruss,
Alex
Re: bash Skript mit Parametern
in der jetzigen fassung wird nur ein parameter an sudo weitergegeben, alle weiteren (falls vorhanden) werden abgeschnitten.
$1 bezeichnet den ersten parameter, $2 den zweiten usw. $# ist die zahl der übergebenen parameter. $* ist ein platzhalter für *alle* parameter, das wär in deinem fall wohl das richtige.
falls es immer noch nicht klappt: bau testweise "echo"-zeilen ein, zb "sudo /sbin/befehl $*". so siehst du, mit welchen parametern sudo wirklich aufgerufen wird.
$1 bezeichnet den ersten parameter, $2 den zweiten usw. $# ist die zahl der übergebenen parameter. $* ist ein platzhalter für *alle* parameter, das wär in deinem fall wohl das richtige.
falls es immer noch nicht klappt: bau testweise "echo"-zeilen ein, zb "sudo /sbin/befehl $*". so siehst du, mit welchen parametern sudo wirklich aufgerufen wird.
Re: bash Skript mit Parametern
Das Sternchen brachte die Lösung.
Super! Vielen Dank,
Gruss,
Alex
Super! Vielen Dank,
Gruss,
Alex