[gelöst] Auslesen von Steuerungsinformation für ein Skript
[gelöst] Auslesen von Steuerungsinformation für ein Skript
Ich versuche aus einem Skript unter /usr/local/sbin auf eine Datei in /etc zuzugreifen um Text auszulesen, der zur Steuerung des Skripts dienen soll. Beim Zugriff auf die Datei kommt dann die Fehlermeldung: Keine Berechtigung.
Skript und Steuerdatei haben gleichen Owner und gleiche Gruppe.
Sowas muss doch gehen. Aber wie?
Mfg rh
Skript und Steuerdatei haben gleichen Owner und gleiche Gruppe.
Sowas muss doch gehen. Aber wie?
Mfg rh
Zuletzt geändert von rhHeini am 08.11.2009 20:51:01, insgesamt 1-mal geändert.
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Welche Rechte hat denn der User, unter dem du das Skript ausführst?
Oh, yeah!
Re: Auslesen von Steuerungsinformation für ein bash-Skript
root, sollte also gehen.
Mfg rh
Mfg rh
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Wie versuchst Du die Variablen aus dem anderen Skript einzubinden? bzw. ?
Ansonsten wäre vielleicht ein Minimal-Beispiel ganz nett, damit man das Problem besser nachvollziehen kann.
Code: Alles auswählen
. anderesScript
Code: Alles auswählen
source anderesScript
Ansonsten wäre vielleicht ein Minimal-Beispiel ganz nett, damit man das Problem besser nachvollziehen kann.
MfG GoKi
:wq
:wq
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Also ganz konkret:
Ausschnitt aus dem Skript in /usr/local/sbin (komprimiert, also ohne Kommentare):
Die beiden echo's sind noch ok, über den cat-Befehl stolpert das Skript und meldet:
Ich schreibe mit Notepad++ auf W2k, das Skript wird per WinSCP auf den Server kopiert auf dem es laufen soll, und über PuTTy (mit root eingeloggt) angeschmissen.
Die autoshutdown.conf hat 666-Rechte, Owner und Group sind root. Liegt auch nicht an der Pipe, hab die auch schon mal auskommentiert. Warum geht das nicht?
Mfg rh
Ausschnitt aus dem Skript in /usr/local/sbin (komprimiert, also ohne Kommentare):
Code: Alles auswählen
conffile='/etc/autoshutdown.conf'
hostfile='/etc/autoshutdown.hosts'
echo $conffile
echo $hostfile
log=cat $conffile | grep log= | cut -f 2 -d '"'
Code: Alles auswählen
/usr/local/sbin/autoshutdown.sh: line 32: /etc/autoshutdown.conf: Keine Berechtigung
Die autoshutdown.conf hat 666-Rechte, Owner und Group sind root. Liegt auch nicht an der Pipe, hab die auch schon mal auskommentiert. Warum geht das nicht?
Mfg rh
Re: Auslesen von Steuerungsinformation für ein bash-Skript
falsche Syntax ( außer du würdest 'cat' der Variablen 'log' zuweisen und das Kommando '$conffile | grep ...' ausführen wollen):
Gruß
gms
richtig wäre z.B:rhHeini hat geschrieben: log=cat $conffile | grep log= | cut -f 2 -d '"'
Code: Alles auswählen
log=$(grep log= "$conffile" | cut -f 2 -d '"')
gms
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Danke, das wars, hatte wegen einem Syntaxfehler die als Klamern dienenden "`" weggelassen. Die Vorlage vom fli4l muss wohl doch mehr poliert werden als ich dachte. Aber ich werd mich da schon durchbeissen.
Schönes Wochenende, rh
Schönes Wochenende, rh
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Wäre es nicht einfacher das Skript direkt auf dem Server über Putty zu schreiben?rhHeini hat geschrieben: Ich schreibe mit Notepad++ auf W2k, das Skript wird per WinSCP auf den Server kopiert auf dem es laufen soll, und über PuTTy (mit root eingeloggt) angeschmissen.
Oh, yeah!
Re: Auslesen von Steuerungsinformation für ein bash-Skript
Nein.
Die Quellen (die Dateien meines fli4l-Routers) sind eh auf dem PC. Ausserdem ist das Zielsystem ein reiner Server ohne X11. Müsste dort mit nano arbeiten, was mir für dieses Projekt zu unkomfortabel ist. nano ist ok für kleine Änderungen.
Geht so wunderbar.
Mfg rh
Die Quellen (die Dateien meines fli4l-Routers) sind eh auf dem PC. Ausserdem ist das Zielsystem ein reiner Server ohne X11. Müsste dort mit nano arbeiten, was mir für dieses Projekt zu unkomfortabel ist. nano ist ok für kleine Änderungen.
Geht so wunderbar.
Mfg rh