ファイル記述子に書き込もうとしたときに何が起こっているのか理解できませんか?元の内容を上書きしたようですが?これが予想される動作ですか?
以下の例では、これを複製しました。
$ echo "The quick brown fox ..." > example.txt
$ echo "The quick brown fox ..." >> example.txt
$ cat example.txt
The quick brown fox ...
The quick brown fox ...
$ exec 88<>example.txt
$ cat example.txt
The quick brown fox ...
The quick brown fox ...
$ echo "jumped" >&88
$ cat example.txt
jumped
ck brown fox ...
The quick brown fox ...
$ echo "jumped" >&88
$ cat example.txt
jumped
jumped
n fox ...
The quick brown fox ...
ベストアンサー1
ディスクリプタ88で読み出しが行われていないため、現在のナビゲーション位置は「0」であり、その時点で書き込みが行われる。
これとは対照的に、この前にファイルを読み取ると追加の操作が発生します。
bash-4.2$ cat <&88
The quick brown fox ...
The quick brown fox ...
bash-4.2$ echo hello >&88
bash-4.2$ cat example.txt
The quick brown fox ...
The quick brown fox ...
hello
bash-4.2$ echo more >&88
bash-4.2$ cat example.txt
The quick brown fox ...
The quick brown fox ...
hello
more