繁体   English   中英

执行csv文件中包含的bash命令

[英]Execute bash commands that are included in a csv file

我有一个只有一列的csv文件,每一行都包含一个自定义bash函数,如下所示:

my_func 1 a
my_func 1 b
my_func 1 c

~/.bash_profile包含my_func函数,我可以在bash shell中正常运行该函数。 我想做的是在bash shell中依次运行上述命令中的每一个。 有没有一种简便的方法(我想避免在bash shell中复制/粘贴每个命令)?

编辑:当我尝试bash filename.csv ,出现以下错误: line1: my_func: command not found

如果是您描述的文件,那么

/bin/bash <yourfile>

真正的文件名结尾并不重要。 您还可以坚持:

#!/bin/bash

在顶部,授予运行许可权( chmod u+x yourfile )并将其运行为:

./yourfile

您的CSV文件实际上是一个bash脚本。

编辑

完成编辑后,您可以在当前的bash shell中获取csv ,因此您可以访问该函数:

. yourfile

我认为第二种方法(添加shebang并直接运行文件)也可以工作-如果不行,请尝试将函数放在.bashrc而不是配置文件中。 更多解决方案-在CSV的顶部获取配置文件,在顶部定义功能,等等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM