Bashでの「&>>」の用途は何ですか?

Bashでの「&>>」の用途は何ですか?

私はbashスクリプトコードを扱っていますが、 "&>>"演算子を見つけました。私はその目的を理解していませんでした。だから私は言及した。http://www.gnu.org/software/bash/manual/html_node/Redirections.html

と意味上同じです>> file 2>&1

以下は私のシェルの出力です。

# echo $SHELL
/bin/bash
# echo "hello" &>> file1
bash: syntax error near unexpected token `>'

そして

# echo "hello" >> file1 2>&1

# cat file1 

hello

質問: - なぜエラーが発生するのですかbash: syntax error near unexpected token '>'

[編集する]:- Bash バージョン 3.2.25(1)-リリース(x86_64-redhat-linux-gnu)

答え1

以前のバージョンのbash(3.2.25)を使用しているため、対応するエラーが発生します。

Bash4から&>>TARGETと同等のものがあります>> TARGET 2>&1

源泉:リダイレクト出力の追加

したがって、アップグレードを検討する必要があります。私はbashバージョン4.2.45を使用していますが、echo "hello" &>> file1それは私にとって魅力的です。

答え2

この機能はbash 4.0アルファで導入されているため、4.0以上のすべてのbashで使用できます。

http://git.savannah.gnu.org/cgit/bash.git/tree/CHANGES?id=0001803f0b9523c94fa2ede48eaecb047fef4524——ライン976。

(元の4.0-alphaチェンジログでは、演算子をとして誤って報告しました>>&。マニュアルページに正しい1が表示され、&>>タイプミスが4.1で修正されました。)

関連情報