(此问题以 Maccaffeinate
工具为例,但该概念适用于所有xargs
接受实用程序作为参数的工具(即)。)
Mac 的caffeinate
工具接受实用程序的名称:caffeinate sleep 1
例如,(sleep
实用程序在哪里)。有没有办法让它也接受一个zsh
函数,而无需修改工具本身?例如:
function mysleep {
sleep 2
}
caffeinate mysleep # mysleep: No such file or directory
Run Code Online (Sandbox Code Playgroud)
编辑:这个问题确实是 Bash 的重复问题——感谢你指出我的答案。但是,对于 zshexport -f
不起作用。有没有办法在 zsh 中做到这一点?(我正在删除bash
标签以减少混淆。)
小智 0
执行此操作的最佳方法是将函数放入脚本文件中并按如下方式调用脚本:
caffeinate myfunction.sh
Run Code Online (Sandbox Code Playgroud)
myfunction.sh 的内容:
#!/bin/bash
sleep 2
Run Code Online (Sandbox Code Playgroud)
确保脚本文件是可执行的,否则会出现权限错误:
chmod +x myfunction.sh
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
231 次 |
最近记录: |