$sf = "\\\\domain\\dept\\dcgsi\\Extracts\\Tableau_Unlicensed_Users.csv"
if (Test-Path $sf){
Remove-Item $sf
}
$query = @"
\\copy (SELECT Name
FROM _users
WHERE licensing_role_name = 'Unlicensed')
TO $sf
WITH CSV DELIMITER ','
"@
$conn = New-Object -ComObject ADODB.Connection
# use existing 64 bit ODBC System DSN that we set up manually
$conn.Open('PostgreSQL30')
$conn.Execute($query)
$conn.Close()
Я получаю сообщение об ошибке "\" в строке с $conn.Execute()
, когда пытаюсь это сделать.Я предполагаю, что это связано с экранированием символов, и, возможно, я делаю это неправильно.
Есть ли лучший способ сделать это с PowerShell, если мне просто нужно получить поле имени любой записи из _users и вывести егоto CSV?
В конце концов, я добавлю к этому больше, чтобы просмотреть каждую запись в CSV и выполнить tabcmd для удаления всех нелицензированных пользователей.