Wann sollten Platzhalter innerhalb / außerhalb von doppelten Anführungszeichen stehen?

Was ist der richtige Weg, um mit einem Platzhalter und einer Variablen viele Dateien zu löschen? Das ist meine Variable"$dir"

$ echo "$dir"
/home/path/to/file

Hier habe ich den Platzhalter in den doppelten Anführungszeichen, aber es funktioniert nicht:

$ rm "$dir/data/ffg_per_product/ffg*"
rm: cannot remove `/home/path/to/file/data/ffg_per_product/ffg*': No such file or directory

Hier habe ich den Platzhalter außerhalb der doppelten Anführungszeichen und es funktioniert:

$ rm "$dir/data/ffg_per_product/ffg"*

Und hier können Sie sehen, dass die Dateien gelöscht wurden:

$ ls -lth ffg_per_product/ffg* | wc -l
ls: cannot access ffg_per_product/ffg*: No such file or directory
0

So was ich wissen möchte, ist, dass ich die Anführungszeichen richtig verwende, um die Dateien zu löschenrm "$dir/data/ffg_per_product/ffg"* Mit dem Platzhalter die Anführungszeichen setzen? Oder gibt es einen anderen / besseren Weg?

HINWEIS wahrscheinlich offensichtlich für einige, aber nur als Referenz und um klar zu sein, gilt das gleiche fürls z.B.ls "$dir/data/ffg_per_product/NAME"* | wc -l Muss der Platzhalter in diesem Fall außerhalb der doppelten Anführungszeichen stehen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage