Anders,

On Monday 12 March 2007 08:42, Anders Norrbring wrote:
> I'm looking for shell help..
> I have a directory with thousands of files named in the format
> 'file_XX_YY.txt' where XX would represent 2 characters and/or digits
> and YY is numbers from 00 to 99.
>
> What I want to do is to move all files named 'file_XX*' to
> directories named as 'file_XX'.

Generate the list of directories:

dirNames=( 
    $(ls |sed -rn 's/file_(..)_[0-9][0-9].txt/file_\1/p' |sort -u )
)

Iterate over those directory names, creating the directory if necessary 
and then moving all the corresponding files into that directory:

for dirName in "[EMAIL PROTECTED]"; do

    mkdir -p "$dirName"

    for fileName in "$dirName"_[0-9][0-9].txt; do
        mv "$fileName" "$dirName"
    done

done



> Any suggestions for a command line or script doing just that?
> --
>
> Anders Norrbring
> Norrbring Consulting

What sort of consulting do you do?


Randall Schulz
-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to