it-roy-ru.com

-bash: export: `= ': неверный идентификатор

Каждый раз, когда я открываю свой терминал, я получаю следующую ошибку:

Last login: Sun Aug  4 17:23:05 on ttys000
-bash: export: `=': not a valid identifier
-bash: export: `/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin': not a valid identifier
-bash: export: `=': not a valid identifier
-bash: export: `/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin': not a valid identifier

И вот мой вывод export:

Calvin:~ sunkehappy$ export
declare -x Apple_PubSub_Socket_Render="/tmp/launch-4lEZNa/Render"
declare -x Apple_Ubiquity_Message="/tmp/launch-ukGAv5/Apple_Ubiquity_Message"
declare -x COMMAND_MODE="unix2003"
declare -x HOME="/Users/sunkehappy"
declare -x LANG="zh_CN.UTF-8"
declare -x LOGNAME="sunkehappy"
declare -x OLDPWD
declare -x PATH="/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
declare -x PWD="/Users/sunkehappy"
declare -x SECURITYSESSIONID="186a4"
declare -x Shell="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_AUTH_SOCK="/tmp/launch-YAEryC/Listeners"
declare -x TERM="xterm-256color"
declare -x TERM_PROGRAM="Apple_Terminal"
declare -x TERM_PROGRAM_VERSION="309"
declare -x TERM_SESSION_ID="B134A404-D87F-4BB9-8A08-55F8CE923339"
declare -x TMPDIR="/var/folders/kt/pfw99tps22gg2019vz8k1zcm0000gn/T/"
declare -x USER="sunkehappy"
declare -x __CF_USER_TEXT_ENCODING="0x1F5:25:52"
27
sunkehappy

Нельзя ставить пробелы вокруг знака =, когда вы делаете:

export foo=bar

Удалите пробелы, которые у вас есть, и вам должно быть хорошо идти.

Если вы введете:

export foo = bar

оболочка интерпретирует это как запрос на экспорт трех имен: foo, = и bar. = не является допустимым именем переменной, поэтому команда не выполняется. Имя переменной, знак равенства и ее значение не должны быть разделены пробелами, чтобы их можно было обрабатывать как одновременное присваивание и экспорт.

74
Mat

У меня была такая же проблема, и я понял это по вашим комментариям, но подумал, что добавлю причину, по которой я произошла ошибка (для других начинающих).

Я открыл и отредактировал .bash_profile, используя команду open в Terminal, которая открыла его в текстовом редакторе. Я набрал дополнение к .bash_profile, и в нем использовались неправильные символы кавычек. Я открыл .bash_profile в Atom и исправил ошибку. Я также связал файл с Atom для будущего редактирования.

0
tk 421