Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.

PQ Discord Server: #planetquake                                                                                                                                         Spenden? Hier entlang!

shell script: tmp. dateizugriff regeln ?

GNU/Linux-, *BSD- und Fricklerforum
Antworten
RuRu
Slash
Slash
Beiträge: 681
Registriert: Aug 2000
Wohnort: nähe FFM

shell script: tmp. dateizugriff regeln ?

Beitrag von RuRu »

hi

ich habe ein shellscript geschrieben, das die debug ausgaben eines progs. in eine log datei packt.

problem ist nur, wenn von mehreren rechnern das prog aufgerufen wird, ist das schlecht mit der übersicht im log :)

gibt es eine möglichkeit die logdatei nach dem ersten aufruf zu sperren, so dass nur "einer" reinschreiben kann und andere inputs am besten noch gepuffert, danach reingeschoben werden?

ich hoffe mal, dass das geht

gruss und thx im vorraus
BildBild

formerly known as Dusty :)

Bild sno!
edgewalker

Beitrag von edgewalker »

Aus einem Shellskript heraus AFAIK nur schwer. Aber versuch's mal mit man mktemp. Vielleicht am besten auch noch $HOSTNAME in den Namen aufnehmen?
Chawki

Beitrag von Chawki »

Man kann auch ein mandatory file lock nehmen:

http://web.systhug.com/kernel-lock/

Ich habe das bisher nur mit C-Programmen gemacht.
edgewalker

Beitrag von edgewalker »

Original erstellt von nobody0
Ich habe das bisher nur mit C-Programmen gemacht.
Und da ist auch der Haken, du Honk. :)

Bei einem Shellscript hantiert man eben nicht mit einem offenen Filehandle herum.
Chawki

Beitrag von Chawki »

Man kann ja die C-Programme von einem Shellskript aufrufen; das mache ich meistens so ;)
edgewalker

Beitrag von edgewalker »

Und wenn das C-Programm endet, ist der Lock wieder weg.. :rolleyes:
Chawki

Beitrag von Chawki »

Das müßte man testen, aber man kann das Programm ja im Hintergrund weiterlaufen lassen, bis man es am Ende killt. Natürlich wäre das Beste wohl das Skript nur zum Starten des C-Programms zu nehmen.
edgewalker

Beitrag von edgewalker »

Nur dumm, dass bei einem mandatory lock dass Skript dann mit der Datei nichts mehr anstellen kann..
Chawki

Beitrag von Chawki »

Ja, eigentlich muß man da ein C-Programm nehmen, aber eigentlich sollte man generell ein C-Programm nehmen, meine ich :rolleyes:
edgewalker

Beitrag von edgewalker »

Du schreibst also keine Shellskripte?
Chawki

Beitrag von Chawki »

Doch, aber häufiger C-Programme, auch wegen der Portabilität, Performance und Skalierbarkeit mittels Pthreads.

----------------------------------------------------------
# define mc_OFFSETOF(a, b) ((int)(&(((a*)(0))->b)))
# define mc_NIBBLE_TO_TEXT(n) ("0123456789ABCDEF"[ n ])
# define mc_CAST(new_type,old_object) (*((new_type *)(&(old_object))))
# define mc_V_SUBROUTINE(VECTOR) (*(void(**)(void))(VECTOR))()
# define mc_ISNAN(x) ((x) != (x))
# ifndef NAN
# define NAN (0./0.)
# endif
# ifndef INF
# define INF (1./0.)
# endif
# define mc_ADVICE if (argc > 1 && 0 == strncmp (argv[1], "-advice", 10) ) \
{ \
(void)printf ("Don't Panic!\n"); \
exit (42); \
} /* 42: The meaning of life, the universe, and everything. */
itaris

Beitrag von itaris »

Bla bla bla ...
RuRu
Slash
Slash
Beiträge: 681
Registriert: Aug 2000
Wohnort: nähe FFM

Beitrag von RuRu »

so ich habs nu anders gemacht ... das prog loggt in verschiedene tmp logs beim aufruf und die werden dann wenn sie fertig sind "automatisch" in das finale log gepackt und gelöscht

gelöst mit perl

danke trotzdem :)
BildBild

formerly known as Dusty :)

Bild sno!
Antworten