我想编写一个
bash
脚本,它将用一些文本包装 piped
输入。
基于谷歌搜索并尝试从示例中进行选择。 这是我到目前为止所拥有的,但不起作用:
#!/bin/sh
if readlink /proc/$$/fd/0 | grep -q "^pipe:"; then
echo "{ "template":{"name":"contact sheet template","root":"root","parameters": ["pages"]},"pages":"
cat
echo "}"
fi
我从另一个程序接收一个 JSON 列表作为
piped
输入,我想在将结果发送到下一个程序之前和之后使用上述文本进行输出。 pipe
但是它没有输出任何东西。有更多
program_1 | wrapper.sh | program_2 > outputfile
专业知识的人可以为我指出正确的方向吗?
bash
echo 'BEFORE' $(cat) 'AFTER'
?
然后脚本中的命令将简单地从管道继承标准输入
$ other-process | my-script
#!/bin/sh
# Output preamble
cat <<EOF
{ "template":{"name":"contact sheet template","root":"root","parameters": ["pages"]},"pages":
EOF
cat # This reads from standard input inherited from your script
# Output the closing
cat <<EOF
}
EOF
echo "prefix-$(cat)-suffix"