新しい端末を開くたびに間違いがあります。
エラー: “bash: export:command not found “
export all_proxy =” “をコピーしてALL_PROXY =” “をターミナルにエクスポートするだけで、新しいターミナルを開くと、状況の画像が表示されます。
これは画像です:
コマンドを入力しました:
grep export ~/.bashrc
出力:
コマンドを入力します:
env SHELLOPTS=xtrace \ BASH_XTRACEFD=7 \ PS4="[${BASH_SOURCE:-$BASH_EXECUTION_STRING}:$LINENO]> " \ 7> >(grep ‘) bash -l
出力:
コメント
- エラーを発生させたコマンドとエラー自体を投稿できますか。コマンドの前に文字があるようです。
- @ bu5hmanコピーするのはexportall_proxy = " "そしてALL_PROXY = " "をターミナルにエクスポートし、新しいターミナルを開くと、状況の写真が表示されます。
- 他のbashコマンドは機能しますか?今回または前回のターミナルセッションで$ PATHに何かしましたか?または、bashプロファイルを編集しますか?
- .bashrc .bash_profileにエクスポートする前に一重引用符をリードしますか?
- @ bu5hman '何もしません$ PATHで、最初にkali linuxを再インストールしますが、2番目はまだ当てはまります。2番目はexport all_proxy = " "のみをコピーします。 ALL_PROXY = " "をターミナルにエクスポートし、新しいターミナルを開くと、状況の写真が表示されます。
回答
.bashrcファイルを編集したようです。
できます
"‘export"
を.bashrcの最後の行として配置した場合にこのエラーを正確に再現します
確認するには実行するだけです
grep export ~/.bashrc
grep
で上記のような出力が得られた場合は、〜/ .bashrcファイルから編集してください。
編集:前回の投稿編集から、「export delete them bothf」で始まる2行があることがわかります。 rom〜 / .bashrc。
コメント
- どうすればよいですか?
- ここに
`
がありますアクサングラーブ。 OPには代わりに‘
文字がありました。 - @St é phaneChazelasコマンドが構文的に間違っていることに同意しました。ただし、bashエラーは〜/ .bashrcの行が原因のようです。
- 厳密に言えば、コマンドは構文的に正しいのですが、たまたまコマンドを呼び出そうとします(
‘export
)見つかりません。 - @St é phaneChazelas同意しました。
‘export
という新しいコマンドを呼び出す場合は構文的に正しいですが、export
を呼び出そうとしている場合は正しくありません。以前はタイプミス'と呼んでいました。パピルスからそれらを取り出すための本当の悪魔。
回答
あなたがそれをコピーして貼り付けたと仮定しますコマンドはそのままですが、‘export
コマンドが見つからないことに不満があります。‘
はU + 2018 左です。一重引用符非ASCII文字(ASCII "
アポストロフィ/一重引用符(U + 0027)またはASCII バッククォート/アクサングラーブ(U + 0060)文字)。
この文字は、コマンドラインであるbash
にとって特別なものではないためです。例:
‘export foo=bar’
(’
はU + 2019、右引用符)
foo=bar’
を引数として‘export
コマンドを実行していると解釈されます。書いたことがありますか:
"export foo=bar"
代わりに、U +2018とU + 2019がASCIIアポストロフィに置き換えられました。これは
は引用演算子であり、引数なしでexport foo=bar
コマンドを実行するものとして扱われます。そのようなコマンドはありません。そうではありません。
必要なもの
export foo=bar
または
"export" "foo=bar"
つまり、export
コマンドをfoo=bar
引数を指定して実行します。
ここでは、次のことが必要になります。そのU + 2018文字(および場合によっては対応するU + 2019文字)を~/.bashrc
または他の場所に挿入した場所から削除します。そのコードをコピーして貼り付けた場所、これらの文字はコピーされることを意図していませんでした。
~/.bashrc
にない場合に、その偽のコマンドが導入された場所を見つけるため(ただし、最新の編集では、~/.bashrc
確かに)、実行してみることができます:
env SHELLOPTS=xtrace \ BASH_XTRACEFD=7 \ PS4="[${BASH_SOURCE:-$BASH_EXECUTION_STRING}:$LINENO]> " \ 7> >(grep ‘) bash -l
($PS4
は実行中のシェルによって無視されますただし、bash-4.4以降ではroot
として表示されますが、これはあなたのケースのようです。そのため、ファイル名の代わりに++
が表示されます。
コメント
- どうすればよいですか?
- @MichaelSmith