Espera que funciona bem, mas apenas em primeiro plano por quê?

0

Eu uso este script para atualizar meu repositório slackware (gerar asc, txt, etc)

http://slackware.org.uk/people/alien/tools/gen_repos_files.sh

Eu o "automatizei" com meu script de expectativa

#!/bin/sh
set -e

funct()
{
#script update repo http
pass3="proot"

    expect -c "
    spawn /usr/local/bin/gen_repos_files.sh -l /tmp/changelog
    expect \"Enter your GPG passphrase:  \"
    send \"$pass3\n\"
    interact
    "

find /srv/httpd/htdocs/repos/slackware-mg/ -type f |xargs chmod 644  -v

}

while inotifywait -qqre modify /http/srv/httpd/htdocs/repos/slackware-mg; do funct; done

Funciona perfeito, mas somente se eu iniciá-lo a partir de um shell, se eu executá-lo, de rc.local ou crontab..não funciona, o segundo script (gen_repos.sh) permanece adormecido. Por quê?

    
por elbarna 13.12.2014 / 01:44

1 resposta

1

Solução encontrada, nohup.

Por exemplo

nohup /usr/local/bin/aggiornailrepo.sh&

Em rc.local

E não se esqueça de -o / dev / null em inotifywait caso contrário, não funcionará sem um shell

    
por 06.01.2015 / 15:11

Tags