The first set of output for the milo account looks very odd indeed.
There's what looks like a shell prompt, but I don't see where the 'id' command was entered. Yet there's the output from 'id', followed by the bash error, and then a couple more prompts run together on the same line. Unless there was some kind of copy/paste error, that's some very unusual Terminal output.
I've seen wacky things like this when the shell command in Terminal has been damaged in some way. Not the shell program itself, but the Terminal setting of what to run when a Terminal window is opened. That setting used to be under:
Terminal > Preferences > Startup pane > Shells open with:
If you entered something that wasn't a proper executable's pathname, then it would cause serious disruption. I accidentally did it a couple times, and it took some fiddling with the Terminal preferences file to get things back to where a window would open and show a shell.
My guess, based on the error message about an "unexpected token '('" is that there's an open parenthesis in the command. Sorry I don't know where the Terminal preferences are stored in recent versions, but ~/Library/Preferences would be a good place to start.
If you can look into the preferences plist, it might be the Shell item. The command line to read the value is:
Code:
defaults read com.apple.Terminal Shell
You could also try dragging the file ~/Preferences/com.apple.Terminal.plist to the Desktop (with Terminal quit), then relaunch Terminal.
I say "used to be" because I don't have a recent OS version booted right now, so I can't look at the Terminal preferences window. The above is for older OS versions, and may be radically different in modern times.
EDIT
Something else that just occurred to me is it could be a malformed shell profile file. In hindsight, this seems much more likely than a borked Terminal Preferences setting.
These files reside in your home dir, and their names start with "." so they're normall invisible to Finder.
The common profile at /etc/profile is almost certainly fine, since other accounts work.
The local files that bash then looks for are (in order):
~/.bash_profile
~/.bash_login
~/.profile
So if you tell Finder to show hidden files, look for any of those and move them to the Desktop. Then try relaunching Terminal.