【问题标题】:Get the day's name From a date [duplicate]从日期获取当天的名称[重复]
【发布时间】:2017-10-10 12:21:05
【问题描述】:

我想显示给定日期的日期名称。我有一个代码,可以根据系统日期为我提供姓名的日期。

@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%

【问题讨论】:

标签: powershell date batch-file cmd weekday


【解决方案1】:

改编自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%

【讨论】:

  • @LS_DEV 当我尝试代码时:@echo offfor /f "delims=" %%d in ('powershell (get-date %day%/%month%/%year%^).dayofweek') do set dow=%%decho %dow% 它在命令提示符下给了我:ECHO is off。在运行程序之前,我应该在我的 cmd 上启用一些选项吗? (昨天试过就知道效果很好)
  • 您在通话前是否定义了yearmonthday
  • 使用powershell (get-date %day%/%month%/%year%).dayofweek测试输出
  • 是的,我在调用它们之前已经定义了它们。如何测试 powershell (get-date %day%/%month%/%year%).dayofweek ? (我是 cmd.exe 的初学者)。当我测试echo powershell (get-date %day%/%month%/%year%).dayofweek 它给了我powershell (get-date 31/10 /2017).dayofweek
  • 批量中只需将powershell ... 放在for ... 之前,这样您就会看到ps 调用的结果,该结果必须与for will catch 相同。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-24
  • 1970-01-01
相关资源
最近更新 更多