使用sudo启动脚本时遇到问题,尽管我没有问题,并且在没有sudo的情况下脚本可以正常工作。
电话是:
mapfile -t dataList< <( tac /tmp/result.log | grep 'Command' | cut -d" " -f1 )
错误是“意外符号“ <”附近的语法错误。
sudo命令是:
sudo -u victor /tmp/parse.sh
谢谢大家的帮助...
答案 0 :(得分:0)
听起来像是另一种外壳程序正在执行您的脚本,但脚本不了解所使用的语法。
您的脚本/tmp/parse.sh
的标题行中可能缺少#!/bin/bash
(或类似名称),并且可以使用其他shell(root用户的登录shell?)来执行它。
可以通过在脚本标头中添加缺少的#!
行(推荐)或通过显式调用Shell来解决此问题:
sudo -u victor bash /tmp/parse.sh