構成ジェネレータスクリプトを作成しています。
setup_displays
関数コード()を端末に直接貼り付けると、すべてがうまく機能します。しかし、電話するとsh generator.sh
次のエラーが発生します。
functions.sh: line 3: ./helpers.sh: Permission denied
functions.sh: line 75: syntax error near unexpected token `<'
functions.sh: line 75: ` done< <(echo $display_result)'
発電機.sh
#!/bin/bash
set -x
source functions.sh
setup_display
function.sh
#!/bin/sh
source ./helpers.sh
setup_display() {
display_result=2 87 800 600 60 1 0 0 0
# setting params
while read -r hdmi_group hdmi_mode hdmi_cvt; do
echo "hdmi_mode" "$hdmi_mode"
echo "hdmi_group" "$hdmi_group"
echo "hdmi_cvt" "$hdmi_cvt"
done< <(echo $display_result) # line 75
}
これが正しい出力です
hdmi_mode 87
hdmi_group 2
hdmi_cvt 800 600 60 1 0 0 0
私は何が間違っていましたか?
答え1
#!/bin/sh
と同じではありません#!/bin/bash
。
とにかく、これは役に立たないエコ使用です。使用
done <<<$display_result
代わりに。