Мне было поручено получить пользователей и группы из файла tac_plus, который находится в нашей среде Linux. Человек до меня создал сценарий python, который больше не работает, и я сам не python.
Этот сценарий в основном использовался для вывода имени пользователя и фамилии, а также доступа group
Ниже приведен скрипт, созданный человеком. Если кто-то может пролить некоторый свет, который был бы очень благодарен
#!/usr/bin/python
# v0.1 read_tacacs.py
# Read tac_plus.cfg file and grep username/full_name/access type into column list.
from datetime import datetime
i = datetime.now()
user_name = []
full_name = []
group_access = []
with open('/usr/local/etc/tac_plus.cfg', 'r') as searchfile:
for line in searchfile:
if 'user =' in line:
user_name.append(line.split()[2])
if 'Full Name:' in line:
full_name.append(line.split()[3]+ ' ' + line.split()[4])
if 'member' in line:
if '@all' in line:
line = line.split()[2]
group_access.append(line.replace("@all",""))
#group_access.append(line)
#group_access.append(line.split()[2])
print '{0:20} {1:25} {2}'.format('TACACSID','Full Name', 'Access')
for x in range(len(user_name)):
print '{0:20} {1:25} {2}'.format(user_name[x], full_name[x], group_access[x])
print '\nDate Generated: ' + i.strftime('%d/%m/%Y - %H:%M:%S')
searchfile.closed
Ниже приведена ошибка, которую я получаю.
Traceback (последний вызов был последним): Файл "./read_tacacs. py ", строка 20, в full_name.append (line.split () [3] + '' + line.split () [4]) IndexError: список индексов выходит за пределы диапазона
Любая помощь будет очень признателен
Заранее спасибо
Рави