Ausgabe umlenken

B

Banana

Grünschnabel
Hallo Zusammen!
Ich habe folgendes Problem.
Ich möchte die Ausgabe von einer Reihe von Befehlen in eine Datei umleiten.
doch leider klappt das bei mir nicht.

Ich habe im meinem Buch und bei google zwei Varianten gefunden zum einen:

Befehl > Dateiname

und exec >Dateiname

ich habe beide Befehle ausprobiert.

Ich habe selbst probiert den Inhalt vom Befehl ls umzuleiten also...

ls >liste.txt

selbst das funktioniert bei mir auf dem Rechner nicht.

Weiß einer wodran das vielleicht liegen könnte??

Gruß Banana
 
ls >liste.txt

selbst das funktioniert bei mir auf dem Rechner nicht.

Weiß einer wodran das vielleicht liegen könnte??
"funzt nicht" ist leider keine qualifizierte fehlerbeschreibung. wenn du bitte mal den konsolentext einer "sitzung" posten könntest, in der du den befehl versuchst (ls > liste.txt), denn der sollte eigentlich funktionieren. wo wir beim thema wären..

also bitte fehlermeldung posten.

außerdem schadet es auch nie die verwendete shell + version anzugeben..
 
ich bekam ja leider keine Fehlermeldung!

Aber ich habe den Fehler schon herausgefunden, ich hatte ein Problem mit meinem Speicher, der war zuvoll ;-)

Aber vielen Dank für die schnelle Antwort
 
Habe auch mal eine Frage zum Thema umlenken.
Kann ich die Ausgabe einer Funktion/Skript/Programm so umlenken dass es sowohl auf dem Bildschirm geschieht als auch in einer Datei?

Mein Problem ist, ich habe ein Startskript welches eine Funktion als ein bestimmter User "ldap" startet. Gleichzeitig soll die Ausgabe geloggt werden
Code:
su -c "/opt/..../start_slapd" - ldap >>$LOGFILE

Wenn man dieses Skript als root startet oder beim Hochfahren funktioniert das auch. Wenn ich das Skript aber als irgend ein anderer User oder auch als user ldap hochfahre, fragt er nach dem passwort des useres ldap. Diese Abfrage bringt er aber dummerweise nicht auf dem Bildschirm sondern im Logfile so dass der Startprozess an der stelle hängt und nicht weiter geht.
Ich könnte jetzt nat. das Passwort über eine Pipe direkt in der startzeile übergeben - aber das möchte ich ja eigentlich nicht.
Deshalb ist es möglich dass mein startskript alles auf dem Bildschirm ausgibt und zusätzlich in das logfile umlenkt?
 
ein Klempner nimmt ein T-Stück, Unix-Leute nehmen tee (man tee):
Code:
ls | tee test.txt
gibt den ls auf dem Bildschirm und in die Datei test.txt aus. Je nachdem was du tun willst must du dem tee Optionen mitgeben (für append etc.). Und denk an die Standard-Fehlerausgabe, die du ggf. separat behandeln willst.
 
wie lenke ich den da sowohl den kanal 1 als auch den kanal 2 in eine logdatei um?
sprich der alte befehle
Code:
 $STARTSCRIPT 2>>$LOGFILE 1>>$LOGFILE
mit tee benutzen.
also wenn ich nur
Code:
 $STARTSCRIPT | tee -a $LOGFILE
loggt nicht alles mit!
 
Code:
cat blabla.txt 2>&1 | tee test.txt
lenkt Ausgabakanal 2 auf Ausgabekanal 1 um und pipet dann Ausgabekanal 1 auf tee
 
ach ja, *andenkopfschlag* manchmal würde nachdenken helfen :)

ich danke dir yai
 

Ähnliche Themen

Grub Boot Menü - Windows 10 hinzufügen

Lokale GUI-Programme mit php-cgi starten

Fehlermeldung beim Auslesen einer Exceldatei

pacpl installiert... wie konvertiere ich

kleiner nfs server

Zurück
Oben