#stdin #command-line-arguments #pass #cli #sed #shell

app arg2stdin

一个简单的实用程序,用于将CLI参数作为stdin传递给指定的命令

2个版本

0.1.4 2023年2月28日
0.1.3 2023年2月28日
0.1.2 2023年2月28日
0.1.1 2023年2月28日
0.1.0 2023年2月28日

#6 in #sed

GPL-2.0-or-later

17KB

arg2stdin

一个简单的实用程序,用于将CLI参数作为stdin传递给指定的命令。

用法

arg2stdin<command> <要传递给stdin的字符串>

例如

arg2stdin rev hello

命令不必是单个命令,也可以是一个长的shell单行命令。例如

arg2stdin'sed "s/A/X/g" |grep-o"X" |wc' AAAAAAAA

问题

有时你不想通过stdin传递某些内容,但命令只接受stdin。例如,如果我想打印字符串'hello'的逆序,我可能会尝试

rev hello

这将失败,因为没有名为'hello'的文件。相反,我们应该

echo hello|rev

这样不是更好吗?

arg2stdin rev hello

好吧,确实比使用echo和管道长,但有时你以某种方式执行,无法访问stdin,这时它就很有用。

另一种选择可能是这样的(感谢@vhata)

bash-c'echo "$0 $@" |rev'hello

在这种情况下,arg2stdin使其更直观。

没有运行时依赖项