私はPythonの初心者であり、ここでいくつかの概念に苦労しています-どんな助けでもありがたいです。
データベースにクエリを実行し、読み取る結果として複数の行を返すカスタムシステムツールがあります(各行に1つずつ)。次のPythonスクリプトは、raw_inputからサイトFQDNを受け入れ、そのfqdnで$pathを実行します。
#!/usr/bin/python
import subprocess
import getpass
#get the site name.
site = raw_input("What is the name of the site?: ").strip()
#run path.
cmd = 'path '+ site;
p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE);
path_output = p.stdout.read().strip().split('\n')
print path_output
これは次のような結果を返します:
[' fqdn = www.hcasc.info', ' account_id = 525925', ' parent_id = 525925', ' nfs = /mnt/stor7-wc2-dfw1/525925/www.hcasc.info', ' server_type = PHP5', ' ssl = False', ' host_ip = 98.129.229.186', ' cgi_hosting = False', ' test_link_ip = 98.129.229.186', ' ipv6_ip = 2001:4800:7b02:100::1600:0']
「nfs=etc」から余分な空白を取り除くにはどうすればよいですか、または3番目の列(別名awk'{print $ 3}')を取得するか、bashからのこれらの結果の各部分をさらに操作するために別々の変数に割り当てるにはどうすればよいですか?
この学習曲線を実装するのに少し問題がありましたが、あなたの助けに心から感謝します。