I thought the same thing. What's wrong with this approach?
cat myfile.txt | awk '{do_stuff()}' | sort -u | column --table > new-myfile.txt cat myfile.txt | awk '{do_stuff()}' | sort -u | column --table > new-myfile.txt awk '{do_stuff()}' myfile.txt | sort -u | column --table > new-myfile.txt
The only thing you’ve changed is that you’re sending the output to a new file. That’s fine, but it’s what sponge is avoiding.