左右の二重引用符をエスケープする方法は?

左右の二重引用符をエスケープする方法は?

名前を変更したいMV注文する。ファイルは左右の二重引用符で囲まれています。例えば

「私のファイル名」それに変えたい 私のファイル名

特殊文字をエスケープする方法そして。私は一般的な二重引用符について知っていますただし、何とか特別な二重引用符をエスケープする方法はありません。

今、名前を変更する方法は、グラフィカルファイルマネージャnautilusを使用することです。端末エミュレータとして gnome 端末を使用します。

答え1

私が知っている限り、左右の二重引用符はbashで特別なものではないので、一般的な二重引用符のようには機能しません"。彼らは逃げる必要はありません。

' 'すべてを文字通りにするには、すべてを一重引用符で囲みます。

問題は引用符ではなく名前の空白である可能性があります。

答え2

ls *'My file name'* | od -t x1o1acファイル名バイトは、16進数、8進数、ASCII名、およびC表記で表示する必要があります。

あなたの引用符が左(および右)二重引用符、UTF-8エンコーディングのマルチバイトのようです。

$'...'Bash文字列入力は任意の8進数で使用できます。

$ echo $'\342\200\234 \342\200\235'
“ ”
$ echo $'\342\200\234 \342\200\235' | od -t x1o1ac
0000000  e2  80  9c  20  e2  80  9d  0a
        342 200 234 040 342 200 235 012
          b nul  fs  sp   b nul  gs  nl
        342 200 234     342 200 235  \n
0000010

関連情報