读取:指定标志对此命令无效
read: A specified flag is not valid for this command
我在 HP-UX 机器上遇到这个错误
+ IFS=;
/home/machine1/folder/borrado_de_logs.sh[45]: read: A specified flag is not valid for this command.
我正在使用此代码
head -1 $rutatemporal/logfechas.log > $rutatemporal/cabecera.txt
cabecera=`cat $rutatemporal/cabecera.txt`
IFS=';' read -a arreglo<<EOF
$cabecera
EOF
在 Hp-UX 中似乎不允许 read -a
read
应该使用什么参数?
cabecera.txt的内容是这样的:
2019-02-01;/home/user/deletelogs/somelog.log
可能是因为-a
is not a POSIX compliant flag支持读命令。因此,您的 HP-UX 机器中可用的默认 shell 不 支持它也就不足为奇了。
您仍然可以使用没有 -a
的 read
命令来拆分和存储单个变量名称,如下所示。此外,您不需要 here-doc 从输入文件中读取,而是直接在文件本身上使用 read
命令
IFS=\; read -r date path < "$rutatemporal"/cabecera.txt
echo "$date"
echo "$path"
类型
$ help read
您可以看到可用的选项及其含义。
我在 HP-UX 机器上遇到这个错误
+ IFS=;
/home/machine1/folder/borrado_de_logs.sh[45]: read: A specified flag is not valid for this command.
我正在使用此代码
head -1 $rutatemporal/logfechas.log > $rutatemporal/cabecera.txt
cabecera=`cat $rutatemporal/cabecera.txt`
IFS=';' read -a arreglo<<EOF
$cabecera
EOF
在 Hp-UX 中似乎不允许 read -a
read
应该使用什么参数?
cabecera.txt的内容是这样的:
2019-02-01;/home/user/deletelogs/somelog.log
可能是因为-a
is not a POSIX compliant flag支持读命令。因此,您的 HP-UX 机器中可用的默认 shell 不 支持它也就不足为奇了。
您仍然可以使用没有 -a
的 read
命令来拆分和存储单个变量名称,如下所示。此外,您不需要 here-doc 从输入文件中读取,而是直接在文件本身上使用 read
命令
IFS=\; read -r date path < "$rutatemporal"/cabecera.txt
echo "$date"
echo "$path"
类型
$ help read
您可以看到可用的选项及其含义。