#powershell #file #copying
#powershell #файл #копирование
Вопрос:
Я пытаюсь скопировать файл конфигурации в Appdata Local area, чтобы он устанавливал настройки профиля программного обеспечения по умолчанию для каждого пользователя на рабочей станции. Я пытаюсь сделать сценарий универсальным, чтобы он работал на нескольких рабочих станциях. Папка, в которую я копирую, отличается для каждой рабочей станции. На каждой рабочей станции имя будет одинаковым вплоть до уникального кода в конце. Смотрите пример кода ниже для получения подробной информации.
По какой-то причине я не могу найти правильный тег powershell для копирования всем пользователям, когда я использую *, он возвращает ошибку недопустимых символов. Я также не могу разработать способ настройки его копирования в согласованную именованную папку с ее уникальным тегом в конце. (Тег в конце необходим для работы программного обеспечения.)
$Source = 'd:ArcProInstallMediauser.config'
$Destination = 'c:users*appdatalocalesriArcGisPro_StrongName_UNIQUE CODE NUMBER HERE 2.3.0.0'
Copy-Item -Path $Source -Destination $Destination -Force
Я ожидаю, что скрипт сможет скопировать файл конфигурации пользователя из расположения по умолчанию на каждой рабочей станции в каждый профиль пользователя на рабочей станции. Я хочу, чтобы это работало на нескольких рабочих станциях, чтобы мне не приходилось редактировать код каждый раз, когда я его использую.
Комментарии:
1. Вы можете использовать подстановочные знаки в исходном пути, но не в пути назначения.
Ответ №1:
Вы можете получить путь с подстановочным знаком с помощью Get-ChildItem
$Destination = Get-ChildItem -Path c:users*appdatalocalesriArcGisPro_StrongName_*2.3.0.0
Комментарии:
1. Спасибо! Такое простое исправление поставило меня в тупик на несколько часов