In Linux (Bash), there's a way to use a command as a parameter for another command, using back-ticks:
> echo ===== `time` =====
This would print:
===== The current time is: 12:22:34.68 =====
Is there a way to do this in cmd.exe on WIndows ?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
In Windows the '( )' operator has a similar behavior as the Bash command substitution.
This Linux script:
my_linux_variable=$(ls) my_alternate_linux_variable=`ls` echo $my_linux_command=$(ls) echo $my_alternate_linux_command=`ls`
gives a similar result as Windows PowerShell:
$my_windowsPS_variable = (dir) $my_windowsPS_variable
and as Windows CMD:
set my_windowsCMD_variable=(dir) %my_windowsCMD_variable%
No, but here is the workaround:
D:\>time /t 08:18 PM D:\>time /t > time.tmp D:\>set /p time=<time.tmp D:\>echo == %time% == == 08:18 PM ==
See also: Batch equivalent of Bash backticks.