- PR -

「`」で始まるディレクトリが消去できない

1
投稿者投稿内容
dchar
常連さん
会議室デビュー日: 2004/05/10
投稿数: 41
投稿日時: 2004-07-15 10:04
質問させてください。

ディレクトリ名が「`」で始まるディレクトリを誤って作成してしまったのですが(仮に「`hoge」とします)、
rm -r `hogeで消去しようとすると「>」を表示して何かをきいてきます。
また日付のディレクトリを作成しようとして失敗し、「 `date'+%y%m%d'`」という名前のディレクトリを作ってしまったのですが、
rm -r `date'+%y%m%d'`としてこちらを消去しようとすると「 `date'+%y%m%d'`というコマンドはありません」とbashが言って来ます。

こういった場合はどうしたら消せるのでしょうか?
また何が原因なのでしょうか?
環境はredhat9です。

ご教授よろしくお願いいたします。
非武装エリア
大ベテラン
会議室デビュー日: 2004/03/03
投稿数: 202
お住まい・勤務地: 日本・たこ部屋
投稿日時: 2004-07-15 10:24
# rm -r '`hoge'
# rm -r '`date\'+%y%m%d\'`'

で如何でしょう?

Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-07-15 10:26
ダブルクォーテーションで囲む→シングルクォーテーションでしたっけ?
rm -i * で、より分ける

[ メッセージ編集済み 編集者: Jitta 編集日時 2004-07-15 10:26 ]
非武装エリア
大ベテラン
会議室デビュー日: 2004/03/03
投稿数: 202
お住まい・勤務地: 日本・たこ部屋
投稿日時: 2004-07-15 10:26
あれ、メッセージに¥マークを入れたんですが記録されないようですね。

# rm -r '`date\\'+%y%m%d\\'`'

でどうだ。
dchar
常連さん
会議室デビュー日: 2004/05/10
投稿数: 41
投稿日時: 2004-07-15 12:18
非武装エリアさんjittaさんレスどうもです。

お二人の書き込みをヒントに
rm -r *hoge

rm -r *hoge*
で何とかしました。

ありがとうございました。

#原因ってなんなのでしょうか???
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2004-07-15 13:12
`string` は、``で囲まれた文字列をコマンドとして実行し、
その結果を返すものです。

$ echo cal

$ echo `cal`

で、結果を比べてみてください。

というわけで、「`」を通常の文字として利用するには、エスケープしなければなりません。

[ メッセージ編集済み 編集者: Edosson 編集日時 2004-07-15 13:13 ]
NeXT
大ベテラン
会議室デビュー日: 2004/04/06
投稿数: 215
お住まい・勤務地: 江戸
投稿日時: 2004-07-15 14:39

emacs が利用できるのであれば dired モードで削除することもできますね。
C-x d で一覧を表示させ,d で削除したいファイル/ディレクトリをマークし
x で削除を実行。
といった感じでしょうか。
はゆる
ぬし
会議室デビュー日: 2004/02/16
投稿数: 1008
お住まい・勤務地: 首都圏をウロウロと
投稿日時: 2004-07-16 13:39
こんにちは〜。

引用:

dcharさんの書き込み (2004-07-15 12:18) より:
#原因ってなんなのでしょうか???


こちらの連載あたりも参考になると思います。
# シェルって大事ですよ

 ・ 連載記事 「ステップ・バイ・ステップ・シェルスクリプト」 (@IT さんより)
1

スキルアップ/キャリアアップ(JOB@IT)