2016-10-27 98 views
-3

命令shell腳本里面:當#!/bin/sh運行命令錯誤時#/ bin/sh的運行

mapfile -t my_array < <(grep '$(ABC)' ${file} |awk -F_ '{print $2}') 

失敗。

error: syntax error near unexpected token `<' 

相同的命令與#!/bin/bash一起使用。

+2

那麼,Bash和sh是不同的東西。 Bash支持一些sh不支持的東西。你期望什麼?! – Biffen

+1

另外,它似乎忘了在你的問題中包含一個問題。 – Biffen

回答

1

過程替換不是POSIX sh中的一個特性;它也是bash和zsh採用的ksh擴展。

使用#!/bin/sh只能保證POSIX sh規範中給出的功能的存在。