Присвоение переменной Bash и команда, не найденная, [копируют]

Я очень не хочу быть парнем, который говорит, "Вы просто делаете его неправильно" (я всегда ненавижу того парня;), но...

это должно быть повторяемо сгенерировано для уникальной машины? Вы могли просто присвоить идентификатор или сделать общественность/закрытый ключ? Возможно, если Вы могли бы генерировать и сохранить значение, Вы могли бы получить доступ к нему от обеих установок ОС на том же диске?

Вы, вероятно, исследовали эти опции, и они не работают на Вас, но в противном случае это - что-то для рассмотрения.

, Если это не вопрос пользовательского доверия, Вы могли бы просто использовать MAC-адреса.

49
задан jww 14 May 2019 в 12:18
поделиться

3 ответа

Попробуйте это (обратите внимание, что я удалил пробелы по обе стороны от = ):

#!/bin/bash
J="4"
FACE_NAME="eig$J.face"
USER_DB_NAME="base$J.user"

Bash не любит пробелы при объявлении переменных - также это лучше всего сделать каждое указанное значение (но это не так важно).

115
ответ дан 7 November 2019 в 11:25
поделиться

Это хорошая идея использовать фигурные скобки для разделения имени переменной, когда вы встраиваете переменную в другой текст:

#!/bin/bash
J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"

Точка выполняет здесь свою работу за вас, но если там был какой-то другой символ, это могло бы быть интерпретировано как часть переменной имя.

11
ответ дан 7 November 2019 в 11:25
поделиться

не оставляйте пробелов между "="

J=4
FACE_NAME="eig${J}.face"
USER_DB_NAME="base${J}.user"
7
ответ дан 7 November 2019 в 11:25
поделиться
Другие вопросы по тегам:

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