csh
まったく恐ろしいシェルです。(「csh を使用しないでください」という避けられないコメントを避けるために、その声明を前もって作成します。または、読者のために、単にそれを述べておく必要があります。正気を重視する場合は、使用しないでくださいcsh
。)csh
私が便利にしようとしているスクリプトのかなり大きなコレクションでありexit
、ソースファイルから呼び出されたときにスクリプトを終了しないことを発見しました。言い換えると:
#!/bin/csh
source [file with content "exit"]
echo No reasonable script should print this
出力を生成します。
その動作を変更する方法はありますか? 私が知る限り、私が変更しているスクリプトの元の作成者は、メイン スクリプトを終了することを意図しており、それは確かに望ましい動作であり、上記の例を経由で呼び出すだけsh
でその結果が得られますが、何が得られますか? この動作に合理的な目的はありますか? (それは私の怒りです。本当の問題は、動作を変更するための csh のオプションはありますか?)