В Bash's test (синоним для [ ... ]), а также для обычно предпочтительных [[ ... ]] выражений вы должны отделить все аргументы и операторы пробелами.
Кроме того, вы всегда должны цитируйте свои переменные. Также рекомендуется использовать отступы, чтобы сделать ваш код более удобным для чтения и использовать синтаксис подстановки нового стиля $(...) вместо `...`.
О, а lsb_release имеет -s или --short, чтобы опустить первый столбец, вам не нужно анализировать его с помощью sed.
Он может выглядеть, например, например:
#!/bin/bash
os=$(lsb_release -rs)
echo "$os"
if [[ "$os" = "16.04" ]] ; then
echo "g"
elif [[ "$os" = "14.04" ]] ; then
echo "b"
else
echo "c"
fi
С другой стороны, для сравнения одной переменной с несколькими значениями case может быть красивее:
#!/bin/bash
os=$(lsb_release -rs)
echo "$os"
case "$os" in
"16.04") echo "g" ;;
"14.04") echo "b" ;;
*) echo "c" ;;
esac
CUDA успешно установлена. Проблема заключалась в том, что некоторые параметры безопасности на моей материнской плате препятствовали доступу ubuntu к сертификатам безопасности для драйверов Nvidia. Отключение функций безопасности позволило nvcc правильно общаться с драйверами.
CUDA успешно установлена. Проблема заключалась в том, что некоторые параметры безопасности на моей материнской плате препятствовали доступу ubuntu к сертификатам безопасности для драйверов Nvidia. Отключение функций безопасности позволило nvcc правильно общаться с драйверами.
CUDA успешно установлена. Проблема заключалась в том, что некоторые параметры безопасности на моей материнской плате препятствовали доступу ubuntu к сертификатам безопасности для драйверов Nvidia. Отключение функций безопасности позволило nvcc правильно общаться с драйверами.