Ada kerjaan kantor yang berkaitan dengan pre and post data processing yang membutuhkan modifikasi file konfigurasi sebelum proses lebih lanjut. Untuk keperluan ini saya menggunakan bahasa pemrograman Python bukan dengan bahasa pemrograman Perl yang biasa saya gunakan.

Untuk menjaga kode etik perusahaan pastinya saya mengubah kode program ke konteks yang lebih umum.

#!/usr/bin/python
# copyleft @2020 Askari Azikin (askari.azikin)
# Usage: py modify_config_file.py > result.txt
# 

# ---------------------------------------
# Load regular expression (regex) library
# ---------------------------------------
import re

filename = '10May2019_config'

# ------------------------------
# String variable initialisation
# ------------------------------
merged_string = ''

# ------------------------
# Delimiter initialisation
# ------------------------
delimiters = 'echo |# '

# --------------------------------------
# Open and read the file to be processed
# --------------------------------------
with open(filename) as file_object:
    lines = file_object.readlines()

# -----------------------------------------
# Merge the content of file into one string 
# -----------------------------------------
for line in lines:
    merged_string += line.rstrip('\n')

# --------------------------------
# Lists comprehension conditionals
# --------------------------------
# [a if C else b for i in items]
# ['yes' if v == 1 else 'no' if v == 2 else 'idle' for v in l]
temp_lists = ['echo '+e if re.findall(r'add|remove',e) else e if re.findall(r'#!',e) else '# '+e+'\n' if re.findall(r'ni\s.*',e) 
        else '# '+e for e in re.split(delimiters, merged_string)]

# ----------------
# Print the result
# ----------------
for result in temp_lists:
    print (result)

Leave a Reply

Your email address will not be published. Required fields are marked *