LINUX.ORG.RU

Построчное чтение файла в bash

 ,


1

3

Пытаюсь выполнить с помощью скрипта такую задачу:
построчно вывести содержимое файла, после вывода каждой строки ожидать и прочесть ввод пользователя.
В таком варианте происходит вывод строк через одну, ввод пользователя не работает. Как бы это сделать?

file=./file.txt

cat "$file" | while read line; do
	echo "$line" # Вывод строки из файла
	read	# Чтение ввода пользователя
done

file=./file.txt

exec 9<$file

while read -u 9 line; do
    echo "$line" # Вывод строки из файла
    read # Чтение ввода пользователя
done

surefire ★★★ ()
Ответ на: комментарий от carabo

Я надеюсь вы не делали так, как описано в помеченном зеленой галочкой ответе?

Zmicier ★★★★★ ()
Ответ на: комментарий от surefire

После туалета руки тоже не моешь?

anonymous ()
Ответ на: комментарий от surefire

Зачем непортабельная хрень, если можно:

while read line <&9
?

anonymous ()

С учётом выше сказанного имеем

file=./file.txt

exec 9<$file

while read line <&9; do
    echo "$line" # Вывод строки из файла
    read # Чтение ввода пользователя
done

exec 9<&-
surefire ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.