Parse information from Linux file to Windows using python
I am trying to parse some contents from my Linux environment and dump them into an excel file in my Windows environment using python.
eg: foo/bar/myfile.txt has some contents I want to stick to an excel file in my windows env
I know how to extract the information I need but I cannot find a solution to create a file in my Windows OS from my linux env in python. any little info helps. Thanks!
import csv import sys import subprocess def env_key_values(host): """ The subprocess.Popen will execute the env command on the remote Linux server then return the results. """ ssh = subprocess.Popen(["ssh", host, "env"], shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE) """ Read each line from stdout selecting only the varname=value lines. Split the line on the '=' character. Use the first element as the Linux environment variable name. Use the remaining elements as the value. yield the result. """ for line in ssh.stdout: str_line = line[:-1].decode("utf-8") if "=" in str_line: key_values = str_line.split("=") values = "=".join(key_values[1:]) yield (key_values, values) if __name__ == "__main__": """ Open desired file in write mode, do not enforce EOL character. Create a CSV writer specifying the Windows EOL. Use \t character for delimiter as the specified file in the question used a .txt extension and the user wishes to import the file into Excel. """ with open("file.txt", "w", newline=None) as fout: csv_out = csv.writer(fout, delimiter="\t" lineterminator="\r\n") csv_out.writerow(["VARNAME","VALUE"]) for row in env_key_values("ldssbox01"): csv_out.writerow(row)