linux – 通过ansible调用远程bash函数
发布时间:2020-12-13 22:56:36 所属栏目:Linux 来源:网络整理
导读:是否可以通过ansible ad-hoc命令(使用 shell,命令模块?)调用bash中定义的远程函数(例如,在/etc/profile.d中存储的一个脚本中添加) 例如,我有以下功能,可以查看apt历史的状态: function apt-history(){ case "$1" in install) cat /var/log/dpkg.log | grep
是否可以通过ansible ad-hoc命令(使用
shell,命令模块?)调用bash中定义的远程函数(例如,在/etc/profile.d中存储的一个脚本中添加)
例如,我有以下功能,可以查看apt历史的状态: function apt-history(){ case "$1" in install) cat /var/log/dpkg.log | grep 'install ' ;; upgrade|remove) cat /var/log/dpkg.log | grep $1 ;; rollback) cat /var/log/dpkg.log | grep upgrade | grep "$2" -A10000000 | grep "$3" -B10000000 | awk '{print $4"="$5}' ;; *) cat /var/log/dpkg.log ;; esac } 是否可以通过ad-hoc命令从其中一个现有模块直接通过函数名调用此函数?我知道可以创建一个新脚本并直接远程调用它,但这不是我想要在这里实现的.任何建议赞赏. 解决方法
您必须使用命令或shell模块在远程端实例化bash,如下所示:
ansible localhost -m command -a 'bash -lc apt-history' 如果您需要设置环境变量,这是一个常见的技巧. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |