-bash:意外标记‘&’附近有语法错误

-bash:意外标记‘&’附近有语法错误

我收到这个错误

(-bash: syntax error near unexpected token `&' )

当我运行以下命令时:

sudochown -hRfwebadmin:www-data /web/<repertoire>&&sudoln -s /web/<repertoire>
/var/www/html/<repertoire>&&sudochown -hRfwebadmin:www-data
/var/www/html/<repertoire>&&sudols -al /var/www/html/

有人能帮忙看看这个命令行的语法有什么问题吗

答案1

思考您要做的就是运行以下命令:

sudo chown -hRf webadmin:www-data /web/repertoire &&
sudo ln -s /web/repertoire /var/www/html/repertoire &&
sudo chown -hRf webadmin:www-data /var/www/html/repertoire &&
sudo ls -al /var/www/html/

意思&&是“仅当前一个命令成功时才运行下一个命令”。实际上并不需要这样做。另外,第二个chown命令毫无意义。目录/var/www/html/repertoire是一个链接/web/repertoire,由于您已经更改了目标的所有权,因此没有必要为链接也更改它。它已经被更改了(这就是链接的意义所在)。所以,您真正想要做的是:

sudo chown -hRf webadmin:www-data /web/repertoire 
sudo ln -s /web/repertoire /var/www/html/repertoire
sudo ls -al /var/www/html/

相关内容