linux - Bash 管道不适用于我的脚本

标签 linux bash shell

<分区>

我写了两个脚本。一个是 myscipt1.sh,它读取整数序列(作为参数提供)并报告最终数字:

[user@pc user] ./myscript1.sh 34 45 67 234
[user@pc user] 1200

在上面的示例中,脚本返回 1200。 另一个脚本 myscript2.sh 接受一个字符串作为输入并返回一个整数序列:

[user@pc user] ./myscript2.sh a string to provide
[user@pc user] 364 465 786 34 22 1

我想通过传递 myscript2.sh 的结果来调用 myscript1.sh,所以我尝试了:

[user@pc user] ./myscript2.sh my_string | ./myscript1.sh

但我没有运气,因为 myscript1.sh(检查传递的参数数量,没有传递任何参数就退出)报告没有传递任何参数。

当我将管道与我编写的脚本一起使用时,看起来 Bash 有问题。怎么办?

最佳答案

你可以运行它:

./myscript1.sh $(./myscript2.sh my_string)

关于linux - Bash 管道不适用于我的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19809768/

相关文章:

linux - Bash 运行函数并在没有 '&' 的情况下执行键盘命令

linux - Wine下如何运行msi文件

linux - 如何通过 shell 脚本或终端在 HTML 链接上上传 zip 文件

bash - bash 脚本中 sqlite 的安全副本

linux - Bash - 计算字符串中的子字符串

linux - 使用/bin/date 更改系统时间

c - 为 ARM9 Montavista Linux 交叉编译 OpenCV 时出现问题

linux shell进程文本

linux - 如何使用 bash 替换多行?

python - sudo -E 不通过 PYTHONPATH