2012-01-26 75 views
1

的代碼:bash命令替換操作錯誤

`cat <(fgrep -i -v "$DAEMON_TEST" <(sudo -u asm crontab -l)) <(echo "$CRON") | sudo -u asm crontab -` 

錯誤:

command substitution: line 46: syntax error near unexpected token `(' 
/etc/init.d/asm: command substitution: line 46: `cat <(fgrep -i -v "$DAEMON_TEST" <(sudo -u asm crontab -l)) <(echo "$CRON") | sudo -u asm crontab -' 

的命令時通過與相關琴絃

更換變量直接運行到殼體運行正常

這裏有變量:

DAEMON_TEST=asm_test.php 
CRON="*/15 * * * * /opt/asm/daemons/test.php" 
+0

我不是100%肯定這是什麼命令,但不即時100%確定它不應該需要這麼多的命令和過程替換和管道 – SiegeX

+0

您將DAEMON_CONTROLLER作爲變量,並且您在命令sub中使用DAEMON_TEST? –

+0

只是一個建議,你可以用'<<<「$ CRON'代替'<(echo」$ CRON「)' – jcollado

回答