
cd
現在/作業ディレクトリを特定のディレクトリに設定し(検索を使用)、次のように入力します。
rm *.xvg
このコマンドは何をしますか?上記のコマンドは実際に実行されますか?ただ拡張子付きファイルの削除.xvg
ただ作業ディレクトリにありますか?
.xvg
上記のコマンドがファイルのみを削除するかどうかを確認したかったので、要求する前にこれを試すことは不安でした。作業ディレクトリに配置。
答え1
はい、rm *.xvg
そうです。ただディレクトリから指定された拡張子を持つファイルを削除する現在の目次。
ㅏいいねファイルを削除したいディレクトリに実際に存在するかどうかを確認する方法は、pwd
現在のディレクトリを表示するコマンドを使用して、ls
目的のファイルが見つかったことを確認することです。
このコマンドを実行するのが少し心配な場合は、次のrm
2つのことができます。
ls *.xvg
このコマンドの影響を受けるファイルのリストを表示するには、入力してください。一つ持っていない限りたくさん
-i
ファイルの数に応じて、いつでもコマンドラインスイッチを使用できます(rm
およびにもあります)。この機能を使用すると、個々のファイルを削除できるかどうかを尋ねるメッセージが表示されるため、誤って削除されないようにすることができます。 (ファイルが多いと退屈することがあります:)cp
mv
rm -i *.xvg
答え2
ディレクトリに移動する必要はありません。次を使用します。
rm /some/dir/*.xvg
/som/dir が存在しないパスに誤字や類似のエラーがある場合:
cd /som/dir
rm *.xvg
現在のディレクトリ内のすべての.xvgファイルが誤って削除されます。最初のコマンドはそうではないので、再びCDを使用する必要はありません。
もう一つの方法は find を使うことです。
find /some/dir/ -maxdepth 1 -type f -name "*.xvg" -delete
答え3
はい、現在のディレクトリで終わるファイルのみがrm *.xvg
削除されます。.xvg
理由は次のとおりです。
このようなコマンドを入力すると、ジョブは使用中のシェル(bash仮定)とコマンドバイナリの間で分割されます。
と入力してバイナリファイルを見つけることができますwhich rm
。この小さなプログラムはファイルの関連付けを解除します。このようなプログラムはコマンドラインから起動でき、起動prog arg1 arg2 arg3
時に引数のリストを読むことができます。の場合、rm
削除する完全修飾ファイル名のリストとして解釈されます。したがって、ファイルが含まれているディレクトリにある場合、foo.bar
入力結果delete 'foo.*'
はですrm: foo.*: No such file or directory
。ファイルパターンの周りの一重引用符に注意してください。これは、シェルがそのまま引数を渡すように指示します。
ただし、rm *.bar
同じディレクトリに入力するとファイルが削除されます。ここで何が起こるのかは、シェル(コマンドの入力に使用するプログラム)が引数をコマンドに渡す前にいくつかの変換を実行することです。その一つは、「ワイルドカード」とも呼ばれる「ファイル名拡張子」です。 Bashファイル名拡張子のリストを見ることができます。ここ。最も一般的な拡張の1つは、*
現在のディレクトリのファイル名に拡張されることです。
動作中のglobを見る簡単な方法は、echo
シェルを介して渡されたすべての引数を再印刷することを使用することです。したがって、echo *
入力は同じディレクトリに出力されますfoo.bar
。したがって、と入力すると、rm *.bar
実際にはシェルが引数のリストを展開し、foo.bar
それをrm
コマンドに渡します。
ワイルドカードを制御する方法はいくつかあります。たとえば、最新バージョンの bash では、再帰的に拡張される globstar というオプションを設定できます。入力すると、echo **/*.bar
すべてのサブフォルダーで終わるすべてのファイルのリストが表示されます.bar
。したがって、rm **/*.bar
globstarを有効にしてbashを入力すると、実際にサブフォルダ内の一致するすべてのファイルが再帰的に削除されます。
答え4
注文する:
rm ./*.pgm
私のために働く
注文する:
rm *.pgm
無効なコマンドを提供する(ポーランド語、翻訳):
rm: wrong option - '1'
Use "rm ./-1000.pgm" to delete the file '-1000.pgm'.
Write "rm --help" for information.
存在する
bash --version
GNU bash, wersja 4.4.19(1)-release (x86_64-pc-linux-gnu)