Я очень не хочу быть парнем, который говорит, "Вы просто делаете его неправильно" (я всегда ненавижу того парня;), но...
это должно быть повторяемо сгенерировано для уникальной машины? Вы могли просто присвоить идентификатор или сделать общественность/закрытый ключ? Возможно, если Вы могли бы генерировать и сохранить значение, Вы могли бы получить доступ к нему от обеих установок ОС на том же диске?
Вы, вероятно, исследовали эти опции, и они не работают на Вас, но в противном случае это - что-то для рассмотрения.
, Если это не вопрос пользовательского доверия, Вы могли бы просто использовать MAC-адреса.
Попробуйте это (обратите внимание, что я удалил пробелы по обе стороны от =
):
#!/bin/bash
J="4"
FACE_NAME="eig$J.face"
USER_DB_NAME="base$J.user"
Bash не любит пробелы при объявлении переменных - также это лучше всего сделать каждое указанное значение (но это не так важно).
Это хорошая идея использовать фигурные скобки для разделения имени переменной, когда вы встраиваете переменную в другой текст:
#!/bin/bash
J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"
Точка выполняет здесь свою работу за вас, но если там был какой-то другой символ, это могло бы быть интерпретировано как часть переменной имя.
не оставляйте пробелов между "="
J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"