はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2017/02/18
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> ちょっと便利なTIPS集 >> システム >> 消せないファイルを消す方法

■ TIPS集『システム』

 消せないファイルを消す方法

コマンドリダイレクトやキーボードの入力ミスで変なファイル名を作成してしまった場合、
「rm」コマンドで削除しようとしても削除できない場合があると思います。

以下が代表的なファイルです。

# ls -l
合計 0
-rw-r--r-- 1 root root 0 12月 5 18:08 "
-rw-r--r-- 1 root root 0 12月 5 18:08 #
-rw-r--r-- 1 root root 0 12月 5 18:08 '
-rw-r--r-- 1 root root 0 12月 5 18:06 *
-rw-r--r-- 1 root root 0 12月 5 18:07 -abc
-rw-r--r-- 1 root root 0 12月 5 18:06 \
-rw-r--r-- 1 root root 0 12月 5 18:07 ^abc
-rw-r--r-- 1 root root 0 12月 5 18:06 a b c

「rm」コマンドでファイルを削除
# rm "
>

# rm #
rm: missing operand
詳しくは `rm --help' を実行して下さい.

# rm -abc
rm: オプションが違います -- a
Try `rm ./-abc' to remove the file `-abc'.
詳しくは `rm --help' を実行して下さい.

# rm a b c
rm: cannot lstat `a': そのようなファイルやディレクトリはありません
rm: cannot lstat `b': そのようなファイルやディレクトリはありません
rm: cannot lstat `c': そのようなファイルやディレクトリはありません


上記の様に、削除ができません。
このような場合、削除対象のファイルを「'」シングルクオーテーションで括って削除します。

# rm '"'
rm: remove 通常の空ファイル `"'? y


しかし、この「'」シングルクオーテーションを用いても削除できないのは「'」と「-abc」となります。
これは「'」がその括ったシングルクオーテーションとして認識してしまう為で
「-abc」は「rm」コマンドのオプションと認識してしまうからです。

「'」を括ったシングルクオーテーションと認識させず、そのものと認識させるには「\」エスケープシーケンスを前に付加して削除を行います。

# rm \'
rm: remove 通常の空ファイル `\''? y


これでも削除できないのは「-abc」のように「-」マイナスが先頭に来てしまったファイルとなります。
このような場合は、「rm」コマンドの前に「--」マイナスを2つ付与して削除が可能です。

# rm -- -abc
rm: remove 通常の空ファイル `-abc'? y

上記は、「-」を2つ指定する事によってオプションを無効(誤魔化す)にする事ができます。

■ コンテンツ関連情報

ページ先頭へ


Copyright(©)2004-2017 First home server construction. All Right Reserved.