I have seen similar questions posted around and have tried researching this topic prior to asking you all, but I am stuck. I am trying, through command-line argument, take a directory, search for all file extensions in that directory that end in .pl and change them to .txt. I then want to go into any of the subdirectories in that parent directory and do the same thing. I am trying to use glob, because it seems like a neat little function. I don't have to use glob. I was just trying to solve this by using glob, so I am open to any other suggestions.
I have tried changing the file extensions in one directory. I am trying to start small, but it does not work as intended. There are no compile errors, but I believe my understanding of some of the commands are incorrect.
This is what I have so far:
#!/usr/local/bin/perl use strict; use warnings; my @argv; my $dir = $ARGV[0]; my @files = glob "${dir}'*pl*'"; foreach (@files) { next if -d; (my $txt = $_) =~ s/pl$/txt/; rename($_, $txt); }
Test Example: "Insert a directory:" TestDir "Changing file formats in TestDir from .pl to .txt." "Changing file format in subdirectories of TestDir from .pl to .txt" etc.
Any help is appreciated.
In reply to Use Of Glob On File Extensions by NewToPerl777
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |