• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シェルスクリプト:while文のリダイレクトはサブシェルで実行されますか)

シェルスクリプト:while文のリダイレクトはサブシェルで実行されますか

このQ&Aのポイント
  • この記事では、Solaris環境において、BourneShellのwhile文でリダイレクトを使った場合にサブシェルで実行されるかどうかについて調査しています。
  • 最近のGNU BASHやASHでは、リダイレクトを使ったループもカレントシェルで動作することが分かっていますが、SolarisのSHの場合はどうなのか疑問に思っています。
  • 実際にLinux上での実験結果も共有しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

Solarisの環境は無いのでわかりませんが、 http://www.nurs.or.jp/~asada/FAQ/UNIX/section3.8.html Posix準拠のshだとカレントシェルでの実行のようです。

lunarosa
質問者

お礼

notnotさん ご回答ありがとうございます。上記 URL 参考になりました。 また、御礼が遅れて申し訳ありませんでした(ここ最近は Solaris10 に触れる機会があり、暫く Solaris にどっぷりつかっており当ページにアクセスしておりませんでした)。 因みに、Solaris の sh は純粋に BourneShell でした。当質問のケースでは、サブシェルで回っているようです。 Linux-Solaris 間で sh による汎用性のあるコードを書く場合、このような細かい部分に注意する必要がありそうですね。 まずは、ありがとうございました。

関連するQ&A