我正在尝试并排连接一些文件。
pr
我在终端中使用该命令。它工作得很好,但是当我在 shell 脚本中使用它时,我收到以下错误消息:
syntax error near unexpected token `('
这是脚本:
#!/bin/sh
myfile1=toto1.dat
myfile1=toto2.dat
file_out=mytoto_out.dat
touch ${file_out}
/usr/bin/pr -mts' ' <( /usr/bin/cut -d' ' -s -f1,2,3,4,5,6,7,8,9,10,11 ${myfile1}) <( /usr/bin/cut -d' ' -s -f8 $myfile2) >>${file_out}
echo ${file_out} " is done"
答案1
在命令行上,您的 shell 是 bash。在您的脚本中您正在使用/bin/sh
./bin/sh
显然你的系统上不是 bash,并且<()
无论 shell/bin/sh
是什么,语法显然都不存在。
将 shebang(#!/bin/sh
部分)更改为#!/bin/bash
.