bash で文字列内の空白を一致させるにはどうすればいいですか?

bash で文字列内の空白を一致させるにはどうすればいいですか?
ls
Session 9 - Terminal Value.mp4

今、それを削除したいです。

shopt -s dotglob
rm -rf  .*.mp4

効果はなく、ファイルはSession 9 - Terminal Value.mp4そこに残ります。.空白が一致しない可能性があります。

答え1

dotglob.は、glob パターンが使用されるときに非表示になる (.パターン内に が明示的に存在しない限り)、で始まるファイル名 (ドットファイル) を一致させるために使用されます。

例:

$ shopt dotglob
dotglob         off
$ touch .lala
$ ls *lala
ls: cannot access '*lala': No such file or directory
$ shopt -s dotglob
$ shopt dotglob
dotglob         on
$ ls *lala
.lala

パターンは、.*.mp4リテラルで始まり、.その後に任意の文字列が続き*、その後に が続くファイル名に一致します.mp4

.Session 9 - Terminal Value.mp4たとえば、ファイル名と一致します(dotglob最初のファイル名.がパターン内に存在するため、有効かどうかは関係ありません)。

グロブはスペース文字にもマッチするので、必要なのは

rm *.mp4

関連情報