我试图为macOS编写一个自动机操作,将所选文本传递给Bash shell脚本。 Automator通过stdIn
我试过了:
#!/usr/bin/env bash
myVar=$(</dev/stdin)
echo "$myVar"
和:
read -t 1 input
echo "$input"
exit 0
虽然上面的第一个示例有效,但如果我直接在命令行上运行脚本,它会等待输入。在第二个例子中,它将在一秒钟后停止等待但我只能将文本提交到换行符。
我不希望脚本在命令行上等待输入,但我确实希望它接受来自其他程序的输入,即通过stdIn传入文本的Automator。
如果脚本通过管道接受输入,那也很好。 :
cat myfile | ./myscript
我想要实现的是,如果传递了某些内容,可以选择使用stdIn,但我从不想提示用户在命令行上输入。
本质上,输入在我的程序中是可选的。
感谢您的帮助。