名前に `を含むファイルを削除する

名前に `を含むファイルを削除する

ある時点で、私は以下を含むファイルを作成しました。 `。どのように削除しますか?

ls -la返品:

-rw-rw-r--  1 ec2-user ec2-user     0 Sep 25 23:01 `which

答え1

いくつかの方法があります:

  1. 参照ファイル名

    rm '`which'
    
  2. 問題のキャラクターから脱出する

    rm \`which
    
  3. シェルワイルドカードを使用する(他のファイルが一致する場合はプロンプト)

    rm -i ?which
    rm -i *which
    
  4. 代替の使用find(@Braiam が以下で指摘するように、現在のディレクトリで一致するすべてのファイルを検索し、予想よりも多くのファイルを削除できます.)

    find . -name '`which' -exec rm {} \;
    find . -name '`which' -delete
    

答え2

ファイル名に「面白い文字」があり、入力できない場合は、次のことができます。

rm -i *which*

which普通のキャラクターで構成された部分です。

-i対話型の場合)削除したくない一致をスキップできるように、一致するファイル名を削除する前にメッセージが表示されていることを確認してください。

答え3

バックスラッシュを使用して問題の文字をエスケープすることで削除できます。あなたは入ることができます

rm \`which

それはすべてです。

答え4

そんなことが起こります。ファイル名が次のような場合

`which 

使用する必要があります

mv '`which' which

'ファイル名の前に特殊文字があるため、ファイル名の周囲に使用する必要があります。

関連情報