PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shellscript mit User Variable



Spock
04-06-2003, 08:18
Hallo,

ich habe eine Frage. Ich möchte bei meinem Script (wird als root ausgeführt) für jeden Benutzer unter /home/benutzername/ ein Dokumenten Verzeichnis erstellen. Da ich aber nicht weiß welche Benutzer eingetragen sind auf jeder Linuxmaschine dachte ich an einen Befehl wie

mkdir /home/{user}/dokumente

allerdings klappt das alles nicht so recht. Hat jemand einen Tipp ?

spike
04-06-2003, 08:39
mach doch mit ner for schleife

for user_dir in $(ls -d /home/*) ; do
mkdir -m 755 ${user_dir}/dokumente || echo "Kann ${user_dir}/dokumente nicht anlengen"
chown $(basename ${user_dir}).users ${user_dir}/dokumente || echo "Kann ${user_dir}/dokumente nicht $(basename ${user_dir}.users zuweisen"
done



sollte eigentlich klappen ist aber nicht getestet.
Allerdings muss dann der Username gleich dem Verzeichnisnamen unter home sein sonst klappt das mit dem Eigentümer andern nicht.

Das solltest Du auf jeden fall mal prüfen.

Grüße, Spike

Spock
04-06-2003, 09:43
Hallo,

hab tausend dank

for user_dir in $(ls -d /home/*) ; do
mkdir -m 755 ${user_dir}/dokumente || echo "Kann ${user_dir}/dokumente nicht anlengen"


die Zeile reichte mir sogar schon und das funktioniert super !

In meinem etwas "dünnen" Shell Script Programmierungsbuch stehen leider nicht solche Dinge drinn wie du gerade geschrieben hast. Gibt es vielleicht ein gutes Buch welches du empfehlen könntest ?

spike
04-06-2003, 10:33
Unix in a nutshell von ora eignet sich ganz gut zum Nachschlagen ist aber kein Buch zum lernen für Anfänger

ansonsten einfach mal im Netz gucken, da gibt es bestimmt ein paar Howtoos online

Der Vollständigkeit halber sei erwähnt das man in der sh statt $() den Backtick benutzen muss ``. Das geht dann aber auch in der ksh oder bash

Grüße, Spike

phate
04-06-2003, 14:30
Hi Spock,

guggst Du hier

http://www.mrunix.de/forums/showthread.php?threadid=31592

Das Buch kann ich nur wärmstens empfehlen. Ist auf jeden Fall um Längen besser als das aus der "Jetzt lerne ich" Reihe.

gruss,

phate