Расширение фигурной скобки Bash с переменными для сопоставления с шаблоном

Пакет выпуска/оценки был удален из репозитория, чтобы предотвратить дальнейшую установку оценочных пакетов с достаточно устаревшей датой, поскольку эти проблемы возникают в будущих обновлениях. Если вы заинтересованы в использовании golang, мы рекомендуем установить доступную бета-версию 11.4, см. http://www.oracle.com/technetwork/server-storage/solaris11/114beta/solaris114beta-4257760.html

.

0
12.02.2020, 14:01
2 ответа

Если шаблоны префикса/суффикса не содержат пробелов, можно использовать расширенное подстановочное значение:

shopt -s extglob
prefix='@(prefix1|prefix2|prefix3)'
suffix='@(suffix1|suffix2|suffix3)'

echo $prefix*$suffix

for file in $prefix*$suffix; do
    #...
done
  • Может обрабатывать пробелы, если переменная IFSустановлена ​​соответствующим образом
2
28.04.2021, 23:23

Один из способов сделать это — использовать два цикла в сочетании с массивами bash, что-то вроде этого:

foo=(one two three)
bar=(four five six)
for f in ${foo[@]}; do 
  for g in ${bar[@]}; do
    echo $f$g
  done
done
0
28.04.2021, 23:23

Теги

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