Linux auf Befehl mit Sekundengenauigkeit

3348
Javier Novoa C.

Ich suche nach einem Linux-Befehl, der möglicherweise zu einem bestimmten Zeitpunkt einen anderen Befehl startet.

Ich weiß über den atBefehl Bescheid, aber er gibt mir nur Minuten Genauigkeit und ich brauche Sekunden Präzision. Gibt es eine Option mit einem Befehl, der ich nicht bewusst bin? Oder gibt es einen anderen Befehl, den ich verwenden sollte?

Jede Orientierung wird nützlich sein.

4
Warum? Wenn ein Scheduler jede Sekunde überprüft hat, würde er Tonnen von Prozessor aufbrauchen. Warum ist winzige Präzision nicht gut genug? beatgammit vor 12 Jahren 2
Sie müssen mit ein wenig Ungenauigkeit leiden - meine Ergebnisse für "time sleep 5" geben mir zusätzliche ".003" Sekunden. Führen Sie diesen Befehl auf Ihrem Computer aus, um zu sehen, wie genau er sein wird. new123456 vor 12 Jahren 0
@tjameson, weil ich etwas für 5 Sekunden planen muss und der Befehl at bei mir nicht funktioniert. Ich wollte nicht auf den Schlafbefehl verzichten, aber ich denke, ich muss damit umgehen. Vielen Dank Javier Novoa C. vor 12 Jahren 0

1 Antwort auf die Frage

7
Journeyman Geek

Verwenden Sie crondiese Option, um ein Skript auszuführen, das den Sleep- Befehl für das subminute Präzisionsbit aufruft. So

sleep 10 ; foo.sh 

sollte foo.sh10 Sekunden nach Aufruf des Befehls laufen .

Wissen Sie etwas über die Präzision? Oder die Genauigkeit von "at" bei der Ausführung von etwas genau "xx: xx: 00: 000"? Wenn der Benutzer diese Art von Präzision verlangt, ist es denkbar, dass "at" und "sleep" dies nicht beeinträchtigen. Daniel Beck vor 12 Jahren 0
schlafen auf Ubuntu und als solche akzeptiert Debian Gleitkommawerte. "Im Gegensatz zu den meisten Implementierungen, bei denen NUMBER eine ganze Zahl sein muss, kann NUMBER hier eine beliebige Gleitkommazahl sein." Wenn er jedoch kleinere Präzisions-Schwimmstützen benötigt, habe ich keine Ahnung Journeyman Geek vor 12 Jahren 0
Ich meinte eher so, als ob sein Skript tatsächlich bei ': 10' beginnen würde, wenn er 'sleep 10' angibt oder vielleicht eher ': 11' oder ': 12' ... Daniel Beck vor 12 Jahren 0
eigentlich keine ahnung. Ich habe meistens gesehen, wie das Warten als 'Lass uns die Dinge etwas Zeit lässt, um sich niederzulassen' und nicht als präzises Timing-Instrument. Journeyman Geek vor 12 Jahren 0
Bog Standard Linux ist kein Echtzeitsystem und bietet * keine * absolute Timing-Garantien. Bekomme es schwer und verprügeln und Dinge können sehr verzögert werden. * // zu viel Erfahrung mit Systemen, die ** genügend Speicherplatz haben ** dmckee vor 12 Jahren 0