Added cmd option '--varsfilter'

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

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

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

@ -25,10 +25,24 @@ lang().setLanguage(sys.modules[__name__])
class share_cmd(color_print, _error): class share_cmd(color_print, _error):
"""Класс общих методов обработки опций командной строки""" """Класс общих методов обработки опций командной строки"""
def printVars(self, optObj): def printVars(self, optObj):
"""Печать переменных""" """Печать переменных"""
if optObj.v: if optObj.v:
self.logicObj.printVars() 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): def setVars(self, optObj):
"""Установка переменных""" """Установка переменных"""

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

Loading…
Cancel
Save