私は誤って.というファイルを生成しましたが、°
今ではbashで削除するのに問題があります。
[/opt/etc/sudoers.d] # ls -l
-r--r----- 1 admin administ 21 Feb 3 23:54 010-root
-rw-r--r-- 1 admin administ 20 Feb 3 23:50 °
入力すると、rm °
キャレットが行の先頭に移動するようです。つまり、文字は入力されません。
(とにかく私はMac OSX端末を使用してSSH経由で接続されたリモートシステムでbash 3.2.0を実行しています)
どんなアイデアがありますか?
答え1
どうですか?
rm -i ?
私の考えにはこれがうまくいくと思います...
答え2
rmなどのワイルドカードを使用して一致するものが多い場合は、rm -i ?
いつでもinode番号で削除できます。
ls -i
find . -inum <inode> -ok rm '{}' \;
その中には、現在ディレクトリにあるファイルのすべてのinode番号をリストする<inode>
inode number fromがあります。ls -i
答え3
答えrm -i ?
は良いです。
これはまた働きます:
rm [^a-z]
同じ
rm [[:punct:]]
なぜ行の先頭に戻るのか、どのように入力しましたか˚
?たぶん、入力はシェルCtrl+A
が行の先頭に移動するために使用する別のショートカットとして解釈されるかもしれません。
utf-8
端末アプリケーションにエンコードまたは文字セットを設定する設定がありますか?locale
ターミナルセッションで実行すると何が印刷されますか?
このファイルをどのように作成しましたか?たぶん、同様の方法で削除できますか?