Переименование файлов на основе запроса SQL - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть таблица с именами файлов, а также идентификатор пользователя для человека, чей это файл.Что мне нужно сделать, это переименовать файл так, чтобы 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'
}
...