I may have replied too hastily. The 'i' is the original variable your
using a regex substitution form, is that it?
chutsu wrote:
> Well I think the follow code will help you
>
> for i in *;do mv "$i" "${i/\&/} done;
>
> -So basically the for loop runs through every file in that particular
> directory.
> -Uses the "mv" command to rename files, the second statement is just
> search and replace
> -The "/\&/" means I want to search the term "&" and replace it
> with "something".
> -NOTE: the "\" infront of the "&", because you need to escape special
> symbols such as "%" "-" etc ...
> -After the second "/" in the search and replace term you can put
> whatever you want...
> eg.) if I wanted to replace "&" with "HELLO" the move command will
> be:
>
> mv "$i" "${i/\&/HELLO}"
>
> Hope this helps :)
> Chris
>
> On Dec 21, 5:15 pm, tuxsun1 <[email protected]> wrote:
>
>> I have always used Bash variable substitution chars (#, ##, %, %%) to
>> rename files when replacing the beginning or end of a filename.
>>
>> Now I have a need to replace the middle portion of filenames from their
>> html code, '&', to 'and'.
>>
>> e.g. list of filenames
>>
>> Payables & Receivables
>> Sales & Marketing
>> Shipping & Receiving
>>
>> Normally, I would use something like, for i in '*&*'; do mv "$i"
>> (this is where I'm stumped); done
>>
>> TIA!
>>
>
>
--
You received this message because you are subscribed to the Linux Users Group.
To post a message, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit our group at
http://groups.google.com/group/linuxusersgroup