This is either mondo sysadmin stuff or homework. Assuming the former, this is kinda crappy, but
Code:
user="$(awk '{ print $1 }' file)"
>file2
for (( i=1; i<=$1; i++)); do
sed "s/$user/$user$i/g" file >> file2
done
might do if file contains only a single line in the format you gave. Otherwise, you'd need a way to extract the line from the first file. And this might do that,
Code:
user="$(awk '/'$1'/{ print $1 }' file)"
>file2
for (( i=1; i<=$2; i++)); do
sed "s/$user/$user$i/g" file >> file2
done
Doesn't work if USER is 'John Doe', though. A 'John Doe5000' doesn't make much sense, though.
I'm sure there's a better way, but that's the first thing that came to mind.