{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fblog.dogwood008.com%2Fentry%2Fbash-process-substitution\" title=\"\u3010Bash\u3011tee \u3067stdout\u3068stderr\u3092\u305d\u308c\u305e\u308c\u5225\u3005\u306b\u3059\u308b\u65b9\u6cd5 (Process Substitution) - dogwood008\u306e\u958b\u767a\u30e1\u30e2\uff01\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","author_name":"dogwood008","categories":["Bash","ZShell","Shell"],"url":"https://blog.dogwood008.com/entry/bash-process-substitution","image_url":null,"provider_name":"Hatena Blog","provider_url":"https://hatena.blog","published":"2022-05-15 11:00:00","author_url":"https://blog.hatena.ne.jp/dogwood008/","width":"100%","blog_title":"dogwood008\u306e\u958b\u767a\u30e1\u30e2\uff01","description":"\u8981\u65e8 Bash\u3067\u7528\u610f\u3055\u308c\u3066\u3044\u308b\u30d7\u30ed\u30bb\u30b9\u7f6e\u63db (Process Substitution) \u3068\u3044\u3046\u4ed5\u7d44\u307f\u3092\u4f7f\u3046\u3068\u3001\u4e0b\u8a18\u306e\u3088\u3046\u306a\u66f8\u304d\u65b9\u304c\u3067\u304d\u308b\u3002 $ ls /foo/bar 1> >(tee stdout.log) 2> >(tee stderr.log) ls: /foo/bar: No such file or directory # <--- \u6a19\u6e96\u30a8\u30e9\u30fc $ cat stderr.log ls: /foo/bar: No such file or directory # <--- `./stderr.log` \u306b\u3082\u66f8\u304d\u8fbc\u307e\u308c\u305f \u80cc\u666f Bash\u3067\u6a19\u6e96\u51fa\u529b (stdout)\u3068\u6a19\u6e96\u30a8\u30e9\u30fc (std\u2026","height":"190","version":"1.0","title":"\u3010Bash\u3011tee \u3067stdout\u3068stderr\u3092\u305d\u308c\u305e\u308c\u5225\u3005\u306b\u3059\u308b\u65b9\u6cd5 (Process Substitution)","blog_url":"https://blog.dogwood008.com/","type":"rich"}