- ベストアンサー
違いについて
Cシェルで、.cshの拡張子が付いている物といない物が有りますが、 どの様な違いがあるのでしょうか? (例えばシェルの中でシェルを呼ぶ場合に、親シェルには.cshを付けるとか) いつも初歩的な質問ばかりして申し訳有りませんが、 御教授のほど宜しくお願いいたします。
- ami_mizuno
- お礼率27% (24/87)
- その他(OS)
- 回答数3
- ありがとう数3
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
違いはありません。扱う人が分かりやすいように拡張子をつけているだけで、 拡張子なしでも全く同じように動きます。
その他の回答 (2)
- Sarukan
- ベストアンサー率55% (41/74)
実際にはUNIXには拡張子管理というものがありません。そのため、たとえ「file.sh」であろうと「file.csh」であろうと「file」であろうと、酷い話、「file.txt」であろうともそれが「実行可能」ファイルであればCshスプリクトファイルとして実行可能です。 ですが、逆にそのためにそれがスプリクトファイルなのかただのテキストなのかファイル名を見ただけでは分からないために、たいていのUNIXユーザはそれがCshスプリクトであれば「file.csh」というファイル名をつけて判別がしやすいようにするのです。当然、それも使用者の個人的ルールの範疇で行われることですので中には「file.exe」などとつける人もいるかもしれませんし、「file.bat」とつけている人もいるかもしれません。そして、何もついていないというのもその人のルールによるものなのです。 ですから、拡張子のあるなしは判別しやすい、しにくい以外にまったく意味のないものですので気にされる必要はありません。ただ、ami_mizunoさんがCshスプリクトファイルを作成する時には、他の方もそれを実行する場合には分かりやすいように「.csh」をつけることをお勧めいたします。 以上、何かの参考になれば幸いです。
お礼
有り難うございます。 以前本を読んだときに書いてあったのを、すっかり忘れていました。 (拡張子管理が無いこと) 今職場で扱っているシェルが、.cshの付いている物と付いていないものが 混同しているもので・・・ 私も作る場合には、Sarukanさんの助言に従い、.cshを付けたいと思います。
- a-kuma
- ベストアンサー率50% (1122/2211)
> Cシェルで、.cshの拡張子が付いている物といない物が有りますが、 > どの様な違いがあるのでしょうか? 全く違いはありません。 シェルスクリプトを実行するには、シェルの引数として渡すか、スクリプトファイルに 実行権限をつけて、第一行目に動作するシェルの指定を記述する(*)かのどちらかです。 (*) スクリプトの一行目が #!/usr/bin/sh っていうふうになってる ファイル名を見ただけで、その種別を知りたい、とか、ディレクトリのあちこちに ばらまいてあるので、find で簡単に引っかかるようにしたい、というような 欲求がある人が、ファイル名の末尾に .csh としているだけでしょう。
お礼
有り難うございます。やはり違いはないんですね。 今職場で扱っている、シェルを見る限り 欲求のある人と無い人が作成したのもが、同フォルダにある物で・・・
関連するQ&A
- シェルの実行について
シェル、コマンドを実行に関して質問があります。 シェル名だけ「シェル名」だけで実行できたり「./シェル名」としないと実行できなかったりしますが、この違いはどこからくるのでしょうか? また、「csh シェル名」とするばあいもありますが、これらの明確に違い(使い分け)が分かりません。 ご教授の程宜しくお願いいたします。
- ベストアンサー
- Linux系OS
- MinGW,msysでCスクリプトの実行
windows上でCシェルスクリプトで書かれたファイルを実行する必要が生じました。 これまではcygwin上で難なくやっていたのですが、cygwinは大きいので、これをやめてMinGWにしたため、Cシェルスクリプトが流れなくて困っています。MinGW、msysにはCシェルは無いようです。そこで、MinGW,msys,minttyの環境下で以下のようにやってみたのですが、これでよいのでしょうか? (1)MinGW,msys,minttyをインストール(Bシェルの環境ができる) (2)tcsh.exeをwebからダウンロード(ftp://ftp.funet.fi/pub/unix/shells/tcsh/) (3)tcsh.exeをmsysの/binに入れて、cshにハードリンクを張る(#ln tcsh.exe csh) これで簡単なCシェルスクリプトは流れるようですが、そのCシェルスクリプトの中で、さらにスクリプトファイルを実行させるようなスクリプトはうまく流れません。結局、試行錯誤の結果、以下のように、csh,shを頭に付加してようやく流れるようになりました。 ・元のファイル(script-a,bは流れない) #!/bin/csh -f ........... ./script-a(Cシェル) ./script-b(Bシェル) ........... ・修正後(ようやく流れた) #!/bin/csh -f ........... csh ./script-a(Cシェル) sh ./script-b(Bシェル) ........... 何故このようにしなければいけないのか?また、minttyでCシェルスクリプトを流す方法はこれでよいのか?(他に方法はないのか?)ご教示頂ければと思います。 当方、シェルスクリプトは全く素人で質問自体が的外れかもしれませんがよろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- CYGWINやKNOPPIXを、BシェルからCシェルに変更したいです。
お世話になっております。 疑問となっている事は以下の通りです。 (1)CygwinのプロンプトををBシェルからCシェルへ変更する手順。 (2)KnoppixのプロンプトををBシェルからCシェルへ変更する手順。 ということをしたいと思います。 (1)については、Cygwin.batの最後にあるbashをcshに変更したのですが、Cygwin自体が起動しなくなりました。 (2)については、どの様な設定をすればよいか全く解らない状態です。 どのような設定をすれば、Cシェルが扱えるようになるのでしょうか。 ご教授のほど、宜しくお願いします。
- 締切済み
- Linux系OS
- Cシェルでのsymbolic link移動
いつもお世話になっております。 今までbashを使っておりましたが仕事でCシェルを用いなければなならず、その違いに戸惑っております。 lnでシンボリックリンクを作成してcdで移動してcd ../で元に戻ろうとした場合、bashでは呼び出し側に戻るのですが、Cシェルではリンク先の親に戻ってしまいます。 pushd . popd というコマンドも見つけたのですが、毎回うつには少々手間です。 bashと同様、呼び出し側の親ディレクトリにもどる方法をどなたかご存知でしょうか? ご存知の方おられましたらご教授よろしくお願いいたします。
- ベストアンサー
- Linux系OS
- シェルでファイルを読み込む
csh を使っています。 ファイル hoge には1行に一つずつファイルの / からのパスが記されています。 hoge から 1行ずつファイルパスのリスト読み込んでそのファイルについて ls -al を行なった結果をファイル foo に保存したいのですが、どのようなシェルプログラムを作れば宜しいでしょうか? awk/sed も使える環境ですので、これらを使ったスクリプトでも構いません。 非常に初歩的な質問で申し訳ありませんが、宜しくお願いします。
- ベストアンサー
- その他(OS)
- 標準入力からシェル変数及び環境変数に値を設定する(bash)
標準入力からシェル変数及び環境変数に値を設定する方法で、cshの場合は「set 変数=$<」ということは確認しているのですが、bashの場合はどのようにすればよろしいのでしょうか?ご教授お願いいたします。
- ベストアンサー
- Linux系OS
- シェルスクリプトの切り替え?
シェルには種類がありユーザーはそれを切り替えることによって好みのシェルを自由に選択することが出来る。 というのはわかりました。 が、シェルスクリプトを記述して実行する場合はどうなんでしょう。 bornシェルで記述したシェルスクリプトをcshから実行できるのでしょうか。 実行者とスクリプト記述者が同じシェル環境で操作しないといけないのかと思い質問しています。 ひょっとして意味のわからない質問かも知れませんがお願いします。
- ベストアンサー
- Linux系OS
- 「荷造運賃」と「運賃荷造費」の違い
いつも参考にさせて頂いています。 初歩的な質問で申し訳ありませんが、 「荷造運賃費」と「運賃荷造費」の違いが分かりません。 どのように使い分けたらいいのでしょうか? 教えて下さい。 よろしくお願いします。
- ベストアンサー
- 財務・会計・経理
お礼
有り難うございます。やっぱり関係ないんですね。 今仕事場で扱っている物がごちゃ混ぜ(付く物付かない物)になっているんで・・ 後いつも、私の初歩的な質問に真っ先に回答していただき、 感謝です。 今後とも宜しくお願いいたします。