Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have some OS X files, some of which have hyphens in their filenames. I want to change all occurrences of hyphens to underscores.

How can I do this from the command line on OS X?

So, if I have this:

a.txt
b-c.txt
d_e-f.txt

I'd like to rename them to this:

a.txt
b_c.txt
d_e_f.txt
share|improve this question
add comment

1 Answer

up vote 2 down vote accepted

In Bash, use simple substring replacement, and replace all occurrences of - with _.

for f in *.txt; do mv "$f" "${f//-/_}"; done

The loop will iterate over each .txt file in the current directory.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.