Added cmd option '--varsfilter'

master
Самоукин Алексей 14 years ago
parent 11f82c58d3
commit 3fe34d0d25

@ -97,12 +97,9 @@ class share(color_print):
else:
return dirsFiles
def printVars(self, opts=["all"]):
def printVars(self, *arg, **argv):
"""Печать существующих переменных"""
if opts == ["all"]:
self.clVars.printVars()
else:
self.clVars.printVars(opts)
self.clVars.printVars(*arg, **argv)
class desktop(share):
"""Методы работы с профилем пользователя"""

@ -89,7 +89,7 @@ class desktop_cmd(share_cmd):
%self.getStringIncompatibleOptions()
self.optobj.error(errMsg)
return False
if optObj.v:
if optObj.v or optObj.varsfilter:
if args:
if len(args)>1:
errMsg = _("incorrect argument")+":" + " %s" %" ".join(args)

@ -25,10 +25,24 @@ lang().setLanguage(sys.modules[__name__])
class share_cmd(color_print, _error):
"""Класс общих методов обработки опций командной строки"""
def printVars(self, optObj):
"""Печать переменных"""
if optObj.v:
self.logicObj.printVars()
# Печать фильтрованных переменных
elif optObj.varsfilter:
optCmd = optObj.varsfilter
varsFilter=None
varsNames = []
if ',' in optCmd:
varsNames = optCmd.split(",")
elif '*' in optCmd:
varsFilter = optCmd.replace("*", ".*")
else:
varsNames.append(optCmd)
self.logicObj.printVars(varsFilter, varsNames)
return True
def setVars(self, optObj):
"""Установка переменных"""

@ -34,7 +34,6 @@ if __name__ == "__main__":
if ret is False:
sys.exit(1)
opts, args = ret
if len(args) > 0:
userName = args[0]
else:
@ -50,7 +49,7 @@ if __name__ == "__main__":
# Печать переменных
obj.printVars(opts)
# Если нет печати переменных выполняем логику программы
if not opts.v:
if not opts.v and not opts.varsfilter:
if opts.install:
# Наложение шаблонов на систему при инсталяции
if not obj.install():

Loading…
Cancel
Save