![執行命令替換 Windows 命令提示符](https://rvso.com/image/1336275/%E5%9F%B7%E8%A1%8C%E5%91%BD%E4%BB%A4%E6%9B%BF%E6%8F%9B%20Windows%20%E5%91%BD%E4%BB%A4%E6%8F%90%E7%A4%BA%E7%AC%A6.png)
如何在 Windows 命令提示字元下執行命令替換?
指令替換是 UNIX shell 的一個非常強大的概念。它用於將一個命令的輸出插入到第二個命令中。例如,有一個作業:
$ today=$(date) # starts the "date" command, captures its output
$ echo "$today"
Mon Jul 26 13:16:02 MEST 2004除了賦值之外,這也可以與其他命令一起使用:
$ echo "Today is $(date +%A), it's $(date +%H:%M)"
Today is Monday, it's 13:21這將呼叫 date 命令兩次,第一次列印星期幾,第二次列印目前時間。
我需要知道在命令提示字元中執行此操作(我已經知道有一種方法可以使用命令的一部分來執行類似的操作for
,但這種方法更加混亂和複雜。
答案1
在 DOS 中你不能這樣做。
如果您所說的 DOS 指的是 Windows 命令處理器,cmd.exe
那麼您可以使用以下命令來取得命令的輸出for /f
:
for /f %%x in ('date') do set "today=%%x"
根據您的要求,這可能會變得更複雜一些。