Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

標準入力を受け取る

More than 1 year has passed since last update.

シェルスクリプトではパイプラインを用いて、同時に実行するコマンドに出力を渡してあげる事が可能です。
渡される出力を 標準入力 と呼びます。
このパイプラインがDOSコマンドやPowerShellと比較にならないほど強力です。

標準入力を用いる例

例:echoで渡された出力「パスワード」をzipで圧縮してからリダイレクトする
$ echo "パスワード" | gzip -c > ./test.txt

例:内蔵モニタの明るさを変える(lightとzenityが必要です。)
$ zenity --scale --print-partial | while read i;do light -S $i;done

例:sedコマンドを練習する
$ echo aaabbbccc | sed 's/bbb//g' #bbbを取り除く
aaaccc

こんな感じで便利に使う事が出来ます。

1.test.shを作り内容を以下の様にします。

stdin=`cat`

echo "ここから標準入力"
echo $stdin
echo "ここまで標準入力"

2.実行してみる

$ chmod +x test.sh
$ echo "標準入力テスト!" | ./test.sh
ここから標準入力
標準入力テスト!
ここまで標準入力

簡単でした。

sakkuntyo
UbuntuとNodejsをよく使います。 今はAzureに触れています。
https://sakkuntyo.github.io
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away