2017-02-09 18 views
11
rest(){ 
    echo "have a rest in "$1 " minutes" 
    at -f /home/rest.sh now+$1 minutes 
} 

Aby edytować skrypt rest.sh.Czy komenda at w spoczynku może być uproszczona?

vim /home/rest.sh 
xscreensaver-command --lock 

Aby to sprawdzić.

rest 60 
have a rest in 60 minutes 
warning: commands will be executed using /bin/sh 
job 7 at Thu Feb 9 11:15:00 2017 

Czy komenda w reszcie at być simplifed?
Aby usunąć /home/rest.sh, przekazać parametr z rurą lub w inny sposób?

Odpowiedz

2

przy i wsad czytają polecenia ze standardowego wejścia lub określonego pliku, który ma być wykonany później, za pomocą/bin/sh.

man at

Tak, można karmić nakazuje ona z HEREDOC, tak:

rest(){ 
    echo "have a rest in "$1 " minutes" 
    at now+$1 minutes <<EOF 
    xscreensaver-command --lock 
EOF 
} 

(zauważ, że ciąg granica EOF nie może mieć żadnych spacji przed nim)