используйте-a,-p на чтении управляют togother

В ударе сценарий может мы читать немного переменных типа массив из той же строки

Как я могу использовать -a & -p одновременно на команде чтения?

Я попробовал:

read -ap 'vi:' var_1
read -pa 'vi:' var_1
read -a -p 'v1:' var_1
read -p -a 'v1:' var_1

Ни один из которых не работает. Они - какие-либо другие опции?

1
задан 28 November 2019 в 07:17

2 ответа

Можно добавить входные строки к массиву с циклом.

#!/bin/bash

array=()
while true; do
    read -rp "vi: " input
    [[ -z $input ]] && break || array+=("$input")
done

echo "${array[@]}"
0
ответ дан 7 December 2019 в 18:04

Ваш метод работает в bash с маленькой модификацией:

Очищают переменную

$ unset asdf

Помещенный опция -a после Проверки опции -p 'string'

$ read -p 'enter 4 items separated by space ' -a asdf
enter 4 items separated by space  1 2 3 4

результат

$ echo ${asdf[@]}
1 2 3 4
$ echo ${asdf[3]}
4
$ echo ${asdf[0]}
1
0
ответ дан 7 December 2019 в 18:04

Другие вопросы по тегам:

Похожие вопросы: