Ответ 1
Чтобы добавить новую строку в конце файла:
echo >>file
Чтобы добавить строку в конец каждого файла в текущем каталоге:
for x in *; do echo >>"$x"; done
Если вы не знаете заранее, заканчивается ли каждый файл в новой строке, сначала проверьте последний символ. tail -c 1
печатает последний символ файла. Так как подстановка команд усекает любую окончательную новую строку, $(tail -c 1 <file)
пуст, если файл пуст или заканчивается в новой строке, и не пуст, если файл заканчивается символом новой строки.
for x in *; do if [ -n "$(tail -c 1 <"$x")" ]; then echo >>"$x"; fi; done