У меня есть таблица с именами файлов, а также идентификатор пользователя для человека, чей это файл.Что мне нужно сделать, это переименовать файл так, чтобы userID был в имени файла.Сейчас файл может быть 01234_main1.3gp
, а пользователь - 987654
, поэтому я бы хотел, чтобы он стал 987654_main1.3gp
.
. То, что у меня ниже, переименовывает файлы в system.Data.Datarow+_main1.3gp
.Я знаю, что переменная работает, непосредственно перед командой переименования я делаю Write-Output
, и там есть правильная последовательность чисел.
$items = Get-ChildItem -Name -Path 'c:\main1'
foreach ($item in $items) {
$Query = @"
SELECT [su_ID] as $SU_ID
FROM [database].[dbo].[table]
WHERE (assetLog_m1audio = '$item')
"@
Invoke-Sqlcmd -ServerInstance surveyname -Database database -Query $Query
Write-Output $su_ID
Rename-Item C:\main1\$item $su_ID+'_main1.3gp'
}