このような質問がたくさんあることは承知していますが、残念ながら、Ubuntu について十分な知識がないため、自分の状況に適用することはできません。仕事で使うものはすべてリモート マシンに保存してあり、SSH 経由でアクセスしています。そこにある conda 環境で何かを変更しようとして、.bashrc ファイルで何かを変更したのですが、vim も ls も使用できなくなってしまいました。テキスト エディターもコマンドも機能していないようです。
echo $PATH
戻り値:
/home/percyrou/bin:/home/percyrou/bin:/home/user/bin:~/ghf_env/bin/
誤って変更する前の .bashrc ファイルを覚えている限りでは、PATH は次のようでした。/home/user/bin:
これらすべての追加パーツが追加された理由は、次のように変更しようとしたからだと思います:
echo 'export PATH="/home/percyrou/bin:$PATH"' >> ~/.bashrc
(または、percyrouの代わりにuserを使用するだけで、どちらなのかわからなかったため)、PATHを置き換えるのではなく、PATHに追加するようです。私はすでに実行しましたsource ~/.bashrc
また、scp
.bashrc ファイルをローカル マシンにダウンロードしてそこで編集しようとしましたが、 も返されます。 .bashrc ファイルに も含まれているbash: scp: command not found
からだと思います。scp
助けてください! ここからパス変数に再度アクセスするにはどうしたらよいかわかりません。:(
答え1
やその他のコマンドは引き続き使用できますが、シェルが でこれらのコマンドを見つけることができないため、の代わりに のように(または の代わりに同様に など)scp
絶対パスを入力する必要があります。/usr/bin/scp
scp
/usr/bin/ls
ls
$PATH
/usr/bin/cat .bashrc
ファイルの内容を表示する.bashrc
か、編集してみてください/usr/bin/vim .bashrc
。編集してもファイルが正しく動作しない場合は、.bashrc
の下にデフォルト ファイル (アカウント作成時に各ユーザーのホーム ディレクトリにコピーされるファイル)があります/etc/skel/.bashrc
。次のコマンドを使用して、現在の.bashrc
ファイルにコピーします。
/usr/bin/cp /etc/skel/.bashrc .bashrc
答え2
パスを最小限の使用可能なバージョンにリセットする
PATH=$(getconf PATH)
次に.bashrcを修正します