Windows と Ubuntu の両方が特殊文字を含むファイル名を認識できないのはなぜですか?

Windows と Ubuntu の両方が特殊文字を含むファイル名を認識できないのはなぜですか?

WSL の bash でテキスト ファイルに追加しようとしていました (演算子を使用>>)。残念ながら、私は初心者なので、ファイルに追加するのではなく、>>ファイル名として「text」を持つ新しいファイルが作成され、Windows (GUI) と Ubuntu ( コマンド) の両方で、rmディレクトリ内にあるファイルを削除できないようです ( コマンドを使用しても表示されますdir)。

  • Windows GUI:

    Windows GUIのディレクトリ

  • Windows エラー コード:

    Windows エラーコード

  • バッシュ:

    root@DESKTOP-IA030GJ:/# cd home
    root@DESKTOP-IA030GJ:/home# dir
    English_Class  Finished_Projects  Keeping.txt  Random_Password_Generator_Project  \\n\\n\ -----Changes\   onion_project  pythonwork
    root@DESKTOP-IA030GJ:/home# ls --quoting-style=shell
     English_Class                      '\n\n -----Changes '
     Finished_Projects                   onion_project
     Keeping.txt                         pythonwork
     Random_Password_Generator_Project
    

答え1

このファイル名には、元々(誤って)データをパイプした方法により特殊文字が含まれています。そのため、ちょうどファイル名を入力し、それをrm引用符で囲んでコマンドで使用します。

ファイル名が正確に であることはわかっています\n\n -----Changes。それでは、それを使用しましょう。 このコマンドから一重引用符を削除しないでください。削除すると機能しなくなります。

rm '\n\n -----Changes '

これにより、その後の問題が発生することなく、そのファイルが完全に削除されるはずです。

*Changes*削除のパターンとして使用してファイルを削除したり、-iこれにフラグを追加して対話型にして、削除するファイルが実際に削除されていることを確認することもできます。

関連情報