gpt4 book ai didi

linux - 通过ansible调用远程bash函数

转载 作者:IT王子 更新时间:2023-10-29 01:26:38 24 4
gpt4 key购买 nike

是否可以通过 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 命令从现有模块之一直接通过函数名称调用此函数?我知道可以创建一个新脚本并直接远程调用它,但这不是我想在这里实现的。任何建议表示赞赏。

最佳答案

您必须在远程端实例化 bash,使用命令或 shell 模块,如下所示:

ansible localhost -m command -a 'bash -lc apt-history'

如果您需要设置环境变量,这是一个常见的技巧。

关于linux - 通过ansible调用远程bash函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26517622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com