Я бы сделал что-то подобное с помощью awk (однострочный):
awk -F: '{if ($1 in users) print "Duplicate Username: "$1 ; else users[$1]}' /etc/passwd
найти имя пользователя в переменной массива пользователей, при дублировании печати msg иначе добавьте пользователя в массив
Это не похоже на проблему с PATH
:, когда вы вызываете утилиту java
. Проблема в том, что исполняемый файл front -end java
не может найти остальную часть установки Java. Я думаю, это связано с переменной окружения JAVA_HOME
, которую подтверждает эта ветка на Stack Overflow . Проверьте вывод
env | grep '^JAVA'
Если установлено JAVA_HOME
, оно должно быть установлено в каталог, содержащий подкаталоги с именами bin
и jre
. Должен быть исполняемый файл $JAVA_HOME/bin/java
. Обычно последний компонент каталога JAVA_HOME
содержит подстроку jdk
.
Просмотрите места, где установлены переменные среды, и исправьте настройку для JAVA_HOME
. Это может быть в /etc/profile
, ~/.profile
, ``/.bash _профиль `, или какой-то MacPorts или файл spak, о котором я не знаю (, см. также Как мне установить переменные среды в OS X?).