3

Я пытаюсь создать скрипт powershell, который создает новую папку с текущей датой (в формате yyyy-MM-dd) в качестве имени.

Вот что у меня так далеко:

PS C:\Users\me\Desktop> powershell.exe -command "new-item ($(get-location)
+ (Get-Date).year + "-" + (Get-Date).month + "-" + (Get-Date).day) -type directo
ry"
Die Benennung "C:\Users\me\Desktop" wurde nicht als Name eines Cmdlet, ein
er Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überp
rüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern ent
halten), und wiederholen Sie den Vorgang.
Bei Zeile:1 Zeichen:35
+ new-item (C:\Users\me\Desktop <<<<  + (Get-Date).year +  - + (Get-Date).
month + - + (Get-Date).day) -type directory
+ CategoryInfo          : ObjectNotFound: (C:\Users\j.moore\Desktop:String
) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

2 ответа2

3

Попробуй это:

 New-Item "$((get-date).toString('yyyy-MM-dd'))" -ItemType directory

или же:

md "$((get-date).toString('yyyy-MM-dd'))"

Пояснения с этого сайта:

$() позволяет использовать вывод команды в строке

() Вокруг get-date снова говорят "Выполните это первым", чтобы мы могли использовать методы объекта DateTime, возвращаемого get-date

Метод toString() объекта DateTime принимает строку форматирования в качестве входных данных.

0

Попробуй это:

mkdir (Get-Date -Format "yyyy-MM-dd")

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .