In the book Modern Operating System, the author explained that if the shell script has two commands, p1 and p2 and each takes turn writing into a file x, the position where p1 finishes will be remembered by p2, as they are using the same open-file-description table. I test this with a simple script.
#!/bin/bash
echo 11 > a.txt
echo 12 > a.txt
It turns out that the second command overwrites the file completely. Anything wrong with the script or the implementation?