50 lines
1.8 KiB
Plaintext
50 lines
1.8 KiB
Plaintext
import os
|
|
import pandas as pd
|
|
|
|
# server_list.txt 파일이 있는 폴더 경로
|
|
server_list_folder = '/app/idrac_info/server_list/' # 실제 경로로 수정
|
|
server_list_file = os.path.join(server_list_folder, 'server_list.txt')
|
|
|
|
# 추출할 .txt 파일들이 있는 폴더 경로
|
|
data_files_folder = '/app/idrac_info/mac/' # 실제 경로로 수정
|
|
|
|
# server_list.txt 파일에서 파일명을 읽어들임
|
|
with open(server_list_file, 'r') as f:
|
|
file_names = f.read().splitlines()
|
|
|
|
# 각 파일의 내용을 저장할 리스트 생성
|
|
data_list = []
|
|
index_list = []
|
|
|
|
# 각 파일을 읽어들여 리스트에 저장
|
|
sequence_number = 1
|
|
for file_name in file_names:
|
|
file_path = os.path.join(data_files_folder, f'{file_name}.txt')
|
|
if os.path.exists(file_path):
|
|
with open(file_path, 'r') as file:
|
|
lines = file.readlines()
|
|
for line in lines:
|
|
cleaned_line = line.strip().upper() # 대문자로 변환
|
|
if cleaned_line: # 빈 라인은 무시
|
|
data_list.append(cleaned_line)
|
|
if len(cleaned_line) == 7:
|
|
index_list.append(sequence_number)
|
|
sequence_number += 1
|
|
else:
|
|
index_list.append('') # 7자가 아닌 경우 빈 문자열로 유지
|
|
else:
|
|
index_list.append('') # 빈 라인은 인덱스에도 빈 값으로 유지
|
|
else:
|
|
data_list.append('')
|
|
index_list.append('') # 파일이 없을 경우 빈 문자열로 유지
|
|
|
|
# 데이터를 DataFrame으로 변환하여 B열부터 시작하도록 함
|
|
df = pd.DataFrame({
|
|
'Index': index_list,
|
|
'Content': data_list
|
|
})
|
|
|
|
# 엑셀 파일로 저장
|
|
output_file = '/app/idrac_info/idrac_info/mac_info.xlsx'
|
|
df.to_excel(output_file, index=False, header=False)
|