bash スクリプトに PID の配列があります。これらを \| で結合したい grep を使用して、配列内のいずれかの PID に一致するものを検索できるようにセパレーターとして。基本的に、以下に示すように IFS を変更しようとしていますが、発生する問題は、目的の出力ではなく、
GREP_ARG='29126\|27435'
私は得る
GREP_ARG='29126\27435'.
これは私が使用しているコードです
function join {
local IFS="$1"; shift; echo "$*";
}
GREP_ARG=$(join '\|' "${PID_ARRAY[@]}")
grep -A1 $GREP_ARG file
さまざまな方法で入力を変更しようとしましたが、何も機能しません。これに対するIFSのアプローチは不可能ですか?