Чому не існує нового рядка в кінці цитування нижньої частини і передачі результатів повторюється?


9

Коли я роблю ls | grep pngвихід grep:

2015-05-15-200203_1920x1080_scrot.png 
2015-05-16-025536_1920x1080_scrot.png

(ім'я файлу, новий рядок, ім'я файлу, новий рядок)

потім, echo $(ls | grep png)виводи:

2015-05-15-200203_1920x1080_scrot.png 2015-05-16-025536_1920x1080_scrot.png

(ім'я файлу, пробіл від розбиття слів, назва файлу, новий рядок !! від відлуння !!)

Це все нормально, але коли я це роблю, щоб запобігти розщепленню слова:, echo "$(ls | grep png)"вихід:

2015-05-15-200203_1920x1080_scrot.png 
2015-05-16-025536_1920x1080_scrot.png

І моє запитання: де другий новий рядок (один повинен бути з греп, а другий від відлуння)?

Відповіді:


8

Це новий рядок echo, який ви можете підтвердити, використовуючи echo -nдля придушення зворотного нового рядка:

echo -n "$(ls | grep png)"

Заміна команди видалити всі останні рядки, останній новий рядок доданий echo, grepтут нічого не має.


"Заміна команди видалити всі останні рядки" - ось це! Дякую
MichalH
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.