Linuxサーバでファイルが削除できない時はないでしょうか?
そういった時の対処法を、現役エンジニアの筆者が教えます。
わかりやすいように実例で図を用いて説明します。Linuxサーバでファイルが削除できない人はこの記事を読んでください。
筆者はWindowsサーバーやLinuxサーバーの運用構築を11年以上おこなってきました。その経験を元に知識を公開していきます!
LinuxサーバのCentOSでファイル削除ができない時の原因
![悩んでいる女性](https://sugublog.org/wp-content/uploads/2021/06/nayami111-2-1024x577.jpg)
Linuxサーバーでファイルを削除するコマンドは「rm」コマンドです。
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
以下のコマンドでLinuxのファイルを削除してみます
rm -file1.txt
![Linuxサーバーでファイルを削除でエラー](https://sugublog.org/wp-content/uploads/2024/04/1_ファイル削除エラー.png)
![Linuxサーバーでファイルを削除でエラー](https://sugublog.org/wp-content/uploads/2024/04/1_ファイル削除エラー.png)
エラーが出て削除できません。
この時のLinuxサーバのCentOSでファイル削除ができない時の原因はファイル名の先頭の「-」でオプションと勘違いされているからです。
LinuxサーバのCentOSでファイル削除ができない時の解決法
このようにファイル名の先頭に「-」が入っているものを削除する方法は以下の2つです。
- 「–」を使用してファイル名を認識させる
- 「./」を使用してファイル名の先頭を変更する
「–」を使用してファイル名を認識させる
LinuxサーバのCentOSで「–」は以降でオプションは来ないという意味になります。
その為に「-file1.txt」がファイルと認識してくれて削除ができます。
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
では実際に下のコマンドを使用してファイルを削除して見ます。
rm -- -file1.txt
![Linuxサーバーで削除できないファイルを削除成功](https://sugublog.org/wp-content/uploads/2024/04/2_-でファイル削除成功.png)
![Linuxサーバーで削除できないファイルを削除成功](https://sugublog.org/wp-content/uploads/2024/04/2_-でファイル削除成功.png)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
削除ができなかったファイルが削除できました。
「./」を使用してファイル名の先頭を変更する
LinuxサーバのCentOSでファイル削除ができない時の原因はファイル名の先頭の「-」でオプションと勘違いされているからでした。
つまりはファイル名の先頭を「-」にしなければよいのです。
「./」は現階層という意味なのでこれをつけてやってみましょう!
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
![](https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png)
では実際に下のコマンドを使用してファイルを削除して見ます。
rm ./-file1.txt
![Linuxサーバーで削除できないファイルを削除成功](https://sugublog.org/wp-content/uploads/2024/04/3_その他のやり方でファイル削除成功.png)
![Linuxサーバーで削除できないファイルを削除成功](https://sugublog.org/wp-content/uploads/2024/04/3_その他のやり方でファイル削除成功.png)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
先程と同様に、削除ができなかったファイルが削除できました。
Linuxでその他のエラー回避策の記事について
Linuxでサービスをインストールできない時の対処法について
![](https://sugublog.org/wp-content/uploads/2021/12/dog202112129-4-300x169.jpg)
![](https://sugublog.org/wp-content/uploads/2021/12/dog202112129-4-300x169.jpg)
Linuxでコマンドを実行しても出来ない時の対処法について
![](https://sugublog.org/wp-content/uploads/2021/10/mask10282-300x200.jpg)
![](https://sugublog.org/wp-content/uploads/2021/10/mask10282-300x200.jpg)
Linuxでインターネット接続出来ない時の対処法について
![](https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-300x198.jpg)
![](https://sugublog.org/wp-content/uploads/2021/09/code_0923-1-300x198.jpg)
まとめ:LinuxサーバのCentOSでファイル削除ができない時の原因と対処法
![原因と対処法](https://sugublog.org/wp-content/uploads/2021/11/programing_school1123-3-1024x576.jpg)
![原因と対処法](https://sugublog.org/wp-content/uploads/2021/11/programing_school1123-3-1024x576.jpg)
LinuxサーバのCentOSでファイル削除ができない時の原因は、ファイル名の先頭の「-」でオプションと勘違いされているからです。
対処法としては以下の2つがあります。
- 「–」を使用してファイル名を認識させる
- 「./」を使用してファイル名の先頭を変更する
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
![](https://sugublog.org/wp-content/uploads/2021/03/dog004-150x150.jpeg)
実際のコマンド例は以下です。
rm -- -file1.txt
rm ./-file1.txt