2014-01-16 4 views

ответ

1

Пробег: echo $'\n'" exit".

$'\n' - это буквальная строка в строке bash.

Другой вариант заключается в использовании echo -e, которая превращается в интерпретации управляющих последовательностей, таких как \n:

echo -e '\n exit' 

Кроме того, поскольку вы упоминаете добавления, вы, вероятно, хотите >> вместо >.

+0

это классный маленький трюк! Я бы просто расширил с помощью цикла for: for f in $ (LS); do echo $ '\ n' "exit" >> $ f; done – speeves

+0

@speeves: Nice, но с использованием globbing ('for f in *') более надежный (и более быстрый), чем подстановка команд ('for f in $ (ls)'); Я также предлагаю ответить на два слова «$ f' - @ damienfrancois». – mklement0

2

Использование echo -e, как @ mklement0 предполагает, сценарий просто:

for i in test/* ; do 
     echo -e '\n exit ' >> "$i" 
done 
1

Две общие решения еще не упомянул:

printf '\n exit\n' >> file 

echo ' 
exit' >> file 

(Каждый из указанных выше ставит символ новой строки после "выхода" , если вы этого не хотите, используйте:

printf '\n exit' >> file 
Смежные вопросы