【发布时间】:2013-02-03 12:29:37
【问题描述】:
我很难弄清楚如何从主机名中删除最后一个句点...
当前输出:
- domain.com.
- suddomain.com.
- domain.com.
- subdomain.subdomain.com.
- subdomain.com。
想要的输出:
- domain.com
- subdomain.com
- 域名.com
- subdomain.subdomain.com
尝试1:
print string[:-1] #it works on some lines but not all
尝试2:
str = string.split('.')
subd = '.'.join(str[0:-1])
print subd # does not work at all
代码:
global DOMAINS
if len(DOMAINS) >= 1:
for domain in DOMAINS:
cmd = "dig @adonis.dc1.domain.com axfr %s |grep NS |awk '{print $1}'|sort -u |grep -v '^%s.$'" % (domain,domain)
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True)
string = p.stdout.read()
string = string.strip().replace(' ','')
if string:
print string
【问题讨论】:
-
尝试 1 将适用于您的所有测试用例,您能否提供一个失败的示例?
-
打印字符串[:-1] ...除了最后一个子域之外的所有子域都失败