Удалите filename
из конца команды awk
:
Изменение
awk '{sum+=$1} END {print sum}' read
до
awk '{sum+=$1} END {print sum}'
Первый говорит awk
получить входные данные из файла с именем read
, а второй говорит awk
для получения входных данных от standard input
.
То, как вы запускаете скрипт: ./read.sh <data
Вы вводите вход через стандартный ввод.
В качестве альтернативы, если вы всегда хотите, чтобы скрипт считывал входные данные из файла с именем data
, вы можете сделать:
awk '{sum+=$1} END {print sum}' data
и запустите скрипт как: ./read.sh