2017-10-10 44 views
0

我想显示给定日期的当天的名称。我有一个代码,可以从系统日期给我名字的一天。获取当天的名字从日期起

@for /F "tokens=1 delims=, " %%i In ('powershell date') do set dow=%%i 
echo %dow% 

我怎样才能显示我将放入的任何日期的当天名称? 我想要做这样的事情(我已经设定的变量日,月和年之前):

@for /F "tokens=1 delims=, " %%i In ('powershell %day%/%month%/%year%') do set dow=%%i 
echo %dow% 
+1

这不是'bash',而是Powershell或M $批处理文件,我想。 – Alfe

+1

@Alfe我已将其编辑为批处理文件 –

+0

https://stackoverflow.com/questions/11364147/setting-a-windows-batch-file-variable-to-the-day-of-the-week – Richard

回答

0

https://technet.microsoft.com/en-us/library/ff730960.aspx改编:

for /f "delims=" %%d in ('powershell (get-date %day%/%month%/%year%^).dayofweek') do set dow=%%d 

出于测试目的:

@echo off 
:... 
echo Command line: powershell (get-date %day%/%month%/%year%).dayofweek 
echo Result: 
powershell (get-date %day%/%month%/%year%).dayofweek 
for /f "delims=" %%d in ('powershell (get-date %day%/%month%/%year%^).dayofweek') do set dow=%%d 
echo dow=%dow% 
+0

@LS_DEV when ('powershell(get-date%day%/%month%/%year%^)。dayofweek')do set dow ='%% d' %% d''echo%dow%''它在命令提示符下给出了我:'ECHO is off'。我应该在运行程序之前在我的cmd上启用了一些选项吗? (昨天我试过的时候知道它工作的很好) –

+0

你在打电话之前是否定义过'year','month'和'day'? –

+0

使用'powershell测试输出(get-date%day%/%month%/%year%)。dayofweek' –