linux - 通过 ssh 命令将函数作为参数传递给远程服务器

标签 linux bash shell unix ssh

我想知道是否可以将整个函数作为参数传递给远程服务器,以在远程服务器上执行一长串操作并将控制流返回到本地服务器。

在 shell/bash 脚本中。

例如:

如下所示:

test_abc() {  
    # this function perform a long list of commands to be performed on remote server  
    command 1;   
    command 2;  
    .  
    ..  
    command N;  

    few echo commands;    
}  

ssh user@remote_server test_abc;    

我不确定这在 shell 脚本中是否可行。请告诉我。

最佳答案

显然,远程系统无法理解本地环境中的任何内容。 “test_abc”必须是“remote_server”上已知的命令。

ssh user@remote_server "$(cat <<- _EOF_
((command-list))
_EOF_
)"

那,或者引用“test_abc”的正文,但可能需要修改才能正确引用。

关于linux - 通过 ssh 命令将函数作为参数传递给远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24288361/

相关文章:

linux - 如何在内核模块中使用 proc_pid_cmdline

linux - SSH 在终端中有效,但在 shell 脚本中无效

bash - 使用 bash 从颠覆中获取修订号

linux - curl 帖子问题 : input password became empty

linux - 在 vim 编辑器中打开同一个文件时,如何列出写入文件的路径下的内容?

linux - OpenVG UTF 8/unicode 字符

linux - awk 命令查找和替换值

linux - Sed 替换失败,UTF-8 编码

json - json 字符串上的 Bash 元组

regex - bash 在文件中的不同行上搜索多个模式