Elke keer als ik mijn terminal open krijg ik de onderstaande foutmelding:
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
En hier is mijn export
uitvoer:
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"
Antwoord 1, autoriteit 100%
Je kunt geen spaties rond het teken =
plaatsen als je het volgende doet:
export foo=bar
Verwijder de ruimtes die je hebt en je moet goed om te gaan.
Als u typt:
export foo = bar
de shell interpreteert dat als een verzoek om drie namen te exporteren: foo
, =
en bar
. =
is geen geldige variabele naam, zodat de opdracht mislukt. De naam variabele gelijk-teken en de waarde mag niet worden gescheiden door spaties voor hen als een gelijktijdige toewijzing en export te verwerken.
Antwoord 2, Autoriteit 3%
Ik geconfronteerd met de zelfde fout en deed wat onderzoek om alleen te zien dat er sprake zou kunnen zijn verschillende scenario’s om deze fout. Laat me mijn bevindingen.
Scenario 1: Er kan geen spaties naast het =
(equals) teken
$ export TEMP_ENV = example-value
-bash: export: `=': not a valid identifier
// this is the answer to the question
$ export TEMP_ENV =example-value
-bash: export: `=example-value': not a valid identifier
$ export TEMP_ENV= example-value
-bash: export: `example-value': not a valid identifier
Scenario 2: Objectwaarde opdracht mag geen spaties bevatten naast citaten
$ export TEMP_ENV={ "key" : "json example" }
-bash: export: `:': not a valid identifier
-bash: export: `json example': not a valid identifier
-bash: export: `}': not a valid identifier
Scenario 3: Lijst waardetoewijzing mogen geen spaties tussen de waarden
$ export TEMP_ENV=[1,2 ,3 ]
-bash: export: `,3': not a valid identifier
-bash: export: `]': not a valid identifier
Ik deel deze, omdat ik een paar uur vastzit om een oplossing te vinden. Hopelijk zal het iemand in nood helpen.
Antwoord 3
Allereerst Ga naar de / Home Directorty en open vervolgens het onzichtbare shell-script met een teksteditor, ~/.bash_profile (macOS) or ~/.bashrc (linux)
Ga naar de bodem, zou zoiets zien,
LD_LIBRARY_PATH = / USR / LOCAL / LIB
Wijzig dit zo (verwijder het lege punt rond de =
),
LD_LIBRARY_PATH = / USR / LOCAL / LIB
het moet nuttig zijn.
Antwoord 4
Ik had hetzelfde probleem en kwam het uit je opmerkingen, maar dacht dat ik de reden zou toevoegen die ik heb veroorzaakt dat de fout opkwam (voor andere beginners).
Ik had geopend en bewerkt .Bash_Profile met behulp van de open-opdracht in terminal, die het in teksteditor opende. Ik typte een aanvulling op .bash_profile en het gebruikte onjuiste quote tekens. Ik geopend .Bash_Profile in Atom en heeft de fout opgelost. Ik heb het bestand ook geassocieerd met ATOM voor toekomstige bewerking.
Antwoord 5
Probeer het pad met citaten te omringen en verwijder de spaties
export PYTHONPATH="/home/user/my_project":$PYTHONPATH
En vergeet niet de eerdere inhoud te behouden door : $ PythonPath (dat is de waarde van de variabele)
Voer de volgende opdracht uit om te controleren alles is correct geconfigureerd:
echo $PYTHONPATH