MisterIgo
Anmeldungsdatum: 23. April 2009
Beiträge: 947
|
Seebär schrieb: Um zu prüfen ob + wer einen Port belegt könnte man netstat verwenden. Vllt, geht es auch anders.
Der Threadersteller meint sicherlich keine Netzwerkports, sondern Audioports (ALSA?). Zumindest fallen die Programme in diesen Bereich. @dongxi: Beschreibe doch mal etwas ausführlicher, was du versuchst, mit dem Skript zu erreichen, genauer gesagt was du mit den jeweiligen Befehlen zu erreihen versuchst (wofür ist das aconnect? usw.).
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17548
Wohnort: Berlin
|
TomLu schrieb: Seebär schrieb: Diese Meta-"Diskussionen" und Nabelschauen sind im Übrigen nicht unbedingt zielführend, wie so oft in diesem Forum.
Ich kann Dir sagen, dass mir das auch total auf den Geist geht... und es liegt immer an der Unfähigkeit oder Willenlosigkeit einiger weniger Leute, sich einfach nur sachlich zu äußern und auf diffamierende Äußerungen zu verzichten.
Ich habe Dich nicht diffamiert, ich habe lediglich gesagt, dass dieser Befehl Humbug ist.
Die extreme Form ist es, etwas Zusammenhanglos als "Humbug" hinzustellen, ohne auch nur ein einzige richtigstellende Erklärung beizusteuern. Was soll dieser Sch**ss?
Das ist ja nicht Dein Thread, bei dem es um exit 0 geht, sondern es ging um 2 Befehle die auf 3 Zeilen verteilt waren. Wenn Du wissen willst, wieso es Humbug ist, kannst Du danach suchen oder einen neuen Thread öffnen.
Das ist doch genau diese penetrante Überheblichkeit, die jegliches Foren-Klima vergiftet und ständig wiederholt Konfliktauslöser ist. Stattdessen wäre es doch besser, einfach nur sachlich zu bleiben und Aussagen mit Argumenten zu widerlegen...OHNE den Gesprächspartner oder den Text zu bewerten.
Ich kann auch sagen "dysfunktional" - das bedeutet aber das Gleiche. Wenn Du so empfindlich bist, dass man Vorschläge, die Du machst, nicht auf ihre Funktionalität hin beurteilen darf, dann solltest Du sie nicht in einem öffentlichen Forum posten.
Ich bin der Meinung, dass es bei einem solchen Anfänger-Kennntnisstand überhaupt nicht darauf ankommt, ob ein abschließender exit 0 möglicherweise sinnfrei ist,
Im Gegensatz zu mir. Ich sehe nicht den Sinn, einem Anfänger erst Mist beizubringen, um es ihm später wieder auszutreiben.
Mich kotzt jedenfalls solcherart profilneurotische Besserwisserei (Humbug) (...) an.
Dann sollte ich mir vielleicht ein Vorbild an Deinem sachlichen, wenig diffamierenden Diskussionsstil nehmen. ☺
|
dongxi
(Themenstarter)
Anmeldungsdatum: 23. August 2006
Beiträge: 409
Wohnort: zuhause
|
MisterIgo schrieb: Seebär schrieb: Um zu prüfen ob + wer einen Port belegt könnte man netstat verwenden. Vllt, geht es auch anders.
Der Threadersteller meint sicherlich keine Netzwerkports, sondern Audioports (ALSA?). Zumindest fallen die Programme in diesen Bereich. @dongxi: Beschreibe doch mal etwas ausführlicher, was du versuchst, mit dem Skript zu erreichen, genauer gesagt was du mit den jeweiligen Befehlen zu erreihen versuchst (wofür ist das aconnect? usw.).
OK, was möchte ich erreichen...? Ich habe mir ein MIDI-Keyboard gekauft, mit dem ich Klang erzeugen will. Da ich also einen Synthesizer brauche und zur Zeit nichts aufnehmen möchte würde mir zum Beispiel qsynth (als GUI für FluidSynth) genügen. Irgendwie muss ich nun qsynth davon überzeugen, daß diese Signale, die via MIDI-zu-USB am USB-Port ankommen als MIDI-Signal anzusehen sind Verwenden möchte ich ALSA, da ich derzeit keine Lust habe mich mit jackd und co. rumzuschlagen. Dafür ist wiederum aconnect zuständig: gib Signal von Port a an Port b (welcher dann Fluidsynth wäre)
Nutze ich die Befehle einzeln, nacheinander, funktioniert alles, es wird qsynth gestartet, der Port "Fluidsynth" ist nach dem Start vorhanden. Gebe ich dann händisch aconnect... ein wird die Verbindung hergestellt und ich kann losklimpern. Um jetzt nicht beide Befehle einzeln eingeben zu müssen wollte ich ein Skript erstellen.
Übrigens, wenn ich qsynth via Konsole starte nimmt die Konsole derweil keine neuen Befehle an, zur Zeit starte ich also qsynth über den Anwendungsstarter und kann dann wählen, ob ich aconnect über Konsole starte oder die GUI acconectgui verwende. Was die o.gestartete Diskussion betrifft, ich bin tatsächlich überfordert...
Ich kann zwar nachlesen, daß ein korrekt beendetes Programm einen Exit-Code ausgibt und der bei korrekter Beendigung ein 0 ausgibt, aber da ich mich noch nie mit Programmierung beschäftigt habe ist mir das nur bedingt eine Hilfe. Bei Seebärs "Fire and forget" listet mir wikipedia u.a. etwas über Lenkwaffen auf. Zwar kann ich mir vorstellen was gemeint ist, aber eine Schleife?
Mein Verständnis würde mir sagen, daß solange etwas läuft bis ein Ereignis eintritt (–> der Port "FluidSynth" anwesend ist) aber wie ich das als blutiger Anfänger in Sachen Skript hinbekomme... 😳
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12801
|
dongxi schrieb:
Nutze ich die Befehle einzeln, nacheinander, funktioniert alles, es wird qsynth gestartet, der Port "Fluidsynth" ist nach dem Start vorhanden. Gebe ich dann händisch aconnect... ein wird die Verbindung hergestellt und ich kann losklimpern. Um jetzt nicht beide Befehle einzeln eingeben zu müssen wollte ich ein Skript erstellen.
Übrigens, wenn ich qsynth via Konsole starte nimmt die Konsole derweil keine neuen Befehle an, zur Zeit starte ich also qsynth über den Anwendungsstarter und kann dann wählen, ob ich aconnect über Konsole starte oder die GUI acconectgui verwende.
Es sieht so aus, als ob Du einfach so etwas willst: | #!/bin/sh
qsynth &
sleep 10
aconnect
|
Ggf. noch ein "&" an Zeile 5 anhängen, wenn das Skript direkt zurückkommen soll.
Was die o.gestartete Diskussion betrifft, ich bin tatsächlich überfordert...
Die ist hier auch nur begrenzt hilfreich.
|
dongxi
(Themenstarter)
Anmeldungsdatum: 23. August 2006
Beiträge: 409
Wohnort: zuhause
|
rklm schrieb:
Es sieht so aus, als ob Du einfach so etwas willst: | #!/bin/sh
qsynth &
sleep 10
aconnect
|
Wenn ich nun noch die Ports mit angebe sieht es so aus:
| #!/bin/sh
qsynth &
sleep 10
aconnect 24:0 128:0
|
...und funktioniert! ☺ Sollte ich aus "Hübsch-Gründen" nun noch etwas dazu basteln?
|
TomLu
Anmeldungsdatum: 23. August 2014
Beiträge: 603
|
rklm schrieb: dongxi schrieb:
Was die o.gestartete Diskussion betrifft, ich bin tatsächlich überfordert...
Die ist hier auch nur begrenzt hilfreich.
@dongxi Wie 'rklm' richtigerweise schrieb, eine solche Diskussion ist wirklich nicht hilfreich und mir tut sowas immer leid, weils einfach nur sinnlos und sowas von unnötig ist. Aber daran wirst Du Dich gewöhnen müssen und Du musst es aushalten, denn Du wirst hier wie in allen anderen Foren immer auf Leute treffen, die völlig eigene Vorstellungen von Konstruktivität haben und sogar aus eigenem rein destruktiven Verhalten Konstruktivität ableiten... so wie das einige Postings zuvor erkennen lassen ...am Ende begleitet von einer merkwürdigen Interpretation von Dysfunktionalität. Mein Beispiel in #3 ruft weder eine Funktionsstörung hervor, noch ist sie selber eine, also ist das auch nicht dysfunktional. rklm's letzter Vorschlag ist einfach nur eine intelligente Weiterführung, konstruktiv, hilfsbereit, lösungorientiert. Das empfinde ich in jeder Hinsicht als wünschenswert. Und soweit es das exit 0 angeht... meine Scripte geben am Ende als Default-Wert immer ein exit 0 zrück, solange wie nicht vorher eine andere Abbruchbedingung erfüllt ist, die einen anderen Rückgabewert erfordert und wenn ich es für notwendig erachte, darauf zu reagieren (...was gar nicht immer der Fall ist). Aber das ist eine Sichtweise, die zum jetzigen Zeitpunkt für Dich an zweiter Stelle steht.... wichtig ist hier nur, dass Du das Thema Rückgabewert im Kopf behälst. Dysfunktionalität hingegen kann man aber sehr wohl auf den Forumsbetrieb beziehen. Dafür finden wir hier oberhalb ein perfektes Beispiel, wenn nämlich eine hohe Postingzahl zu Hausrechtansprüchen führt, aus denen dann mit völlig merkwürdigen Selbstverständnis die Platzhirsch-Paragraphen 1 und 2 abgeleitet werden. §1 "Ich habe immer Recht." §2 "Wenn ich nicht Recht habe, habe ich aber das Recht, solange einen Konflikt zu forcieren, mit selektiven auseinanderpflücken und umdeuten von Inhalten, um diese Selektionen wieder zu Attacken zu formulieren, sowie hinzuziehen von oder ablenken auf Nebenschauplätze, die mit dem eigentlichen Thema gar nichts zu tun haben... solange bis der andere genervt klein beigibt". Das ist Dysfunktionalität par excellence. Dysfunktionalität ist auch, nicht unmittelbar zu helfen, so wie rklm das hier als Beispiel vorbildlich tut, sondern sich attackierend andere Helfer vorzuknöpfen. Der Beweggrund dafür ist vermutlich ein einfacher... der Fragesteller selber kann ja niemals potentieller Platzhirsch-Konkurrent sein, aber vielleicht irgendwann mal der Helfer, also besser wehret den Anfängen. Dysfunktionalität ist jenes Verhalten, wenn profilneurotische Antriebe dazu zwingen, das eigene erkennbar desktruktive Verhalten zu verleugnen und letztlich darüber in Kauf zu nehmen, dass man sich sogar destruktiv gegenüber dem Foren-Betrieb und infolgedessen auch dem Foren-Image verhält. Dysfunktional ist das vollständige Fehlen der Fähigkeit, einen Konflikt einfach zu beenden, ohne sich als Verlierer zu fühlen. Intelligente Schreiber werden niemals andere Helfer attackieren oder Hilfsversuche auseinandernehmen, sie gehen einfach hin und präsentieren eine bessere Lösung. Und nun schau Dir einfach an, wer überhaupt Lösungsvorschläge präsentiert hat... sachlich und problemorientiert ... dann erkenst Du, was funktional ist und was dysfunktional. Ansonsten.... einfach weiter machen und lernen. Je mehr man gelernt hat, um so mehr lernt man Linux zu schätzen.
|
user_unknown
Anmeldungsdatum: 10. August 2005
Beiträge: 17548
Wohnort: Berlin
|
TomLu schrieb: Mein Beispiel in #3 ruft weder eine Funktionsstörung hervor, noch ist sie selber eine, also ist das auch nicht dysfunktional.
Einen aufgetretenen Fehler zu kaschieren ist dysfunktional, dabei bleibe ich.
Und soweit es das exit 0 angeht... meine Scripte geben am Ende als Default-Wert immer ein exit 0 zrück, solange wie nicht vorher eine andere Abbruchbedingung erfüllt ist, die einen anderen Rückgabewert erfordert und wenn ich es für notwendig erachte, darauf zu reagieren (...was gar nicht immer der Fall ist). Aber das ist eine Sichtweise, die zum jetzigen Zeitpunkt für Dich an zweiter Stelle steht.... wichtig ist hier nur, dass Du das Thema Rückgabewert im Kopf behälst.
Was Du tust ist Dir überlassen. Anfängern empfiehlt man nicht Fehler zu kaschieren, sondern die Strategie fail early, fail loudly.
Dysfunktionalität hingegen kann man aber sehr wohl auf den Forumsbetrieb beziehen. Dafür finden wir hier oberhalb ein perfektes Beispiel, wenn nämlich eine hohe Postingzahl zu Hausrechtansprüchen führt, aus denen dann mit völlig merkwürdigen Selbstverständnis die Platzhirsch-Paragraphen 1 und 2 abgeleitet werden. §1 "Ich habe immer Recht." ...
Das ist Dein Kopfkino. Genauso wie es Deine freie Entscheidung ist, beleidigt zu sein, wenn man Deinen Code kritisiert.
§2 "Wenn ich nicht Recht habe, habe ich aber das Recht, solange einen Konflikt zu forcieren, mit selektiven auseinanderpflücken und umdeuten von Inhalten, um diese Selektionen wieder zu Attacken zu formulieren, sowie hinzuziehen von oder ablenken auf Nebenschauplätze, die mit dem eigentlichen Thema gar nichts zu tun haben... solange bis der andere genervt klein beigibt".
Lässt sich mühelos auf Deine Kommunikation anwenden.
Das ist Dysfunktionalität par excellence. Dysfunktionalität ist auch, nicht unmittelbar zu helfen, so wie rklm das hier als Beispiel vorbildlich tut, sondern sich attackierend andere Helfer vorzuknöpfen.
Ich habe niemanden attakiert.
Intelligente Schreiber werden niemals andere Helfer attackieren oder Hilfsversuche auseinandernehmen, sie gehen einfach hin und präsentieren eine bessere Lösung.
Das exit 0 wegzulassen ist bereits eine bessere Lösung. Wenn Du dem inhaltlich widersprechen willst freue ich mich auf die Fortsetzung der Diskussion. Falls Du Dich über mein Verhalten beschweren willst kannst Du den Thread den Moderatoren melden und dort vortragen, gegen welche Forumsregel verstoßen wurde.
|
TomLu
Anmeldungsdatum: 23. August 2014
Beiträge: 603
|
user_unknown schrieb:
Lässt sich mühelos auf Deine Kommunikation anwenden.
Was Du hier tust sind die obligatorischen Konflikt-Monologe... also alleine, weil ich das Gespräch mit Dir bereits vor längerem beendet habe. Kommunikation ist etwas anderes. Ich wollte Dich nur mal kurz drauf hinweisen.Und höre bitte auf, irgendwelche Lügenwahrheiten aufzubauen, mit dem exit 0 wurde nichts kaschiert, weil das Script gar nicht bis dort gekommen ist. Bitte nehme jetzt zu Kenntnis, dass ich das Gespräch beendet habe, weil ich mich nicht daran beteiligen oder hineinziehen lassen will, den Linux-Orientierten Forenbetrieb zu stören. Danke! Moderiert von rklm: Thema gesperrt. Die ursprüngliche Frage ist gelöst und Eure Diskussion ist hier völlig OT.
|