bin sh script - “(” unexpected [duplicate]

2019-07-25 03:12发布

问题:

This question already has an answer here:

  • Difference between sh and bash 10 answers

What is wrong with this script?

#!/bin/sh

for file in *.p; do awk -f get_p.awk "$file" > "$file"er; done 

awk -f phase-comp.awk file1 file.per # výpočet fází
paste <(awk '{print $1}' output1) <(awk '{print $2}' file1) > out

The error is:

5: skript: Syntax error: "(" unexpected

When I write command separately to terminal. It works well. Thank you

回答1:

The problem is your shebang:

#!/bin/sh

It means this script is meant to be interpreted by sh, but your script uses process substitution which is a bash-specific feature. So, you should change it to:

#!/bin/bash

to make your script work.



标签: sh