перенаправление на именованный канал

Я знаю разницу между > и >> при перенаправлении на простой файл. Но есть ли разница при перенаправлении на именованный канал (fifo)?

Предположим, что namedpipe является именованным каналом. Являются ли следующие команды bash эквивалентными?

 echo something > namedpipe echo something >> namedpipe 

С точки зрения Баша, эти два эффекта дают тот же эффект.

Любой из них будет успешно записывать в трубу, если у вас есть что-то, читающее с него, и поскольку канал является специальным устройством (а не файлом), его длина не изменится (поскольку обычный файл будет, если вы используете >> append оператор). Труба не помнит, что вы ей написали, после пересылки данных читателю, поэтому > и >> выглядят одинаково.

Дальнейшее чтение:

  • Зачем использовать именованный канал вместо файла?
  • Введение в именованные трубы