This command would seem to do what you wish ```none for file in *.* ; do cp $file ${file//a\./b\.} ; done ``` Adapted from [this answer][1] to [Renaming part of a filename][2] Actually, you could just do ```none for file in * ; do cp $file ${file//a\./b\.} ; done ``` Note that the `.` has to be escaped using `\.`. This is primarily because your example is a filename of a single letter, which could conflict with a letter in the extension. If your filenames are a bit more explicit, such as `doggy.txt`, `doggy.pdf`, `doggy.xls`, etc., and you want to change them to `feline.txt`, etc., then you could do away with escaping the `.`, like so: ```none for file in *.* ; do cp $file ${file//doggy/feline} ; done ``` [1]: https://stackoverflow.com/a/17789186/4424636 [2]: https://stackoverflow.com/q/1392768/4424636