您可以使用该
typeset命令通过来使功能在远程计算机上可用
ssh。有多个选项,具体取决于您要如何运行远程脚本。
#!/bin/bash# Define your functionmyfn () { ls -l; }
要在远程主机上使用该功能:
typeset -f myfn | ssh user@host "$(cat); myfn"typeset -f myfn | ssh user@host2 "$(cat); myfn"
更好的是,为什么还要麻烦管道:
ssh user@host "$(typeset -f myfn); myfn"
或者,您可以使用HEREDOC:
ssh user@host << EOF $(typeset -f myfn) myfnEOF
myfn,请
typeset -f像这样使用:
ssh user@host "$(typeset -f); myfn"
说明
typeset -f myfn将显示的定义
myfn。
cat将以文本形式接收该函数的定义,
$()并将在当前的shell中执行它,该shell将成为远程shell中的已定义函数。最后,该功能可以执行。
最后的代码将在ssh执行之前将函数的定义内联。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)