Skip to content

Instantly share code, notes, and snippets.

@jurandysoares
Created September 3, 2022 18:25
Show Gist options
  • Save jurandysoares/1bc0858215397482c5096015f3493cb6 to your computer and use it in GitHub Desktop.
Save jurandysoares/1bc0858215397482c5096015f3493cb6 to your computer and use it in GitHub Desktop.
Cria vários usuários para o Samba4 a partir de um arquivo CSV
#!/usr/bin/env pwsh
$URL_CSV = 'https://raw.githubusercontent.com/jurandysoares/eleitores-ifrn-2019/master/csv/alunos.csv'
$ARQ_CSV = 'alunos.csv'
$info_texto = (Get-Culture).TextInfo
Invoke-WebRequest -Uri $URL_CSV -OutFile $ARQ_CSV
$nomes = (Import-Csv -Path $ARQ_CSV).Nome
$usuarios = @{}
$familia = 'medeiros'
$nomes | ForEach-Object {
If ($_ -match '\b'+$familia+'\b') {
$nome_completo = $info_texto.ToTitleCase($_.ToLower())
$nome_quebrado = $nome_completo.Split()
$nome = $nome_quebrado[0]
$sobrenome = $nome_quebrado[1..-1] -Join " "
$nome_usuario = $nome.ToLower() + '.' + $familia
If (-Not ($usuarios.ContainsKey($nome_usuario)))
{
$usuarios[$nome_usuario] = $nome_completo
$cmd_add_usr_samba = 'samba-tool user create ' +
'--use-username-as-cn ' +
'--given-name "' + $nome + '" ' +
'--surname "' + $sobrenome + '" ' +
'--description "' + $nome_completo` + '" ' +
'' + $nome_usuario
Write-Host $cmd_add_usr_samba
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment