[Q]
スペースやカッコが名前の中に入ったファイルやディレクトリが出来てしまい
ました。
c02:~/tmp> ls -l total 2 -rw-r--r-- 1 ohba wheel 0 10/31 16:52 kakko(file drwxr-xr-x 2 ohba wheel 512 10/31 16:51 space dir そのディレクトリに移ろうとしても、 c02:~/tmp> cd space dir cd: アーギュメントが多過ぎます. と言って怒られ、ファイルを消そうとしても、 c02:~/tmp> rm kakko(file "("が多すぎます. と言われて消せません。どうすればいいのでしょうか?
[A]
スペースやカッコや|などは、シェルの文法として解釈されてしまうので、通
常、ファイル名にこれらの文字を含めてはいけません。出来てしまったものは、
次の方法で、消すか、名前を変更してください。
c02:~/tmp> mv space\ dir space_dir c02:~/tmp> rm kakko\(file
\ によって、シェルは次の文字を解釈せず、そのままの文字として扱います。 上の例の場合は、元々、space や kakko で始まるファイルやディレクトリー はそれぞれひとつしかないので、(tcsh では、) mv s と打った後に、TABキー を打つと、mv space\ dir まで補間してくれます。
また、fd や mule の dired-mode (M-x dired または C-x d で起動) を利用 することも出来ます。