Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

shell-programmieren

Empfohlene Antworten

Veröffentlicht

hallo,

ich muss eine shell programmieren die die festplatte auslastet.

dabei muss ich die dauer und zeit für eine pause eingeben können.

mit der pause habe ich kein problem aber mit der dauer wie lange das programm laufen soll:

#!/bin/bash

echo Bitte Dauer eingeben:

read dauer

echo Bitte Dauer der Pause eingeben:

read pause

345678901234567890

s=s+s+s+s+s+s+s+s

sleep $pause

ich würde mich sehr über hilfe von euch freuen.

grüsse

zulunda

Hi,

Du könntest nach Ablauf der gewünschten Dauer ein kill -SIGSTOP an die Prozess-ID schicken. Mit kill -SIGCONT läßt Du den Prozess dann weiterarbeiten (, z.B. sobald die Pause abgelaufen ist).

Grüße,

giftclown

gebe ich dann nach die befehl die zeit ein, nach der gestoppt werden soll.

ich habe echt keine ahnung wie das gehen soll.

danke

ich hab`s geschafft trotzdem danke.

in etwa so:

# Kommando, das die Festplatte auslastet aufrufen und in den Hintergrund schicken

befehl argumente &

# Prozess-ID des aufgerufenen Kommandos herausfinden

PIDBEFEHL=`pgrep befehl`

# Dauer, die das Kommando die Festplatte auslasten soll abwarten; z.B. 10 Sekunden

sleep 10

# Nach 10 Sekunden den Prozess anhalten

kill -SIGSTOP $PIDBEFEHL

# hier irgendetwas machen, während der Prozess angehalten ist

/bin/true

# Prozess weiterlaufen lassen

kill -SIGCONT $PIDBEFEHL

---

Was Du noch machen solltest: In der man-page zum Befehl, der die Festplatte auslastet,

prüfen, wie der Befehl auf Signale reagiert, sicherstellen, daß "pgrep" keine anderen Prozesse in der Prozessliste matcht. Wenn der Prozess nicht pausieren sondert beendet werden soll, dann SIGTERM oder SIGKILL als Signal schicken.

Hoffe, es ist klarer geworden.

Gruß,

giftclown

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.