@argh_named("set")
    @arg_verbose
    @arg_full_match
    @arg_nodes_only
    @arg_systems_only
    @argh.arg('target', type=str, help='target systems/nodes (regexp)')
    @argh.arg('property', type=str, nargs="+", help="'name=[type:]value'")
    @expects_obj
    def handle_set(self, arg):
        confman = self.get_confman(arg.root_dir)
        logger = logging.info if arg.verbose else logging.debug
        changed_items = []
        found = False
        if arg.nodes_only:
            nodes = True
            systems = False
        elif arg.systems_only:
            nodes = False
            systems = True
        else:
            nodes = True
            systems = True

        for item in confman.find(arg.target, nodes=nodes, systems=systems,
                                 full_match=arg.full_match):
            found = True
            converters = {
                "prop": (
                    lambda x: util.get_dict_prop(dict(node=item), x.split("."),  # pylint: disable=W0631, W0640
                                                 verify=True)[1],
                    None
                    )
                }
            props = dict(util.parse_prop(p, converters=converters)
                         for p in arg.property)
            changes = item.set_properties(props)
            old_value = None
            for key, old_value, new_value in changes:
                changed = ((type(old_value) != type(new_value))  # pylint: disable=W1504
                           or (old_value != new_value))
                if changed:
                    note = "was %r" % old_value
                else:
                    note = "no change"

                logger("%s: set %s=%r (%s)", item.name, key, new_value, note)

            if not changes:
                logger("%s: no changes (%r)", item.name, old_value)
            else:
                changed_items.append(item)

        if not found:
            raise errors.Error("no matching nodes found")

        for item in changed_items:
            item.save()
Parameters
dataset/ETHPy150Open ohmu/poni/poni/tool.py/Tool.handle_set--crossover with--dataset/ETHPy150Open rizar/attention-lvcsr/libs/Theano/theano/tensor/subtensor.py/IncSubtensor.copy_of_x