Der er en fejl hver gang en ny terminal åbnes,
fejl: “bash: eksport: kommando ikke fundet “
Jeg kopierer kun eksport all_proxy =” “og eksporterer ALL_PROXY =” “til terminal, så når jeg åbner en ny terminal, vises billedet af situationen.
Dette er billede:
Jeg indtaster kommandoen:
grep export ~/.bashrc
ouput:
Jeg indtaster kommandoen:
env SHELLOPTS=xtrace \ BASH_XTRACEFD=7 \ PS4="[${BASH_SOURCE:-$BASH_EXECUTION_STRING}:$LINENO]> " \ 7> >(grep ‘) bash -l
output:
Kommentarer
- Kan du sende den kommando, der gav fejlen, såvel som selve fejlen. Det ser ud som om du har et tegn foran kommandoen.
- @ bu5hman Jeg kopierer kun eksport all_proxy = " " og eksporter ALL_PROXY = " " til terminal, så når jeg åbner en ny terminal, vil billedet af situationen blive vist .
- Fungerer andre bash-kommandoer? Har du gjort noget ved $ PATH i denne eller den forrige terminalsession? Eller rediger din bash-profil?
- førende enkelt tilbud før eksport i .bashrc .bash_profile?
- @ bu5hman Jeg gør ' ikke gør noget i $ PATH, først forekommer jeg geninstallere kali linux, det andet er stadig tilfældet. Det andet kopierer jeg kun eksport all_proxy = " " og eksporter ALL_PROXY = " " til terminal, så når jeg åbner en ny terminal, vises billedet af situationen.
Svar
Det ser ud til, at du har redigeret din .bashrc-fil.
Jeg kan repliker denne fejl nøjagtigt, hvis jeg sætter
"‘export"
som den sidste linje i min .bashrc
For at kontrollere det skal du bare udføre
grep export ~/.bashrc
Hvis grep
giver en output som ovenfor, skal du redigere den ud af din ~ / .bashrc-fil.
Rediger: Fra din sidste postredigering kan du se, at du har 2 linjer, der starter “eksport slet dem begge f rom ~ / .bashrc.
Kommentarer
- Hvad skal jeg nu gøre?
- Her er
`
et backtick. OP havde et‘
-tegn i stedet. - @St é phaneChazelas Enig om, at kommandoen er syntaktisk forkert. Bash-fejlen synes dog på grund af linierne i ~ / .bashrc.
- Strengt taget er kommandoen syntaktisk korrekt, men tilfældigvis prøver den at påkalde en kommando (
‘export
) som ikke kan findes. - @St é phaneChazelas Aftalt. Syntaktisk korrekt, hvis du påkalder en ny kommando kaldet
‘export
, men forkert, hvis du prøver at ringe tilexport
. Vi plejede at kalde dem skrivefejl ' s. En rigtig djævel for at få dem ud af papyrusen.
Svar
Forudsat at du har kopieret det ind kommando som den er, den klager over, at kommandoen ‘export
ikke findes, hvor ‘
er U + 2018 tilbage enkelt anførselstegn ikke-ASCII-tegn (må ikke forveksles med ASCII "
apostrof / enkelt citat (U + 0027) eller ASCII `
backtick / grave accent (U + 0060) tegn).
Da dette tegn på ingen måde er specielt for bash
, en kommandolinje som:
‘export foo=bar’
(hvor ’
er U + 2019, det rigtige enkelt anførselstegn)
Fortolkes som at køre ‘export
kommandoen med foo=bar’
som argument. Havde du skrevet:
"export foo=bar"
i stedet, dvs. med disse U + 2018 og U + 2019 erstattet med ASCII-apostrof, et tegn der er specielt for bash
som det er en citerende operatør, der ville være blevet behandlet som at køre export foo=bar
kommandoen uden noget argument. Der er ingen sådan kommando. Det er ikke hvad du vil have.
Du vil
export foo=bar
eller
"export" "foo=bar"
Det vil sige at køre export
kommandoen med et foo=bar
argument.
Her skal du bruge for at fjerne det U + 2018-tegn (og eventuelt det tilsvarende U + 2019-tegn, hvis der er noget), uanset hvor du har indsat det i din ~/.bashrc
eller andre steder. Uanset hvor du kopierede og indsatte koden fra , disse tegn var ikke beregnet til at blive kopieret.
For at finde, hvor den falske kommando er blevet introduceret, hvis ikke i ~/.bashrc
(selvom din seneste redigering viser, at den er i din ~/.bashrc
faktisk), kan du prøve at køre:
env SHELLOPTS=xtrace \ BASH_XTRACEFD=7 \ PS4="[${BASH_SOURCE:-$BASH_EXECUTION_STRING}:$LINENO]> " \ 7> >(grep ‘) bash -l
($PS4
ville blive ignoreret af skaller, der kører som root
med bash-4.4 eller nyere dog, hvilket synes at være din sag, hvorfor du ser ++
i stedet for filnavnet og linjenummer).
Kommentarer
- Hvad skal jeg nu gøre?
- @MichaelSmith Du skal redigere
~/.bashrc
, men inden det skal du kigge her: unix.stackexchange.com/questions/399626 - @MichaelSmith, hvad jeg sagde i svaret. Du vil måske også have til at få nogle selvstudier eller starte med et lettere unix-lignende system, inden du bruger et system beregnet til professionelle
- @St é Fane Chazelas Jeg kopierede koden som svar fra stackoverflow.com/questions/47304988/…
- @MichaelSmith OPen bruger Kali, men fejlen er ikke rigtig relateret til distro. Ville også være sket med Ubuntu ….. don ' t kopier indsæt