[英]String matching in python not working
import subprocess
def volumeCheck(volume_name):
"""This function will check volume name is mounted or not.
"""
volume_name = raw_input('Enter volume name:')
volumeCheck(volume_name)
p = subprocess.Popen(['df', '-h'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
p1, err = p.communicate()
pattern = p1
new_vol = '/VolumeData/' '+ volume_name +'
if pattern.find(new_vol) != -1 :
print 'volume mounted'
else:
print 'volume not mounted'
new_vol = '/VolumeData/' '+ volume_name +' i think this is wrong , but how can i do this ..? new_vol ='/ VolumeData /''+ volume_name +'我认为这是错误的,但是我该怎么做..?
i like to search \\volumeData\\ volume_name . 我喜欢搜索\\ volumeData \\ volume_name。
root@sr-query:/# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 938M 473M 418M 54% /
/dev/md0 938M 473M 418M 54% /
none 250M 4.9M 245M 2% /dev
/dev/md2 9.7M 1.2M 8.0M 13% /usr/config
/dev/md7 961M 18M 895M 2% /downloads
tmpfs 250M 7.9M 242M 4% /var/volatile
tmpfs 250M 0 250M 0% /dev/shm
tmpfs 250M 0 250M 0% /media/ram
/dev/mapper/vg9-lv9 1016M 65M 901M 7% /VolumeData/sp
/dev/mapper/vg10-lv10
1016M 65M 901M 7% /VolumeData/cp
root@sr-query:/#
Thanks in adavnce 谢谢
What exactly are you going for? 你到底要干什么 If I understand properly, I would probably try
os.path.join
, eg: 如果我理解正确,我可能会尝试
os.path.join
,例如:
new_vol = os.path.join('/','VolumeData', volume_name)
Also, since you're not actually using the result of find
, you might want to consider: 另外,由于您实际上并未使用
find
的结果,因此您可能需要考虑:
if new_vol in p1:
instead. 代替。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.