从zsh导出功能到bash以在gnu并行中使用 [英] export function from zsh to bash for use in gnu parallel
本文介绍了从zsh导出功能到bash以在gnu并行中使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何从zsh导出函数,以便可以在gnu并行中使用它?
How do I export a function from zsh, so that I can use it in gnu parallel?
示例:
function my_func(){ echo $1;}
export -f my_func
parallel "my_func {}" ::: 1 2
在bash中将输出
1
2
而在zsh中它将输出错误消息
whereas in zsh it will output error messages
/bin/bash: my_func: command not found
/bin/bash: my_func: command not found
推荐答案
自2014年以来发生了很多变化.
A lot has changed since 2014.
今天,您只需这样做:
# Activate env_parallel function (can be done in .zshenv)
. `which env_parallel.zsh`
function my_func(){ echo $1;}
env_parallel "my_func {}" ::: 1 2
如果您的环境很大:
# Activate env_parallel function (can be done in .zshenv)
. `which env_parallel.zsh`
# Record which environment to ignore
env_parallel --session
function my_func(){ echo $1;}
env_parallel "my_func {}" ::: 1 2
这篇关于从zsh导出功能到bash以在gnu并行中使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文