GNU/Linux >> Znalost Linux >  >> Linux

Jak vytisknu obsah úloh?

Řešení 1:

at -c jobnumber vypíše jednu zakázku. Pokud je chcete vidět všechny, můžete vytvořit skript jako

#!/bin/bash
MAXJOB=$(atq | head -n1 | awk '{ print $1; }')
for each in $(seq 1 $MAXJOB); do echo "JOB $each"; at -c $each; done 

Pravděpodobně existuje kratší způsob, jak to udělat, jen jsem to vypustil z hlavy :)

Řešení 2:

Na základě předchozích odpovědí je zde uveden seznam řádků každé úlohy od atq zobrazující číslo úlohy a naplánovaný čas a poté pouze příkaz, který má být spuštěn, seřazený chronologicky (spíše než číslo úlohy):

for j in $(atq | sort -k6,6 -k3,3M -k4,4 -k5,5 |cut -f 1); do atq |grep -P "^$j\t" ;at -c "$j" | tail -n 2; done

vyrábějící např.

48  Fri Mar 10 15:13:00 2017 a root
/usr/local/bin/a-command

47  Fri Mar 10 15:14:00 2017 a root
/usr/local/bin/another-command

Řešení 3:

Mnohem jednodušší přístup:

for j in $(atq | cut -f 1); do at -c "$j"; done

Můžete se také podívat na každý z nich v less což by mohlo být jasnější:

for j in $(atq | cut -f 1); do at -c "$j" | less; done

Řešení 4:

Vytvořil jsem příkaz atqc k tomu ("atq s příkazem"). Funkce bash. Spusťte to na příkazovém řádku bash (příkaz terminálu). Nebo jej vložte do ~/.bashrc aby byl k dispozici později:

atqc () { atq|perl -ne'($q,$j)=/((\d+).*)/;qx(at -c $j)=~/(marcinDEL\w+).\n(.*?)\n\1/s;print"$q $2"'; }

Otestujte to:

atqc

To funguje pro RHEL7 s at -V verze 3.1.13.

Ubuntu 16.04 s at -V verze 3.1.18 má mírně odlišný výstupní formát v at -c N , takže na mém serveru Ubuntu to funguje:

atqc(){ atq|perl -nE'($q,$j)=/((\d+).*)/;qx(at -c $j)=~/\n}\n(.*?)\s*$/s;say"$q: $1"';}

Linux
  1. Jak zobrazit obsah komprimovaných souborů v Linuxu

  2. Jak pěkně vytisknout soubor JSON v terminálu Linux

  3. Jak vytisknout pthread_t

  1. Jak získat ID procesu na pozadí?

  2. Jak vytisknout číslo v sestavě NASM?

  3. Jak dostat ps do tiskové skupiny?

  1. Jak naplánovat úlohy Cron pomocí Crontab

  2. Jak extrahuji obsah rpm?

  3. Jak vytisknu zprávu na stderr v Go?