Я пытаюсь создать цикл for с двумя файлами списков, который в основном будет повторять скрипт для изменения владельца базы данных из нескольких баз данных.Файлы списка содержат несколько серверов, а список имен для входа содержит несколько имен для входа.Но они разделены строкой, чтобы сопоставить каждую базу данных с именем для входа.
Это то, что я имею до сих пор, но оно, очевидно, берет первое имя сервера и перебирает его по каждому имени входа, а затем переходит наимя следующего сервера.
for servername in $(cat servername.list); do
for loginname in $(cat loginname.list); do
echo "USE $servername"
echo "go"
echo "EXEC sp_changedbowner '$loginname'"
echo "go"
echo "USE master"
echo "go"
echo ""
done
done
Я хочу, чтобы вывод был таким:
USE server1
go
EXEC sp_changedbowner 'login1'
go
USE master
go
USE server2
go
EXEC sp_changedbowner 'login2'
go
USE master
go