expertenaustausch > linux.debian.user.german

Michael Heerdegen (01.05.2020, 05:40)
Hallo,

ich habe mir in Emacs, insbesondere für dired, so ne Art "Öffnen mit"
gebaut (natürlich viel besser!). Die Sachen starte ich asynchron und
auch mit nohup, falls Emacs mal abstürzt oder ich's neustarten muß.

Leider ist dann immer alles "voll mit nohup.out's". Ich hätte gern daß
alles in ~/nohup.out landet. Oder meinetwegen auch in /dev/null.

Wenn man nach der Anforderung internet-sucht, finde ich nur Vorschläge
die mit File-Deskriptoren-Umleitungen arbeiten. Dann kommt aber kein
output mehr im Emacs an, sondern immer im File. Ich möchte den output
standardmäßig immer im Emacs haben, außer im Fall es gibt ihn nicht
mehr.

Alternativen zu nohup scheinen alle eher von der Sorte "irgendjemand hat
mal vor x Jahren bei github was hochgeladen" zu sein. Auf sowas möchte
ich meinen Workflow nun auch nicht aufbauen. Aber...das kann doch
eigentlich nicht so schwer sein?

Was würdet ihr empfehlen?

Besten Dank im Voraus,

Micha.
David Haller (01.05.2020, 17:20)
Hallo,

Am Fri, 01 May 2020, Michael Heerdegen schrieb:
>Hallo,
>ich habe mir in Emacs, insbesondere für dired, so ne Art "Öffnen mit"
>gebaut (natürlich viel besser!). Die Sachen starte ich asynchron und
>auch mit nohup, falls Emacs mal abstürzt oder ich's neustarten muß.
>Leider ist dann immer alles "voll mit nohup.out's". Ich hätte gern daß
>alles in ~/nohup.out landet. Oder meinetwegen auch in /dev/null. [..]
>Was würdet ihr empfehlen?


RTFHelp:

$ nohup --help
[..]
If standard input is a terminal, redirect it from /dev/null.
If standard output is a terminal, append output to `nohup.out' if possible,
`$HOME/nohup.out' otherwise.
If standard error is a terminal, redirect it to standard output.
To save output to FILE, use `nohup COMMAND > FILE'.
[..]

HTH,
-dnh
Michael Heerdegen (02.05.2020, 06:10)
David Haller <lists> writes:

> RTFHelp:


Ja, hab ich natülich.

> HTH,


Weiß nicht, meine Frage war falsch gestellt.

Anscheinend hängt das Resultat vom Programm ab, oder ich versteh' was
nicht.

Bei fast allen Programmen landet output im Emacs wie ich das will, aber
ein "nohup rsync ..." schreibt alles komplett ins File. Ich weiß nicht
warum und ob es noch weitere dieser Fälle gibt. Ich hab meinen Code
erstmal so angepaßt daß rsync ohne nohup gestartet wird.

Danke,

Micha.
Marc Haber (02.05.2020, 08:40)
On Sat, 02 May 2020 06:02:49 +0200, Michael Heerdegen
<michael_heerdegen> wrote:
>Anscheinend hängt das Resultat vom Programm ab, oder ich versteh' was
>nicht.


Der Unterschied zwischen stdout und stderr ist Dir bekannt?

nohup behandelt die beiden output streams unterschiedlich, das ist
auch in der manpage erklärt.

Grüße
Marc
Michael Heerdegen (03.05.2020, 03:10)
Marc Haber <mh+debian-user-german> writes:

> nohup behandelt die beiden output streams unterschiedlich, das ist
> auch in der manpage erklärt.


Das war eine meiner Vermutungen, ja. Aber schreibt rsync nur nach
stderr? (ja, ich hab die manpage überflogen, ist mir trotzdem nich klar)

Und will ich also am Ende sowas haben?:

#!/bin/bash
# Avoid creation of annoying nohup.out everywhere
/usr/bin/nohup "$@" 2> "$HOME/nohup.out"

Danke,

Micha.
Michael Heerdegen (10.05.2020, 03:40)
Michael Heerdegen <michael_heerdegen> writes:

> Das war eine meiner Vermutungen, ja. Aber schreibt rsync nur nach
> stderr? (ja, ich hab die manpage überflogen, ist mir trotzdem nich klar)
> Und will ich also am Ende sowas haben?:
> #!/bin/bash
> # Avoid creation of annoying nohup.out everywhere
> /usr/bin/nohup "$@" 2> "$HOME/nohup.out"


Nö, krieg immer noch nohup.out Files damit, und zwar auch wenn Emacs
nicht abstürzt. Sorry, bin zu dumm, mag mir nochmal jemand helfen? Nur
manpages lesen hilft mir leider nicht, da ich einige Hintergründe nicht
ganz überblicke. Z.B was ist der standard output für nohup wenn ich es
ausm Emacs heraus starte? Was passiert mit dem standard output wenn ich
Emacs dann beende und nohup den Prozeß fortführt - oder gibts dann
keinen mehr?

Danke,

Micha.
Ulf Volmer (10.05.2020, 10:30)
On 10.05.20 03:30, Michael Heerdegen wrote:
> Michael Heerdegen <michael_heerdegen> writes:


>> Und will ich also am Ende sowas haben?:
>> #!/bin/bash
>> # Avoid creation of annoying nohup.out everywhere
>> /usr/bin/nohup "$@" 2> "$HOME/nohup.out"


Du möchtest vermutlich Standard- Out auch umleiten. Also

/usr/bin/nohup "$@" > "$HOME/nohup.out" 2>&1

> Nö, krieg immer noch nohup.out Files damit, und zwar auch wenn Emacs
> nicht abstürzt. Sorry, bin zu dumm, mag mir nochmal jemand helfen? Nur
> manpages lesen hilft mir leider nicht, da ich einige Hintergründe nicht
> ganz überblicke. Z.B was ist der standard output für nohup wenn ich es
> ausm Emacs heraus starte? Was passiert mit dem standard output wenn ich
> Emacs dann beende und nohup den Prozeß fortführt - oder gibts dann
> keinen mehr?


Emacs wird den Prozess mit seinem jeweiligen Working Dir starten.
Und nohup legt dann per Default in eben diesem die nohup.out mit Std-
Out und Std- Err. an.

Viele Grüße
Ulf
Christian Knoke (10.05.2020, 15:10)
Michael Heerdegen schrieb am 10. Mai um 03:30 Uhr:
> Michael Heerdegen <michael_heerdegen> writes:


> Nö, krieg immer noch nohup.out Files damit, und zwar auch wenn Emacs
> nicht abstürzt. Sorry, bin zu dumm, mag mir nochmal jemand helfen? Nur
> manpages lesen hilft mir leider nicht, da ich einige Hintergründe nicht
> ganz überblicke. Z.B was ist der standard output für nohup wenn ich es
> ausm Emacs heraus starte? Was passiert mit dem standard output wenn ich
> Emacs dann beende und nohup den Prozeß fortführt - oder gibts dann
> keinen mehr?


Möglicherweise wirst du mit screen glücklicher.

Gruß
Christian
Michael Heerdegen (11.05.2020, 07:00)
Christian Knoke <chrisk> writes:

> Möglicherweise wirst du mit screen glücklicher.


Hmm, ich nutze Emacs mit graphischen (gtk) Frontend. Da kann ich screen
wahrscheinlich nicht zwischenschalten, oder?

Warum sehe ich screen eigentlich nicht in Debian? Immerhin heißt es ja
"Gnu screen". Entweder heißt das Paket ganz anders, oder es ist nicht
(mehr?) offiziell drin (also im repo, mein ich).

Danke,

Micha.
Michael Heerdegen (11.05.2020, 07:10)
Ulf Volmer <u.volmer> writes:

> Du möchtest vermutlich Standard- Out auch umleiten. Also
> /usr/bin/nohup "$@" > "$HOME/nohup.out" 2>&1


Danke. Aber: na ja - dann landet wieder sämtlicher output gleich im
File, und ich seh nix mehr im Emacs.

Beste Grüße,

Michael.
Robert Pommrich (11.05.2020, 07:40)
>-------- Original Message --------
> From: Michael Heerdegen <michael_heerdegen>
> Sent: 11 May 2020 07:06:41 CEST
> To: debian-user-german
> Subject: Re: nohup ohne verstreute nohup.out files
> Ulf Volmer <u.volmer> writes:
> Danke. Aber: na ja - dann landet wieder sämtlicher output gleichim
> File, und ich seh nix mehr im Emacs.


Vielleicht ist obige Umleitung in Kombination mit
auto-revert-mode oder global-auto-revert-mode was für Dich.
Michael Heerdegen (11.05.2020, 08:00)
Robert Pommrich <leprovokateur> writes:

> >> /usr/bin/nohup "$@" > "$HOME/nohup.out" 2>&1

> > Danke. Aber: na ja - dann landet wieder sämtlicher output gleich im
> > File, und ich seh nix mehr im Emacs.

> Vielleicht ist obige Umleitung in Kombination mit
> auto-revert-mode oder global-auto-revert-mode was für Dich.


Ähm - guten Morgen!

Also, wahrscheinlich eher nicht, weil: dann sind ja alle outputs
gemerged in dem einen nohup.out File, oder es wird ständig
überschrieben. Da ich ja alles aus Emacs heraus starte, wird das wohl
eher unschön. Bei mir bekommt jedes gestartete Programm nen eigenen
angenehm benannten buffer zugeordnet (falls es denn output gibt), das
ist sehr übersichtlich.

Michael.
Michael Heerdegen (11.05.2020, 08:20)
Hilmar Preuße <hille42> writes:

> Am 11.05.2020 um 06:54 teilte Michael Heerdegen mit:
> > Warum sehe ich screen eigentlich nicht in Debian? Immerhin heißt es ja
> > "Gnu screen". Entweder heißt das Paket ganz anders, oder es ist nicht
> > (mehr?) offiziell drin (also im repo, mein ich).

> hille@debian-amd64-sid:~$ apt-cache show screen


Oh weh, ich brauch echt mehr Schlaf oder sollte weniger Sachen
gleichzeitig machen. Mein Fehler - danke für den Hinweis.

Michael.
Michael Heerdegen (22.05.2020, 03:30)
Michael Heerdegen <michael_heerdegen> writes:

> Ulf Volmer <u.volmer> writes:
> > Du möchtest vermutlich Standard- Out auch umleiten. Also
> > /usr/bin/nohup "$@" > "$HOME/nohup.out" 2>&1

> Danke. Aber: na ja - dann landet wieder sämtlicher output gleich im
> File, und ich seh nix mehr im Emacs.


In Kombination mit `tee` sollte man das doch vermeiden können, oder?

Michael.
Ähnliche Themen