Перенаправление команды и вывод в файл
Выполненные команды:
cat a1.txt | grep a | wc -l >> a.txt
cat b.txt | grep a | wc -l >> a.txt
cat c.txt | grep a | wc -l >> a.txt
Я хочу, чтобы count и команда добавлялись в.txt.
лайк
Ожидаемый выходной файл: предположим, что 100 200 300 - это число.
cat a1.txt | grep a | wc -l 100
cat b.txt | grep a | wc -l 200
cat c.txt | grep a | wc -l 300
1 ответ
Или
использовать
script
команда для захвата терминала, а затем редактировать результаты, илисохраните команду в переменной и затем оцените команду:
cmd='cat a1.txt | grep a | wc -l' printf "%s\t%s\n" "$cmd" "$(eval "$cmd")" >> a.txt
Обобщая это:
print_and_do() { local cmd="$1"; printf "%s\t%s\n" "$cmd" "$(eval "$cmd")"; } { print_and_do "cat a1.txt | grep a | wc -l" print_and_do "cat b.txt | grep a | wc -l" print_and_do "cat c.txt | grep a | wc -l" } >> a.txt
Знаете ли вы, что cat a1.txt | grep a | wc -l
можно записать как:
grep -c a a1.txt