私はUbuntuとgphoto2を使ってデジタルカメラを制御するプロジェクトを進めています。一度は、プロジェクトフォルダ/home/greg/project/~に新しい "~"ディレクトリを見つけました。この新しい"〜"ディレクトリに入ると(予想通り)私のホームディレクトリである/home/greg/に戻ります。
どうやってこれが起こったのかわかりませんが、コマンドラインでgphoto2を実行して出力ファイルを指定したときにファイルが私のホームディレクトリに表示されることを期待して「~/filename.jpg」と入力しましたが、代わりにbashは作業ディレクトリに新しいものです~"ディレクトリを配置します。 (実際にそのようなことが起こった場合)これが可能かどうかわからなかった。
どうやってそこに来たのかより重要なことは、私がそこから出てきた方法でした。私が知っている限り、ディレクトリを削除することはできません。はい私のホームディレクトリ。シンボリックリンクではないようですが(少なくともls -lによると)これが正確に何を意味するのかわかりません。
答え1
シェルの拡張を防ぐには、これを引用する必要があります。
ls ~ # list your home directory
ls "~" # list the directory named ~
ls \~ # list the directory named ~
rm
rmdir
などと同じです。~
引用またはエスケープしない限り、シェルはそれをコマンドに渡す前にに変更します。/home/greg
以下で見ることができますecho
。
anthony@Zia:~$ echo ~
/home/anthony
anthony@Zia:~$ echo \~
~
rm -Rf ~
災害になるので注意してください。疑わしい場合は、まず名前を変更することをお勧めします()。削除したいことを確認してから削除mv -i \~ newname
できます。newname