[vox-tech] quoting question in perl

Micah Cowan vox-tech@lists.lugod.org
Thu, 20 Dec 2001 17:56:21 -0800


On Thu, Dec 20, 2001 at 05:06:29PM -0800, Peter Jay Salzman wrote:
> if you have:
> 
> system("rm $filename");
> 
> and $filename = "a file", you get an error because you're trying to delete
> two files, "a" and "file".
> 
> what's the proper way of quoting $filename so that the shell sees the file
> "a file" and not the two non-existant files "a" and "file"?
> 
> pete

Well, the direct answer to your question would be to use:

  system("rm '$filename'");

or something similar so that the shell sees the quoting.

But if you actually want to delete a file, why not use Perl's builtin
unlink() function instead? i.e.:

  unlink $filename;

HTH,
Micah