Использовать файл в качестве входа для программы, <
оператор может использоваться.
Например,
xmacroplay "$DISPLAY" < input.txt
Однако существует ли команда, чтобы указать, не хочу ли я использовать целый файл, но только провожу некоторые строки, как введено?
Некоторый like,
xmacroplay "$DISPLAY" < input.txt --starting_line=100 --ending_line=120
(Это, конечно, не будет работать, просто хотеть знать, существует ли опция как этот),
Используйте sed
или другой инструмент, чтобы отфильтровать определенную строку и передать его по каналу к команде. Например, следующее отправит только 10-е и 13-е строки файла к xmacroplay
:
sed -n '10p; 13p' input.txt | xmacroplay "$DISPLAY" --starting_line=100 --ending_line=120
Или в awk
:
awk 'NR == 10 || NR == 13' input.txt | xmacroplay "$DISPLAY" --starting_line=100 --ending_line=120
, Если по некоторым причинам Вы не можете использовать канал, замену процесса использования:
xmacroplay "$DISPLAY" --starting_line=100 --ending_line=120 < <(sed -n '10p; 13p' input.txt)