Pro-Linux.de

Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 21. Nov 2018 3:25

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: ls in array
BeitragVerfasst: 20. Aug 2007 14:43 
Offline

Registriert: 09. Sep 2004 15:00
Beiträge: 176
Hallo,
ich möchte in einem Shell-Script ein array mit der Ausgabe eines Kommandos füllen.
Wie bekomme ich z.B. die Dateinamen "ls" in ein Array oder eine Variable????

Danke.
ottto


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21. Aug 2007 10:40 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Was willst du erreichen? Ich frage das, weil es in Shellscripts üblicherweise die komplizierteste Methode ist, erstmal alle Daten in Variablen zu speichern, und dann daraufhin irgendetwas zu tun.

Das hängt damit zusammen, dass man zum Parsen der Ausgabe eines Kommandos üblicherweise eine Pipeline verwenden muss, und damit das zurechtgemachte Ergebnis schlecht wieder zurück in den die Pipeline aufrufenden Shellprozess bekommt.

Deshalb ist es günstiger, die bezweckten Aktionen gleich in der Pipeline zu machen.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 9:28 
Offline

Registriert: 09. Sep 2004 15:00
Beiträge: 176
Hallo Janka,
vielen Dank für die Antwort.
An dem Rechner hängt ein Bandwechsler zur Datensicherung mit spezieller Software.
Ich bekomme mit einem Befehl eine Liste von entsprechenden Bandnamen angezeigt.
Jetzt muss mit jedem Bandnamen der gleiche Befehl abgesetzt werden.


Lösung:
die Ausgabe wird in eine /tmp/Datei geschrieben. Im nächsten Schritt wird dann die Datei zeilenweise in einer for-Schleife gelesen und der Befehl zusammengesetz. Funktioniert.

Schellscriptneuling ottto


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 13:28 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Code:
gibmirdieliste | while read BAND
do
  echo "Dies ist der Befehl für Band $BAND"
done
Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 23. Aug 2007 14:33 
Offline

Registriert: 09. Sep 2004 15:00
Beiträge: 176
Hallo Janka,
bin begeistert von Deiner Lösung.

Danke.
ottto


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de