PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programme mit Tastendruck starten (Konsole)



genzguergen
18.12.04, 07:36
Hallo,
ich möchte auf der Konsole ein oder mehrere Programme mit einem Tastedruck starten (z.B.: F5) und mit einem anderen (F6) wieder abbrechen bzw. beenden.
Diese Programme sollen möglichst im Hintergrund ablaufen, während auf der Konsole noch ein anderes Programm läuft.
Hat irgendjemand eine Idee, wie ich das realisieren kann?
Ciao Jens

carnil
18.12.04, 08:06
Hallo

Zunächst leider kann ich keine Lösung vortischen, aber vielleicht so eine Art Ansatz. Zunächst mit dem & kann man Ja Programme in den Hintergrund schicken, also sicher erstmals wäre das


$programmname &

zu implementieren.

Nun, gibt es als build-ins bei der Bash noch weitere Befehle - die hier eventuell helfen könnten. Wenn eine andere Standardshell verwendet wird, müsste man halt kontrollieren ob man das "extern" lösen könnte, oder ob die verwendete Shell diese Befehle auch besitzt:

Mit jobs müsste man eventuell zunächst herausfinden, welche "ID" das Programm hat, dass man wieder in den Hintergrund verfrachten möchte.

jobs [-lnprs] [ jobspec ... ]
jobs -x command [ args ... ]
The first form lists the active jobs. The options have the fol-
lowing meanings:
-l List process IDs in addition to the normal information.
-p List only the process ID of the job's process group
leader.
-n Display information only about jobs that have changed
status since the user was last notified of their status.
-r Restrict output to running jobs.
-s Restrict output to stopped jobs.

If jobspec is given, output is restricted to information about
that job. The return status is 0 unless an invalid option is
encountered or an invalid jobspec is supplied.

If the -x option is supplied, jobs replaces any jobspec found in
command or args with the corresponding process group ID, and
executes command passing it args, returning its exit status

Anhand dessen müsste man anschliessend versuchen, mittels fg (schickt das Programm in der Vordergrund) und bg (schickt das Programm wieder in den Hintergrund] "anwenden".

Sollte das ganze nicht per F5 oder F6 gehen sollen, dann müsste man für die zwei aktionen evtl einfach ein kleines Bash-Skript machen, auch welche man dann eventuell "kleine" Aliase definieren könnte.

MfG carnil

tictactux
18.12.04, 16:40
Lies das HOWTO im Titel. Auf einem Debian System ist das unter
/usr/share/doc/HOWTO/ zu finden.
Darin findest Du Lösungen zum Belegen von Funktions- und anderer
Tasten in unterschiedlichen Umgebungen (von der Linux-Console über
Xterms bis readline/.inputrc, wenn's sein muß auch emacs :D )

Gruß,
Wolfgang

carnil
18.12.04, 16:51
Hallo tictactux

Bin zwar nicht der Threadersteller, aber ich denke auch von meiner Seite ein Danke, werde mich wohl auch gleich mal ans lesen von The Linux keyboard and console HOWTO (http://www.tldp.org/HOWTO/Keyboard-and-Console-HOWTO.html) machen. :)

Hat zumindest schon mal ein interessantes Inhaltsverzeichnis ...

Hmm, kann mir jemand erklären, wieso ich nicht selber darauf gekommen bin, auf www.tldp.org nachzugucken? :rolleyes: ... naja, jetzt halt, aus Fehlern lernt man :)

MfG carnil