EXAMPLE 1: from BASH terminal (doesn't work):
$(date | sed -r 's/[ ]{2,}/ /gi')
EXAMPLE 2: from a BASH shell script (does work):
ECHO_DATE=$(date | sed -r 's/[ ]{2,}/ /gi')
CodePudding user response:
In the first example, you're running the result of the evaluation in the $()
. Right now, that result starts with Mon
, so you'll get a command not found
error. In the second, you're assigning the result to a variable. To see it immediately, you can do:
echo "$(date | sed -r 's/[ ]{2,}/ /gi')"
But you also don't need to evaluate an extra step at all:
date | sed -r 's/[ ]{2,}/ /gi'
I would also recommend checking out man date
, because date
has builtin formatting options.