The simpler and better way to write your pipeline is:
"< file.txt somecommand | othercommand | anothercommand"
There is never any need for "cat".
When such a pipeline is used repeatedly in a script, the time for executing the redundant process "cat" can easily add up to a noticeable delay.