У меня есть команда read
в скрипте bash, чьи входные данные определяют массив. Входными данными часто являются скопированные / вставленные данные, содержащие несколько строк. Каждая строка в многострочном вводе корректно захватывается и добавляется в массив как отдельные элементы, но я бы хотел сделать отступ для каждой строки с префиксом >
в окне терминала, когда она вставляется в.
Это для bash v3, работающего на macOS. Я пробовал различные варианты команды read
, но не смог найти ничего, что сработало.
Скрипт:
#!/bin/bash
echo "Provide inputs:"
until [[ "$message" = "three" ]]; do
read -p "> " message
myArray+=($message) #Input added to array for later processing
done
Вводимые вручную данные выглядят так:
Provide inputs:
> one
> two
> three
Но многострочный ввод с копированием / вставкой выглядит следующим образом:
Provide inputs:
> one
two
three
> >
Желаемый результат заключается в том, чтобы многострочный ввод с копированием / вставкой выглядел идентично введенным вручную входам.