Это одна возможность, но кое-где брать партнерскую профессор позиций гораздо более серьезно (учитывая, что это профессорско-преподавательский состав, который требует вне письма, ведомственные голосования, утверждение администрации, и т. д.). Но я думаю, что ваше описание очень на звание "научного консультанта". и я хочу сделать внутри цикла for, чтобы открыть терминал GNOME, а также в каждой итерации сделать откройте терминал GNOME, чтобы быть не в каждом цикле открытия новых независимых терминалов Windows @Адам.р точно, как процесс проверки работ зависит от области, хотя, который является частью того, почему я пропустил это обсуждение (в стороне от него, вероятно, заслуживает свой собственный вопрос.) Стандарт IEEE (как видно из названия - институт инженеров по электротехнике и электронике) больше сосредоточены на технике, чем на чистой науке, поэтому процесс имеет тенденцию быть несколько иным, чем в физических науках.

Это в настоящее время не представляется возможным (насколько мне известно), чтобы иметь возможность строки и создать ассоциативный массив с ними в bash. Поэтому вы должны "оценить" перед использованием функции eval заявление.

Когда я запускаю ваш пример, я получаю следующее используете bash версии 4.1.7:

$ ./Арр.Баш 
./Арр.Баш: строка 5: Б: [а]=0: должны использовать индекс при назначении ассоциативный массив
./Арр.Баш: строка 5: Б: [Б]=1: необходимо использовать индекс при назначении ассоциативный массив
./Арр.Баш: строка 5: б: [с]=2: необходимо использовать индекс при назначении ассоциативный массив
./Арр.Баш: строка 5: б: [д]=3: необходимо использовать индекс при назначении ассоциативный массив

Изменение этой работы:

ивала "Б=($А)" # " или " B=($(эхо "$а"))

Повторный запуск вы сейчас получили ожидаемых результатов:

$ ./Арр.Баш 
***********0 1 2 3*********
---------0 1 2 3----------

Объяснение

Я нашел это так вопрос и тему: Баш: как назначить ассоциативный массив на другое имя переменной (например, переименовать переменную)?, которая иллюстрирует способ, чтобы сделать это с помощью заявить, но он идет, чтобы показать, как читается этот метод на самом деле является, и, вероятно, не следует использовать.

# объявляем ассоциативный массив
объявить-ассоциативного массива=(["ключ1"]="значение1" ["ключ2"]="значение2")
# преобразовать ассоциативный массив в строку
assoc_array_string=$(объявить -п ассоциативного массива)
# создать новый ассоциативный массив из String
ивала "заявляю-new_assoc_array="${assoc_array_string#*=}
# показать определении массива 
объявить -п new_assoc_array

Этот метод показывает $ассоциативного массива преобразуется в строку, а затем преобразовать обратно в массив, $new_assoc_array. Но даже этот метод не может избежать необходимости использовать функцию eval. Это сложный фрагмент следовать код и показывает, почему это действительно следует избегать.