Тому що в Linux echo<ENTER>буде повторюватися новий рядок.
у Windows це буде echo. (відлуння / теж працює, а деякі інші речі працюють)
це буде як натискання клавіші Enter, коли ви отримуєте підказку.
різні речі можуть вийти з підказки. Відлуння деяких символів, і тоді, коли більше немає даних, тоді запит виходить. Передаючи вхід до нього, він приймає цей вклад, а не запитувати введення з клавіатури і чекати, наприклад, ctrl-z у Windows. (ctrl-d на початку рядка в Linux буде робити це теж, я просто перевірив його, і це згадується тут https://unix.stackexchange.com/questions/16333/how-to-signal-the-end -of-stdin-введення )
Як правило, коли ви отримуєте підказку, іноді лунає будь-який символ може працювати, наприклад, якщо ви це зробите, dir /pі ви отримаєте підказку "Натисніть будь-яку клавішу для продовження". Потім спробуйте, echo a| dir /pі він покаже список і натисне клавішу для вас.
Але дивіться, хоч із такою командою, якщо вона працює лише для ENTER, або якщо вона працює для інших клавіш, і інша річ, яку можна шукати, це якщо вона шукає закінчення введення. Наприклад, https://stackoverflow.com/questions/33814493/why-cant-this-c-sharp-program-be-piped-to-like-the-more-command-and-what-c
Тож у Windows, якщо ви набираєте більше, ви отримуєте підказку. якщо ви введете деякі символи, він бачить це як введений, і він виводить його, як це робиться більше, але він не виходить. Якщо ви повторюєте навіть один символ більше, наприклад, echo a|moreвін виходить, і це тому, що це підказка, яка вийде / перестане намагатися читати stdin, коли більше символів не потрібно вводити.
Крім того, якщо ви хочете побачити, що знайшло відлуння, ви можете використовувати xxd, наприклад, у windows, echo a | xxd -p, і ви побачите, що він надіслав "a" та пробіл. Ви б побачили, що також якщо ви ухилите echo a> aa, то dir aa побачить, що це два байти. Ви можете отримати xxd від cygwin або vim7, і звичайно для Linux.