C shell 撲滅委員会at UNIX
C shell 撲滅委員会 - 暇つぶし2ch2:名無しさん@お腹いっぱい。
04/09/01 21:37.net
じゃあzshで統一する?
いまさらbashで統一はないだろうしw
ライセンスの問題もあるけど。

3:名無しさん@お腹いっぱい。
04/09/01 21:42.net
tcshしか使い方わかんねーYO!!

4:名無しさん@お腹いっぱい。
04/09/01 21:49.net
zshしか使い方わかんねーYO!!

5:名無しさん@お腹いっぱい。
04/09/01 22:09.net
sh以外いらねーYO!!

6:ウサチャソ
04/09/01 22:35.net
>>5
ホントかよ?

バグってる csh とか使いづらいだけの ksh とか、もう全部駆逐ようぜ。
スクリプトは sh、操作は zsh、これ。
何でもかんでも csh でやろうとするジジィどもはチネ!

7:名無しさん@お腹いっぱい。
04/09/01 23:07.net
zshなんか重くて使えねーYO!!

8:名無しさん@お腹いっぱい。
04/09/01 23:26.net
Perlってログインシェルとして使えないの?

9:名無しさん@お腹いっぱい。
04/09/02 00:32.net
ish さいこー

10:名無しさん@お腹いっぱい。
04/09/02 07:55.net
csh死ね

11:名無しさん@お腹いっぱい。
04/09/02 09:12.net
zsh 使うくらいなら Windows コマンドプロンプト のほうが100倍マシ(プッ

12:名無しさん@お腹いっぱい。
04/09/02 09:27.net
FreeBSDのcshの正体はtcshだよね?
本当のcshをまだ使ってる人いるの?

13:名無しさん@お腹いっぱい。
04/09/02 09:29.net
>>12
Solarisって聞いたことない?

14:名無しさん@お腹いっぱい。
04/09/02 10:24.net
>>11
ぁぁ、俺Windowsもzsh。

15:名無しさん@お腹いっぱい。
04/09/02 10:40.net
わたしはbashですが

16:名無しさん@お腹いっぱい。
04/09/02 10:59.net
わたしはipythonですが


17:名無しさん@お腹いっぱい。
04/09/02 14:50.net
cshねぇ~。ま、ほっといても僕滅するんじゃない。
つーか、今時(t)cshをログインシェルにしてる香具師なんて居るの?
居るとすれば、むかしまだcsh系が優勢だった頃に
初めてUNIXアカウントもらったユーザーくらいかな。
どっちかっつーと*BSD系ユーザーでしょう。
bashがLinux色が強くて拒否反応するような香具師も、
zshとか使ってるわけでしょ。

18:名無しさん@お腹いっぱい。
04/09/02 14:52.net
>>17
csh 好きなのは商用UNIXの人でしょ。


19:名無しさん@お腹いっぱい。
04/09/02 14:55.net
撲滅総合スレでも作れよ

20:名無しさん@お腹いっぱい。
04/09/02 15:33.net
現在の撲滅対象リスト
{GNU,X}Emacs
(t)csh
vi
Solaris
Java
R.M.S.


21:名無しさん@お腹いっぱい。
04/09/02 15:33.net
IRIX使いなのでcsh以外必要ありません。

22:名無しさん@お腹いっぱい。
04/09/02 16:33.net
今夜は彼女とcsh

23:名無しさん@お腹いっぱい。
04/09/02 16:40.net
やっぱりshellといえばsshでしょ

24:名無しさん@お腹いっぱい。
04/09/02 16:48.net
おしぇるカンケイ

25:名無しさん@お腹いっぱい。
04/09/02 17:18.net
BSDユーザのシェル人気投票とかやったことあるのかな?

26:名無しさん@お腹いっぱい。
04/09/02 19:51.net
URLリンク(www.pegasoft.ca)
bushサイコー

27:名無しさん@お腹いっぱい。
04/09/02 21:08.net
URLリンク(www.whitehouse.gov)
bushサイコー

28:名無しさん@お腹いっぱい。
04/09/02 21:26.net
◆BSDユーザのシェル人気投票結果◆(中間発表)

bush<csh<ish<ipython<sh<ssh<tcsh<bash<zsh<彼女とcsh

29:名無しさん@お腹いっぱい。
04/09/05 15:25.net
>>12
本当かどうか解りませんが、知合いに44bsd-cshを使っている人がいます。

30:名無しさん@お腹いっぱい。
04/09/05 15:26.net
>>12
本当のcsh、というのが何をさしているのか解りませんが、
知合いに44bsd-cshを使っている人がいます。

31:名無しさん@お腹いっぱい。
04/09/05 16:06.net
作者さえ放り捨てて顧みなくなってしまったソフトウェアに未来はない

32:名無しさん@お腹いっぱい。
04/09/05 17:10.net
ashとzshしかいらん
中途半端なbashこそ撲滅しる!

33:名無しさん@お腹いっぱい。
04/09/05 19:22.net
ash
ash
ash

34:名無しさん@お腹いっぱい。
04/09/05 19:56.net
zsh しかいらない.
sh は zsh の シンボリックリンク.

35:名無しさん@お腹いっぱい。
04/09/05 20:29.net
>>34
zshはshと非互換な部分があるから、
シンボリックリンクにしてしまうと
普通のシェルスクリプトがまともに動かなくなる。
bashだと問題ない、つか犬が実際にやってるけど・・

それよりここはtcsh/csh撲滅スレ。
zshの話はよそでよろしこ。

36:名無しさん@お腹いっぱい。
04/09/05 20:37.net
cshで
> /dev/null 2>&1 ってどう書くんですか?

37:名無しさん@お腹いっぱい。
04/09/05 21:01.net
まさかcshでシェルスクリプト書いてる香具師はいないよな

38:名無しさん@お腹いっぱい。
04/09/05 21:02.net
>>36
() を使う

39:名無しさん@お腹いっぱい。
04/09/05 21:51.net
sh -c 'echo hoge > /dev/null 2>&1'


40:名無しさん@お腹いっぱい。
04/09/05 21:59.net
>>36
マジレスするけど、cshでも
echo hoge >& /dev/null
とは書ける。書けないのは、
echo hoge > file1 2> file2

cshでシェルスクリプトを書かない、というのは
もう結論が出ている常識で、そうでなくて、
コマンドラインでも
cshを撲滅しよう、
というのがこのスレの趣旨じゃないのかな。

41:名無しさん@お腹いっぱい。
04/09/05 22:21.net
stderr, stdout両方を同じところに吐く
% command >& file

別々に吐くにはサブシェルを使うしかなく、
% (command > out) >& err
とする。内側でstdoutを全部食うので、外側の >& には stderr だけが残るわけだ。


42:名無しさん@お腹いっぱい。
04/09/05 22:56.net
>>41
間違いなく撲滅対象だね.

43:名無しさん@お腹いっぱい。
04/09/06 00:48.net
つか、誰かbashをベースにしてCの構文で書けるシェルを作る奴はいないのか?

44:名無しさん@お腹いっぱい。
04/09/06 01:10.net
Cの構文で書けてもうれしくともなんともない。

45:名無しさん@お腹いっぱい。
04/09/06 04:26.net
せめてPHP

46:43
04/09/06 05:48.net
>>45
俺PHPは嫌いだから、それだけは許さん。

47:44
04/09/06 05:51.net
>>45
俺も許さん。

48:名無しさん@お腹いっぱい。
04/09/06 11:38.net
じゃ、せめてHSP

49:名無しさん@お腹いっぱい。
04/09/06 13:52.net
アニメやゲームのキャラが好きならtcsh
オリジナルカタログでいつでも逢える。

50:名無しさん@お腹いっぱい。
04/09/06 16:05.net
>>49見てzshに乗り換えたくなった

51:名無しさん@お腹いっぱい。
04/09/06 18:53.net
theoやdjbが好きならtcsh
オリジナルカタログでいつでも逢える。

52:名無しさん@お腹いっぱい。
04/09/06 22:58.net
>>51見て切実にzshに乗り換えたくなった

53:名無しさん@お腹いっぱい。
04/09/07 21:14.net
#!/bin/zsh
for ((i = 0; i <= 3; i++)) {
if (( i )) {
print $i is not zero
} else {
print $i is zero
}
}
#工エエェェ(´д`)ェェエエ工


54:名無しさん@お腹いっぱい。
04/09/07 21:36.net
ぬるぽ

55:名無しさん@お腹いっぱい。
04/09/07 23:43.net
>>53
なんかもんだいあるの?
0 is zero
1 is not zero
2 is not zero
3 is not zero
あってんじゃん。

56:名無しさん@お腹いっぱい。
04/09/08 00:06.net
こんな書き方を許す辺りが問題有る気がする.


57:名無しさん@お腹いっぱい。
04/09/08 00:09.net
どうして?
i が 0だったら未定義値なんだから 評価したら undefでしょ?
else loopで処理することに何か問題が?


58:名無しさん@お腹いっぱい。
04/09/08 00:36.net
for ((;;))はbashにもある。

59:名無しさん@お腹いっぱい。
04/09/08 00:39.net
zsh は知らんのだが、i と $i が混在してるのはいいのか?

60:名無しさん@お腹いっぱい。
04/09/08 00:58.net
それがarithmetic evaluation

bash$ echo $[ x = 7, y = 3, x * y ]
21


61:名無しさん@お腹いっぱい。
04/09/08 01:17.net
bashやzshよりもはやく日本語に対応した
んだっけ?


62:名無しさん@お腹いっぱい。
04/09/08 13:24.net
>>22は、viとemacsと両方撲滅して、catでも使うつもりか?

63:名無しさん@お腹いっぱい。
04/09/21 15:12:53.net
autoload -U compinit
compinit -i
zstyle ':completion:*' menu select=1
zstyle '*' hosts $hosts
zstyle ':completion:*::::' completer _expand _complete _ignored _approximate
zstyle ':completion:*' verbose yes
zstyle ':completion:*:descriptions' format '%B%d%b'
zstyle ':completion:*:messages' format '%d'
zstyle ':completion:*:warnings' format 'No matches for: %d'
zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters
zstyle ':completion:*:functions' ignored-patterns '_*'

64:名無しさん@お腹いっぱい。
04/09/25 22:32:18.net
Solaris が tcsh をバンドルしているのが悪い。
TAB 押して補完しか使えないくせに、tcsh にこだわる
香具師が多くてウザい。


65:名無しさん@お腹いっぱい。
04/09/25 23:49:10.net
シェルスクリプト自体撲滅きぼんぬ

66:名無しさん@お腹いっぱい。
04/09/26 01:04:15.net
FreeBSDは今でも糞tcshがdefault shellなのか?

67:名無しさん@お腹いっぱい。
04/09/26 17:16:13.net
シェルスクリプトは sh で、あとは各自
好きなの使えば良いんじゃないの ?

68:名無しさん@お腹いっぱい。
04/09/26 17:53:05.net
>>66
インストーラでユーザ追加すると、デフォルトのシェルは/bin/sh になってるけど。
まぁ root のシェルは /bin/csh なんだけどね。

69:名無しさん@お腹いっぱい。
04/09/26 20:19:51.net
ログインシェルをemacsにしよう。


70:名無しさん@お腹いっぱい。
04/09/26 20:36:57.net
scsh をログインシェルにするのもいいと思う

71:名無しさん@お腹いっぱい。
04/09/26 22:32:53.net
scsh 大好きっしゅ

72:名無しさん@お腹いっぱい。
04/09/26 23:08:45.net
false でいいんじゃね?

73:名無しさん@お腹いっぱい。
04/09/28 20:48:17.net
さいきんのおすすめはshutdown


74:名無しさん@お腹いっぱい。
04/09/28 22:13:38.net
shutdown(8)とshutdown(2)って名前が似てるけど
やることはだいぶ違う...

75:名無しさん@お腹いっぱい。
04/09/28 22:29:45.net
shutdown(2)ってソケットの香具師じゃないか。
俺はこんなの使わずにclose(2)してますが、何か?
つーか、この文脈でshutdown(2)は普通出てこないだろ。

本題に戻す。
cshは撲滅すべし。

76:名無しさん@お腹いっぱい。
04/09/28 22:41:55.net
csh がなくなると djb 厨が困るでしょう。

77:名無しさん@お腹いっぱい。
04/09/28 22:55:08.net
シェルスクリプトは sh で書く。
あとはそれぞれ好きなの使う。
それでいいだろが。
なぜに厨だの房だのと ?

78:名無しさん@お腹いっぱい。
04/09/29 01:10:19.net
客先で使う手順書に「補完がしたい」からって
わざわざ

# tcsh

と、書くのはやめてほしい。
恥ずかしい


79:名無しさん@お腹いっぱい。
04/09/29 01:16:24.net
(t|)csh 推す人がいないと盛り上がらんね。

80:名無しさん@お腹いっぱい。
04/09/29 01:33:34.net
>>75
> 俺はこんなの使わずにclose(2)してますが、何か?

まぬけですね。

81:名無しさん@お腹いっぱい。
04/09/29 10:19:52.net
>>78
set filec すれば tcsh じゃない csh でもファイル名補完は可能。
ただし TAB じゃなくて ESC。
大昔ならともかく今となっては無用の知識だが。

>>79
>(t|)csh 推す人がいないと盛り上がらんね。

正規表現で書くなら t?csh と書くほうがふつーじゃない?


82:名無しさん@お腹いっぱい。
04/09/29 10:41:06.net
それりゃ拡張正規表現です。
URLリンク(www.opengroup.org)

83:名無しさん@お腹いっぱい。
04/12/23 09:30:18.net
単独(:なし) >
も、

>&-
も、使えないらしい。

84:名無しさん@お腹いっぱい。
04/12/23 10:19:49.net
: のない > が使えるのは sh だけ。zsh ではまったく別の動作になる。
sh の動作の方が例外。

85:名無しさん@お腹いっぱい。
04/12/23 10:37:05.net
ぼくめつしないとこまるほど、スタンダードではないので
% sh
$
で解決

86:名無しさん@お腹いっぱい。
04/12/23 10:38:56.net
>>84
: のない > がまったく別の動作になるのは、zsh だけ。
sh ksh bash ash等、すべて : のない > が使えるのが標準。

中途半端に cshかぶれした zsh の動作の方が例外。

87:名無しさん@お腹いっぱい。
04/12/23 10:46:36.net
>中途半端に cshかぶれした zsh の動作の方が例外。

csh と zsh で違う挙動するけど。

88:名無しさん@お腹いっぱい。
04/12/23 11:24:41.net
恥ずかしい>>86!! 恥ずかしい>>86!!

89:名無しさん@お腹いっぱい。
04/12/23 23:34:52.net
tcshなんてうんこ

90:名無しさん@お腹いっぱい。
04/12/23 23:42:16.net
個人的にシェルで使うならまだしも、
c-shellでスクリプト書くやつはキテガイに違いない。

91:名無しさん@お腹いっぱい。
04/12/23 23:46:09.net
tcsh, zshは、便利なものを実装する意欲はあるけど、
仕様を考えるのは下手な人が作ったね。
cshはその辺のバランスはまあまあ良かった。

92:名無しさん@お腹いっぱい。
04/12/23 23:47:40.net
よし!じゃぁみんなでKShell使おう!


93:名無しさん@お腹いっぱい。
04/12/24 00:28:04.net
>>91
過去形だからもうイランね。

94:名無しさん@お腹いっぱい。
04/12/24 04:41:47.net
csh の仕様のバランスがいいなんて、気違いの言いグサとしか
思えない。if 文の仕様だけみてもグタグタ。

95:名無しさん@お腹いっぱい。
04/12/24 08:11:59.net
cshは良いよ。素敵だ。

96:名無しさん@お腹いっぱい。
04/12/24 08:33:03.net
>>94
文法はアレなんだけど、(.login, .cshrcも)
ジョブコンのカーネル側の新規設計をポイント加算した。
ビル女医偉大なり。

97:それから
04/12/24 08:33:47.net
>>94
仕様と実装のバランス。

98:名無しさん@お腹いっぱい。
04/12/24 09:29:58.net
sh をインタラクティブシェルとして使う人がほとんどいないように、
csh をスクリプト記述用のシェルとして使わないだけ。
主たる使用目的が違うだけだと思うでよ。
スクリプトを書くのに csh を使うのはアホだが、
ログインシェルに使うのがアホだとは思わん。
歴史が古いだけにインタラクティブシェルとしても後発に追い越されてるのは事実だが。


99:名無しさん@お腹いっぱい。
04/12/24 11:11:00.net
C風の文法にしてプログラミングしやすくする意図があったべよ。

100:名無しさん@お腹いっぱい。
04/12/27 10:22:45.net


どこがCだw
それにcshでプログラミングするやつなんてこの世にいない
おれが殴ってやる
そもそもいまだにshなんて強要するUNIX使うなんて正気じゃない
全員病院逝け



101:名無しさん@お腹いっぱい。
04/12/27 15:28:37.net
>全員病院逝け

激しく同意


102:名無しさん@お腹いっぱい。
04/12/27 16:15:03.net







全員病院逝け









103:マイク ◆yrBrqfF1Ew
04/12/27 17:21:28.net
C shellってNetBSDとかのデフォルトのあれか?

104:名無しさん@お腹いっぱい。
04/12/27 17:41:57.net
それは*BSDの過去の恥部。

105:名無しさん@お腹いっぱい。
04/12/27 18:02:22.net
今さら確認して気づいたんだけど、
NetBSDやOpenBSDでは/bin/kshが標準で付いてるんだね。
ちょっとだけ見直した。

csh=tcshとハードリンクされたFreeBSDとはおお違い。

106:名無しさん@お腹いっぱい。
04/12/27 19:30:17.net
せっかくだからcshスクリプトを推進しよう。

107:名無しさん@お腹いっぱい。
04/12/27 20:18:54.net
Motifなwidgetを持つkshってfreeなのないの?

108:名無しさん@お腹いっぱい。
04/12/28 01:57:11.net
cshで大きなスクリプト書くのは色々つらいけど、
配列が使えるとか、拡張子やパス名をいじくるコロン演算とか
便利な機能があるので、ごく短いスクリプトにはよさげ。


109:名無しさん@お腹いっぱい。
04/12/28 08:25:24.net
cshの配列使えねー。上限あるのがダサ過ぎ。
shかperlでいいだろ。

110:名無しさん@お腹いっぱい。
04/12/28 15:42:59.net
tcsh使っているんだけど、自分で書いたcompleteがあるからだな。

111:名無しさん@お腹いっぱい。
04/12/28 23:30:30.net
つーかRubyとかPerlとかPythonがあるのに何が悲しくて古代のcshやshでいまさら
スクリプト作るわけ?

頭おかしいんじゃない?


112:名無しさん@お腹いっぱい。
04/12/28 23:44:32.net
csh は同意だが、sh はケースバイケースだろ。
コマンドをいくつか呼び出すだけなら sh が一番記述量が少なくて
すむし、利用リソースも少なくて軽いし。

113:名無しさん@お腹いっぱい。
04/12/28 23:48:38.net
cshスクリプト好き好き。

114:名無しさん@お腹いっぱい。
04/12/28 23:49:11.net
ときどき 105 みたいな意見を見るが、分かんないなぁ。
いまどきただの csh って、存在価値ある? ないだろ?
スクリプト書くには文法が腐ってて使えないし、
対話的に使うには機能不足だし。

>>103
それは昔の話。今の NetBSD はインストール時に root の
シェルを /bin/sh や /bin/ksh にできるよ。

115:名無しさん@お腹いっぱい。
04/12/28 23:57:57.net
csh使う使う

116:名無しさん@お腹いっぱい。
04/12/29 02:31:36.net
>>114
それにシングルユーザモードのシェルは、昔から/bin/sh だな。

117:名無しさん@お腹いっぱい。
04/12/29 09:13:13.net
>>114,116
ばかだなぁ。

118:名無しさん@お腹いっぱい。
04/12/29 10:37:53.net
>>114
欲嫁。
>>105 は、NetBSD等にkshが標準で付いていることを評価しているんだよ。
NetBSDのcshについては言及していない。
一方、FreeBSDで、tcshを標準にしてしまったことを批判している。


>>111
じゃあ、rcスクリプトをperlやpythonで書けよ。/bin/sh使うなよ(w

119:名無しさん@お腹いっぱい。
04/12/29 11:26:24.net
>>114の読解力さらしage

120:114
04/12/29 11:33:46.net
どうせ csh なんて全く存在価値ない (tcsh なら一応ある) んだから、
FreeBSD のやり方で全然問題ないじゃん… って書いたつもりなんだ
けどなあ。
114は、そうは読めないかね?

121:名無しさん@お腹いっぱい。
04/12/29 11:50:52.net
tcshは実装が糞。入力の便利さにかまけて基本がおろそか。

122:名無しさん@お腹いっぱい。
04/12/29 12:08:13.net
>>120
今のcshは、tcshとほとんど同じらしいぞ。

123:名無しさん@お腹いっぱい。
04/12/29 12:16:02.net
>>120
bashがあればshはいらんと。

ところで"デフォルトシェル"でインストール時のrootのシェルとか言ってる>>114ちゃんなんて!

124:名無しさん@お腹いっぱい。
04/12/29 12:23:02.net
>>121
あの… tcsh って csh から派生していて、ソースはかなり共通
なんですけど。
おまけに tcsh の方が、csh に比べれば、まだ多少は言語レベル
のバグが取れてるんですが… 「setenv * foo」とか。
より駄目な方を好むって、いったい…?

>>123
そんなことないでしょ。bash より sh の方が軽いから、スクリプト
の実行に使うには、sh の方がいい。
ところが、csh はスクリプト書くのには使いものにならないから、
存在価値がないってことが、114には書いてあるのよ。

125:名無しさん@お腹いっぱい。
04/12/29 12:40:55.net
114 がんばってるなぁ。

126:名無しさん@お腹いっぱい。
04/12/29 12:54:53.net
>>124
csh, tcsh、合わせて価値がない。むしろ害があるのみ。

tcshには価値があると言うからtcshを話しただけ。
cshから派生しているのは知っています。tcshにcontrib.したので。


127:名無しさん@お腹いっぱい。
04/12/29 13:00:46.net
価値が無いものに何故contiributeなんかしたんだ?

128:名無しさん@お腹いっぱい。
04/12/29 13:06:47.net
配布ファイルの、
/root/.profile と /usr/share/skel/dot.profile に、
rm -f /bin/*csh と書いて是非 contribute をお願いします。

129:名無しさん@お腹いっぱい。
04/12/29 13:34:19.net
おまえら能書垂れるだけで、どうせヘボスクリプトしか書けないんだろ。

130:名無しさん@お腹いっぱい。
04/12/29 13:46:37.net
ごめんなさいちょっと背伸びしてみたかっただけなんです。
ほんとはcshぜんぜん知らないけど批判して通っぽく思われたかったんです。

131:名無しさん@お腹いっぱい。
04/12/29 13:51:08.net
玄人こそcsh

132:名無しさん@お腹いっぱい。
04/12/29 14:21:56.net
csh を使いたくなければ使わなければいいだけ。
多くの Linux における bash のように、
使いたくなくても使わざるを得ないものの方がずっと迷惑だ。

133:名無しさん@お腹いっぱい。
04/12/29 14:34:54.net
「英語のマニュアルを読むにはどうすればいい?」
と質問を受けた時、cshユーザーかも知れないことを考慮して、
env LANG=C man hoge
と説明しなければならないのがウザイ。

また、老害的シス管だと、新規のユーザにアカウントを与える時、
デフォでtcshをログインシェルとして与え、
しかもその組織固有の設定を$HOME/.tcshrcに書いていたりするから、
とってもウザイ。

csh/tcsh撲滅すべし。

134:名無しさん@お腹いっぱい。
04/12/29 14:46:24.net
>>132
> 多くの Linux における bash のように、

最近はashがあれば動くものが多いです。
アプリでbash依存のものはありますが。


135:名無しさん@お腹いっぱい。
04/12/29 14:55:15.net
>env LANG=C man hoge

LANG=C だけだとシェル変数の設定だけで環境変数にエクスポートされないのに、
LANG=C man hoge だと環境変数に設定されてコマンドが起動されるという非対称性が
気持ち悪いので、sh でも必ず env を使ってます。おれは。

136:名無しさん@お腹いっぱい。
04/12/29 15:05:06.net
日記に書け

137:名無しさん@お腹いっぱい。
04/12/30 17:31:58.net
次スレ

「UNIX撲滅委員会」

138:名無しさん@お腹いっぱい。
04/12/30 18:01:19.net
>>127
好きな子がcsh使いだったので(ポ

139:名無しさん@お腹いっぱい。
04/12/31 17:26:19.net
情報系の仕事してると、F系もN系も何故か苦労してcshスクリプトを
書いてて頭が痛い。

cshスクリプトの中でsh -cなんてするくらいなら最初からsh使えよ…
と思うのだけど、「基盤はsh、業務はcsh」とか訳わからん事言うし。
(他に影響出さない部分は無視してshで書いてるけど)

まぁ最初に作った奴の流用してるからってのもあるんだろうが、いい
加減負の遺産はこれ以上増やさないでくれ…

140:名無しさん@お腹いっぱい。
04/12/31 17:31:12.net
>>139
馬鹿?

141:名無しさん@お腹いっぱい。
04/12/31 22:04:07.net
tcshに「うぐぅ」とか「ほぇ~」とか言わせるのが厨の使い方だろ。

142:名無しさん@お腹いっぱい。
05/01/01 07:53:01.net
>>141
玄人の使い方だろ?厨は犬使うからbashが基本だ。
ちょっといい気になるとzshなんて使い始めるぞ。
それに今更tcsh使いはじめる香具師なんて多くはないだろ。
「うぐぅ」とか「ほぇ~」とか言わせてるのは、ごく一部だろうが
犬使いは、そう言うのバカにしそうだしなw

143:名無しさん@お腹いっぱい。
05/01/01 08:50:19.net
馬鹿だからこそ、tcshなんて疑いもなく使いはじめるわけでして。

144:名無しさん@お腹いっぱい。
05/01/01 10:45:11.net
cshのオリジナルカタログ作るぞゴルァ
URLリンク(cocoa.2ch.net)

145:さゆPさん ◆SayuminPM.
05/01/02 19:16:57.net
zsh 使いだけど「~なの」とか言わせてみたい

146:名無しさん@お腹いっぱい。
05/01/02 19:47:08.net
↑あんたどっかのスレですさまじいプロンプト設定してなかった?

147:名無しさん@お腹いっぱい。
05/08/18 02:48:18 .net
遊びでやってる人は好きなの選べていいね。
仕事でやってるとなんでも使えないとやってけない。

148:名無しさん@お腹いっぱい。
05/08/18 03:33:04 .net
さゆPさん、どうしてるかな。

149:名無しさん@お腹いっぱい。
05/10/07 23:54:39 .net
(t)csh残さなきゃいけない理由なんてある?
老人ユーザの介護用以外で。

150:名無しさん@お腹いっぱい。
05/10/08 00:36:18 .net
マジレスすると、他にまともなシェルが無いから。

151:名無しさん@お腹いっぱい。
05/10/08 01:05:40 .net
馬首なんかのたぶ補完より、ヒストリ出して ^a^b やってるほうがなんか安心。


152:名無しさん@お腹いっぱい。
05/10/09 21:14:16 .net
She sells C-shell on the sea shore

153:名無しさん@お腹いっぱい。
05/10/09 21:24:04 .net
>>152
She sells C-shell "at" the sea shore が正しい。
元ネタは sea-shells
ネタ間違えるとカコワルイ。
しかもどっかでがいしゅつ。

154:名無しさん@お腹いっぱい。
05/10/09 22:56:35 .net
>>153
マジレスすると元ネタにatもonもbyのバージョンもあるよ。
そのへんにこだわるのは日本人だけ。

155:名無しさん@お腹いっぱい。
05/10/10 02:27:48 .net
ある企業で、

#!/usr/bin/csh
sh -c ` XXXX 1> /dev/null 2>log`

。。。 スクリプトで csh を使うメリットってあるの?
関数もないのになぜ「C」を名乗ってるんだ?

156:名無しさん@お腹いっぱい。
05/10/10 14:41:26 .net
UNIX+CShell+C というスキームだから。

スクリプトしか書けない奴なんて使うこと想定してないだろ。


157:名無しさん@お腹いっぱい。
05/10/10 14:42:45 .net
シェルスクリプトとシェルの話が混ざってないか

ログインシェルはダイナミックリンクをしてなければ何でもいいんじゃないのか。
シェルスクリプトは"sh -c"をしないで動けば何でもいいのでは。

純粋なcshがどの場面でも使えないのは同意だけどね。
といいつつtcshマンセー

158:名無しさん@お腹いっぱい。
05/10/10 15:19:18 .net
>純粋なcshがどの場面でも使えないのは同意だけどね。

今ではあまりないけれど、sh と csh しかないような環境では
ファイル名の補完ができるというだけでも有用。
# set filec して ESC で補完。

159:名無しさん@お腹いっぱい。
05/10/10 15:32:08 .net
>>157
> ログインシェルはダイナミックリンクをしてなければ何でもいいんじゃないのか。

そんな限定が付くのはrootだけで十分だろ。

160:名無しさん@お腹いっぱい。
05/10/10 17:05:50 .net
>>158
補完ができればよいという理由ならbashでも同じこと。

少しでもシェルスクリプトを書いたことがある者なら、
スクリプトとコマンドラインの仕様が違うのはイラつく。
だから(t)csh系はイラね。

161:名無しさん@お腹いっぱい。
05/10/10 17:37:24 .net
>>160
UNIXとその周辺は、ほとんどすべてその種の不統一があると思うけどね。
Windowsはそういうところはマシなんじゃね?
だからって撲滅はやめてほしーね。黙ってなんとかするのがプロってもんだろ。



162:名無しさん@お腹いっぱい。
05/10/10 17:53:18 .net
>>161
論点がずれてる。
スクリプトとコマンドラインで同じシェルを使えば済むこと。
スクリプトではcshは糞というのが、異論のない結論。
なぜわざわざコマンドラインだけcshを使うのか、理解できん。
初心者が間違えてcshを使い始めないようにするためにも、撲滅は必要。

163:名無しさん@お腹いっぱい。
05/10/10 17:54:32 .net
>スクリプトとコマンドラインの仕様が違うのはイラつく。
イラつかない。

164:名無しさん@お腹いっぱい。
05/10/10 17:55:53 .net
>>162
FreeBSDもdefault login shellをtcshってのは辞めたんでしょ。
必然的に死滅していくと思われ

165:名無しさん@お腹いっぱい。
05/10/10 18:04:42 .net
>>164
>FreeBSDもdefault login shellをtcshってのは辞めたんでしょ。
ソース希盆。バージョンは? 6.0から?

166:名無しさん@お腹いっぱい。
05/10/10 22:20:19 .net
>>160
sh と csh しかない環境の話で bash を出されても。
ときどき触らざるを得ない。勝手にインストールできないし。
そういうときは sh よりはマシという理由で自分も csh 起動。

167:名無しさん@お腹いっぱい。
05/10/10 22:46:46 .net
>>166
ハァ?
cshで補完はできないよ。
「補完ができる」のはtcsh。
で、tcshを持ち出すならbashでも同じことだろ、と言ってるんだろ。

168:名無しさん@お腹いっぱい。
05/10/10 22:50:14 .net
いや、new cshはset filecで補完できる。
俺は10年くらい前にUltrixで使ったことがある。


169:名無しさん@お腹いっぱい。
05/10/10 22:54:43 .net
tcsh tcsh .............


TCS! ..........TCS w



tcsh → 東京コンピューターサービス エッチ

170:名無しさん@お腹いっぱい。
05/10/10 22:59:20 .net
kshは?

171:名無しさん@お腹いっぱい。
05/10/10 23:06:02 .net
そうそう、set filec して ESC で補完。TAB と間違えて面倒なときも
あるけどまあ補完できた方が楽だね。

172:名無しさん@お腹いっぱい。
05/10/10 23:33:47 .net
たまに ESC 連打してる奴見かけるね。
ESC はキー位置が遠いから力が入るのだろうか、打鍵音が鳴り響く。

vi 使いは、「カタカタカタカタカタカタ、っポン、カタタ」てな感じだが、
csh 使いは「カタカタカタ、っポン、ポンポンポン、カタカタ」って感じ。

173:名無しさん@お腹いっぱい。
05/10/10 23:39:33 .net
bash tcsh zsh使いは商用機にそんなもの勝手に入れられないから
シェル・シェルスクリプトどちらでもsh csh kshは一通り使えるようにした方がいいと思う。
set filecはsh/cshしかなかった環境では非常にありがたかった。

もう博物館に行ってもらって現場にはあまり出てきてほしくないけどね。

174:名無しさん@お腹いっぱい。
05/10/10 23:44:55 .net
純cshにも(旧式の)補完機能があったとは知らなかった。
純cshは、Ctrl-P/Nによるヒストリーが使えないから、
!!で直前コマンドとか、
historyコマンド打ってから!ヒストリ番号とか
そんなことしか覚えてない。

175:名無しさん@お腹いっぱい。
05/10/10 23:48:57 .net
sh/cshしかない商用UNIXでは、俺はsh使うなぁ。
ヒストリーだの補完だの、ヤワなものはもともとあまり使わないし、
やはり、cshだとシェルスクリプトと文法が違う違和感の方が大きい。
for i in ... とか日常茶飯事で直接コマンドラインに打つから、
cshよりも素の/bin/shの方が使いやすい。マジで。

176:名無しさん@お腹いっぱい。
05/10/10 23:56:46 .net
>175
それだと端末速度が遅いときイライラしないかい。
設置位置とセキュリティ対策と予算でEther経由でログイン出来ず
9600bpsでDOSのターミナルソフトでコピペも出来ないうちは
ファイル保管重宝してるよ。
for in ..はshの方が使いやすいね。

177:名無しさん@お腹いっぱい。
05/10/11 01:10:41 .net
使いやすいってのは単なる主観だね。
別にどうでもいいけど、俺はcshが使いやすい。
シェルはプログラムだ。
機能の違うプログラム。同じような、だけど微妙に異なる
機能を果たすプログラム。
こういう議論は富士山へ上るルートのどれが一番か
、舞姫と猫のどっちが好きかってのと同類の議論。


178:名無しさん@お腹いっぱい。
05/10/11 01:11:50 .net
>>177
じぶんのせかいにとじこもらないでー

179:名無しさん@お腹いっぱい。
05/10/11 01:13:39 .net
>>177
俺も俺も。


180:名無しさん@お腹いっぱい。
05/10/11 02:47:56 .net
bashと聞くと板違いだと思う私はtcshをどうしても手放せない。
補完だけが目的。スクリプトを書くならさっさとshで書いちゃうし。

181:名無しさん@お腹いっぱい。
05/10/11 03:34:07 .net
そんな貴方に zsh

182:名無しさん@お腹いっぱい。
05/10/11 04:34:38 .net
たしかに補完だけが目的なら zsh 最強
まだ tcsh なんて使っちゃってるんですが、っていう感じ

183:名無しさん@お腹いっぱい。
05/10/11 04:55:44 .net
粘るか他に切り替えるかの閾値がとても低くなるので楽です。

184:名無しさん@お腹いっぱい。
05/10/11 09:34:41 .net
>>180
> bashと聞くと板違いだと思う

アホ?



185:名無しさん@お腹いっぱい。
05/10/11 09:50:00 .net
そういう人は居るよ。アホじゃないけど。

186:名無しさん@お腹いっぱい。
05/10/11 10:01:53 .net
そんなにたくさんアホがいるのですか。怖いですね。

187:名無しさん@お腹いっぱい。
05/10/11 18:39:42 .net
FreeBSD 5.xの/bin/shって、いつのまにか、
コマンドライン編集機能とヒストリに対応してるね。
これで益々csh/tcshの存在意義がなくなるね。

188:名無しさん@お腹いっぱい。
05/10/11 18:52:50 .net
>>187
なんで?ならないよ。

189:名無しさん@お腹いっぱい。
05/10/11 22:28:24 .net
>>188
できるよ。やってみろ。

190:名無しさん@お腹いっぱい。
05/10/11 22:31:33 .net
>存在意義がなくなるね。

>ならないよ。

>できるよ。


191:名無しさん@お腹いっぱい。
05/10/11 23:08:48 .net
「なくなるね」に反応するなら「なくならないよ」と書くはず。
「ならないよ」と書いてるから違うだろ。

「なんで(どうしてだ=自問)?(コマンド編集できるように)ならないよ」
と言ってると思われ。

192:188
05/10/11 23:46:47 .net
いえ、(なく)ならないよという意味で使っている(
アンカー付けて自問するほどアレじゃないし
(コマンド編集できるように)ならないと書きたいなら
(対応)してないよと書くはず)よ?

193:名無しさん@お腹いっぱい。
05/10/12 00:58:33 .net
馬鹿は馬鹿らしく素直が一番。

194:名無しさん@お腹いっぱい。
05/10/12 01:27:04 .net
>>191
(君が)馬鹿って言われてる(んだ)よ。酷いね。

195:名無しさん@お腹いっぱい。
05/10/12 04:06:28 .net
単に便利だからというなら、どうしてUNIXなんか使ってるんだろう(笑


196:名無しさん@お腹いっぱい。
05/10/12 07:13:23 .net
>>192
「なくなる」は、これで1語の動詞。
「なくな・る」(ラ行五段自)「なくな(語幹)」+「る(語尾)」
であって、決して、
「なく(形容詞「ない」の連用形)」+「なる(動詞)」
ではない。

よって、「なくなる」に対して、「ならない」と受けるのは誤り。
「なく」は形容詞の連用形じゃなく、「なくなる」の動詞の語幹の一部だから、
「なく」だけを省略できない。
「なくなる」を否定するなら「なくならない」とすべき。

197:名無しさん@お腹いっぱい。
05/10/12 11:44:29 .net
>>187
そんなことは良いから、なんで?なくならないよ。

198:名無しさん@お腹いっぱい。
05/10/12 11:48:30 .net
うむ。やっぱり「ならないよ」で良いや。

199:名無しさん@お腹いっぱい。
05/10/12 11:59:23 .net
/bin/shが「シェルスクリプト専用」との位置付けなら、
/bin/shに「インタラクティブな」機能を追加するはずがない。
それが追加されたということは、FreeBSDの中の人にも
csh(tcsh)をやめようという空気があるのは確かだろう。

200:名無しさん@お腹いっぱい。
05/10/12 12:21:21 .net
>>199
あれって追加されたのか?グランドデザイン時点で
入ってるだろ。
やめる空気があってもいいけれど(やだけど^^;)、
問題は過去の資産をどうするかだな。
自分が使わない余分なシェル、じゃなくて、他人の
使っているアプリだと考えるとどうかな?
資産の中にはBJの思想も含まれるわけだけどな。


201:名無しさん@お腹いっぱい。
05/10/12 12:25:02 .net
>>199
釣りなら釣り、マジならマジで最後まで通せよ。
中途半端な(ことしかできない)奴だな。

何故こんなことを書くかと言うと>>199 には
おかしな(笑えると言う意味で)点が 5ヶ所はあるからだ。

202:名無しさん@お腹いっぱい。
05/10/12 12:40:59 .net
>>200
FreeBSD 4.xのshではできなくて5.xでできるから、追加されたんじゃないの?

203:名無しさん@お腹いっぱい。
05/10/12 12:47:13 .net
BJの思想はviとかだけでいい。
cshは負の遺産だ。

204:名無しさん@お腹いっぱい。
05/10/12 12:51:38 .net
自分が最近知ったからって最近追加されたと思うのは

205:名無しさん@お腹いっぱい。
05/10/12 16:43:57 .net
>>203
仮想記憶とかジョブコントロールとか他にも遺産はあるだろ。(思想?)

206:名無しさん@お腹いっぱい。
05/10/12 19:14:11 .net
>>205
仮想記憶云々はシェルの議論とは直接関係ない。
ジョブコントロールは確かにcsh発祥だが、
すでにB-sh系にも採り入れられているから、
cshを撲滅しても遺産が残るので問題ない。
cshに「しか」ないもので、捨てて困るものはもはやないはず。

207:名無しさん@お腹いっぱい。
05/10/12 19:19:09 .net
>>206
はず、か。恣意ね。

208:名無しさん@お腹いっぱい。
05/10/12 19:27:23 .net
>>206
じゃあ、「もはやない。」と言い切る。満足?

209:名無しさん@お腹いっぱい。
05/10/12 19:31:38 .net
そんな言葉じりをとらえるのやめて、
csh撲滅反対派の人は、なぜ反対なのか、
正直な意見を聞かせて欲しいな。
まだ一部にユーザーが残っている件については、
/binからは外してports送りという案でいいと思うが。
/bin/csh -> /usr/local/bin/csh
のシンボリックリンクくらいは置いてやっていいよ。

210:名無しさん@お腹いっぱい。
05/10/12 19:38:11 .net
>>208
cshに「しか」ないもので、捨てて困るものはある。

211:名無しさん@お腹いっぱい。
05/10/12 20:05:11 .net
perlだってports化しました。
なのに、なぜにcshだけはports化してはいけないのか、
どうしてcshだけが特別なのか、
これが、私がBSDを使い始めた10数年前以来の疑問です。
B-shにだってできる。B-shにできることはB-shに、
スクリプトだってコマンドラインだって、
もはやcshにしかできないことは何もないのです。
私は、本当にcshをports化してはいけないのか、
国民の皆さんに聞いてみたい、そして、実際、
B-sh系ユーザーの方がすでに圧倒的にcsh系ユーザーを抜いているという
民意を反映したいのです。私はcshのports化を改革の本丸と位置付け、
改革を進めてまいります。cshのports化なくしてBSDの未来はありません。
どうぞみなさん、cshのports化にご賛同いただけますよう、
心からお願い申し上げます。

212:名無しさん@お腹いっぱい。
05/10/12 20:58:01 .net
ワロタ

213:名無しさん@お腹いっぱい。
05/10/12 21:01:11 .net
cshをports化しちゃうと、特定コミッター局長からプレゼントをもらえなくなるので
立場上反対せざるを得ません。

214:名無しさん@お腹いっぱい。
05/10/12 21:22:01 .net
ports化後、
合理化と称して徐々に切り捨てられるのではないかと
少数の csh スクリプターは心配しております。

215:名無しさん@お腹いっぱい。
05/10/12 21:37:56 .net
bash厨がキモい。

216:名無しさん@お腹いっぱい。
05/10/12 23:57:13 .net
造反csh厨は除名されても知りませんぞ。

217:名無しさん@お腹いっぱい。
05/10/13 02:08:13 .net
scsh 最強

218:名無しさん@お腹いっぱい。
05/10/13 02:12:23 .net
scsh ってシェルスクリプティング用の scheme だっけ?
と、ググらずに言ってみる。

219:名無しさん@お腹いっぱい。
05/10/13 02:31:18 .net
ish 最強

220:名無しさん@お腹いっぱい。
06/03/03 22:46:26 .net
今、login shellとしてのcsh(tcsh)ユーザーって、
全体の何%くらいですかね。

俺のイメージだと、Linuxを除くUNIXで5%未満、
Linux限定だと1%未満かなと思うけど・・

撲滅まであと一歩だね。

221:名無しさん@お腹いっぱい。
06/03/03 22:58:52 .net
Mac OS Xがつい最近までtcshだったからもっと多いかと。

222:名無しさん@お腹いっぱい。
06/03/04 01:54:25 .net
Windows がつい最近までcmd(ry

223:名無しさん@お腹いっぱい。
06/03/04 02:00:08 .net
何その角度

224:名無しさん@お腹いっぱい。
06/03/04 14:35:38 .net
うちもcsh使ってる
それはいいんだが、同機能でソースが違うのは勘弁して欲しいぜ

なあ、NE○(;´д`)

225:名無しさん@お腹いっぱい。
06/03/08 02:28:08 .net
大昔からの流れでtcshつかってまふ

・その当時WE2のcshにはファイル名補完があった
・!viとか!!とか便利だった
・環境変数を設定するのに2回コマンドを打つのはかったるかった



226:名無しさん@お腹いっぱい。
06/03/12 08:02:37 .net
どうでもいいけど、tcshのcompleteは、やり出すとはまる。

227:名無しさん@お腹いっぱい。
06/03/15 12:11:55 .net
csh/tcsh はどちら使ってるか判らない時があるんだ。

tcsh固有のコマンドが通らないとき思わず「怒りの感情」が
出て、非常に身体に悪いと思う。




228:名無しさん@お腹いっぱい。
06/03/15 12:25:31 .net
FreeBSDよ、rootのシェルのデフォルトをcshにするのやめろ。
suでrootになっても、プロンプトが # なので、cshであることがすぐにはわからない。
コマンドのPATHが通っていることを確認する時、

# type コマンド

と打ってエラーになるし、
一時的に環境変数を変えるために

# LANG=C コマンド

と打ってもエラーになるし、
こういう時「怒りの感情」が出て、非常に身体に悪いなぁ。

229:名無しさん@お腹いっぱい。
06/03/15 13:10:17 .net
>>228
そうだ、そっちのほうが害がある。
だから、cshは要らない。


230:名無しさん@お腹いっぱい。
06/03/15 13:43:57 .net
デフォルトぐらい自分で変えられないバカばかりか
かなしいなぁ

231:名無しさん@お腹いっぱい。
06/03/15 13:44:07 .net
ファビョる前にecho $SHELL しろよw

232:名無しさん@お腹いっぱい。
06/03/15 13:49:45 .net
ほとんど毎日新規鯖の構築やる身としては慣れてるtcshが一番
お客の鯖だから俺様設定にする訳にもいかんし
bashの挙動ウザー

233:名無しさん@お腹いっぱい。
06/03/15 13:57:05 .net
みんなが使うrootのデフォルトを自分で勝手に替えちゃうのか・・・

234:名無しさん@お腹いっぱい。
06/03/15 14:04:36 .net
>>230
「デフォルト自体」を変えるんだよ。配布ファイルのデフォルトを。
自分のマシンの/etc/passwdを編集するんじゃなくて。意味わかってる?
実際やろうとすると反対意見とか全部ねじふせて調整が要るだろうなと想像するけど、
是非やって欲しいな。

235:名無しさん@お腹いっぱい。
06/03/15 14:47:18 .net
>>234
/bin./sh に味付け無しでオK?

236:名無しさん@お腹いっぱい。
06/03/15 14:57:07 .net
>>234
所詮少数意見だろ
配布を変えたらc shellの人間はどうするんだ?
また自分で変えろと?
鼬ごっこだろ
多数決で利便性の多い方に決まるだけ
別にだれも困らないから変えないだけ

いやなら自分で独自版を配布しろ
声が大きくなれば現状と取って変わるよ



237:名無しさん@お腹いっぱい。
06/03/15 14:58:24 .net
わたしはこれでOS替えました

238:名無しさん@お腹いっぱい。
06/03/16 04:55:19 .net
その極端な言説にアレルギー反応がでる人の多いDJBも
c-shellで起動が前提のdaemontoolsなんか作っていた。
そういう意味で撲滅されると困る人もいるのだろう。





239:名無しさん@お腹いっぱい。
06/03/16 05:17:33 .net
ぶっちゃけ、bash使うならsh(ashの)を使うなぁ。
tcshが糞ならbashも同等に糞。目糞が鼻糞を笑ってるだけ。

240:名無しさん@お腹いっぱい。
06/03/16 09:25:29 .net
>>239
sh(ash)使えばいいじゃん。大歓迎だよ。csh(tcsh)さえ捨ててくれれば。
そもそも話の流れでは誰もbashの話はしていないと思うが、、

241:名無しさん@お腹いっぱい。
06/03/16 10:31:14 .net
>>240
bash廃絶運動のヨカン。

242:名無しさん@お腹いっぱい。
06/03/16 10:56:47 .net
kshとかzshだってあるし。

tcshがdefault shellのFreeBSD厨が、
bashがdefault shellのデストリが多いLinuxを嫌って、
bash叩いているケースが多そう。

243:名無しさん@お腹いっぱい。
06/03/16 10:57:40 .net
cshはちょっとしたスクリプトで使ってるけどな
自分にはbashより書きやすいから便利
普段はbash使ってるけどスクリプトが書きづらい

244:名無しさん@お腹いっぱい。
06/03/21 16:08:40 .net
>>242
妄想乙

245:名無しさん@お腹いっぱい。
06/03/21 18:59:18 .net
今からUNIXを始めるという新規のユーザーが
わざわざ(t)cshを選ぶというのは考えにくいし、
今の(t)cshユーザーは、過去に(t)cshを使っていて
そこから抜け出せない老人しかいないはず。
なので、撲滅は時間の問題。

FreeBSDでも、/stand/sysinstallで一般ユーザーを作ると、
デフォルトのシェルは /bin/shになっている。
(/etc/passwdのrootは依然/bin/cshだが)
その意味でも(t)csh撲滅は時間の問題。

246:名無しさん@お腹いっぱい。
06/03/21 21:48:05 .net
馬鹿みたいw

247:名無しさん@お腹いっぱい。
06/03/21 22:57:53 .net
ま、年寄りが自己責任でtcshを使い続けるのは勝手だとしても、
ビギナーにUNIXを教える時はちゃんと/bin/sh前提で教えろってことだな。
ユーザーのデフォルトログインシェルは、当然/bin/shにするべき。

248:名無しさん@お腹いっぱい。
06/03/21 23:32:23 .net
>>172
vi使いはふつうescじゃなくて^[。

249:名無しさん@お腹いっぱい。
06/03/22 07:50:25 .net
10年くらい前だったら、社内アカウントに新規ユーザーを登録する際、
デフォルトのシェルはtcshだったが、今はとりあえずbashになっている。
で、1割ほどのユーザーが自分でログインシェルを変更するが、
変更先はzshかashが多く、tcshは居ない。今でもtcshを使ってるのは
10年前にデフォルトで割り当てたのをそのまま使ってるユーザーのみ。
まあ、半数のユーザーはUNIXにログイン自体ほとんどせず、
SambaやPOPでしかアクセスしないわけなんだが。
残ってるtcshユーザーも、UNIXにはほとんどログインしていないな。

250:名無しさん@お腹いっぱい。
06/03/22 18:35:24 .net
ash に変更する人って何を期待して ash にするの?

251:名無しさん@お腹いっぱい。
06/03/22 18:41:56 .net
復活の呪文が失敗したんだろ

252:名無しさん@お腹いっぱい。
06/03/22 20:28:55 .net
⊃カドルト

253:名無しさん@お腹いっぱい。
06/03/23 01:26:03 .net
つwish

254:名無しさん@お腹いっぱい。
06/03/24 02:14:11 BE:40029023- .net
楽しいscript講座
とりあえず csh で ( 関数なんて使わないよ )
とりあえず 変数は全て setenv で ( 引数なんて面倒でしょ )
とりあえず シグナルと戻り値は全て無視 (っていうか何それ?)
トドメに setuid ( sudo ?タイプミス?)

255:名無しさん@お腹いっぱい。
06/03/25 01:03:16 .net
何でここでkshやpshの話が出てこないんだろう
POSIX標準なのに…

256:名無しさん@お腹いっぱい。
06/03/25 08:10:18 .net
坊やだからさ

257:名無しさん@お腹いっぱい。
06/03/25 08:55:13 .net
>>255
POSIXが実務上は役に立たないということ。

というか、csh系さえ撲滅できればそれでいいんだよ。
B-sh系同士の優劣の議論はスレ違い。

258:名無しさん@お腹いっぱい。
06/03/25 09:08:35 .net
でも自分で使いもしないshellをなんで叩くんだろ?
その心理が疑問

UUCPなんて時代遅れ。糞
使ってるヤツ死ね。撲滅キボンヌ

なんか滑稽だよな
自分が使わず世間が忘れたものに熱くなれる
その若さの秘密が知りたい

259:名無しさん@お腹いっぱい。
06/03/25 09:27:13 .net
使わなくてもダメなところがわかるからだよ

260:名無しさん@お腹いっぱい。
06/03/25 09:29:03 .net
自分がUnixぶつのに関係ないことまで親切なこった


261:名無しさん@お腹いっぱい。
06/03/25 09:36:03 .net
>>258
(理由1)
古い考えのシステム管理者で、
新人ユーザーにcshをデフォで割り当てたりするのを防ぐため。

(理由2)
ユーザーにコマンドを説明する時、
$ LANG=C hoge
と実行してと言うと、「エラーになった」とか言われるのを防ぐため。
(env使えと言う意見は却下)

262:名無しさん@お腹いっぱい。
06/03/25 10:43:05 .net
>>261
古い考えのシステム管理者なら
デフォでcshが割当たらないようなシステム管理をする

ユーザーにコマンドを説明する時は現状のShellを打ち出させて
聞くか
環境線数の前にshell変更のUNIXもぶたせる
もしくは最初から複数のShellを想定する
WindowswをサポートしてUnix屋は廃業する

べつにcshを根本から撲滅するほどの問題ではない
アメリカ人が箸撲滅運動をしてるようで滑稽だよ

263:名無しさん@お腹いっぱい。
06/03/25 10:54:26 .net
>>262
261の言わんとするところを理解してないな。

264:名無しさん@お腹いっぱい。
06/03/26 01:10:49 .net
おれも>>261はどうでもいいな。老害管理者がcshで管理用スクリプト書いたり
しないで自分だけで使う分には無問題。糞爺に Csh Programming Considered
Harmful 読ませたらむきになってcshで書きやがる。市ね

265:名無しさん@お腹いっぱい。
06/03/26 02:08:51 .net
年寄りに正論言っても無駄でつよ
無知のまま放置が一番の薬w

266:名無しさん@お腹いっぱい。
06/03/26 11:44:08 .net
老害管理者が新人ユーザーにcshを教えてしまうのが問題。
新人にとっては初めて触るシェルがcshになってしまうので、
こういう刷り込みは困る。

267:名無しさん@お腹いっぱい。
06/03/26 11:52:28 .net
前も書いたが
cshスクリプトという意味なら問題だが
インタラクティブなシェルにcshを使うのは問題ない
老害はさっさとリストラするように上に伝えてください

268:名無しさん@お腹いっぱい。
06/03/26 11:59:23 .net
インタラクティブなシェルとしてcshを使うのも問題。
初心者ユーザーはいずれ、コマンドラインをファイル化して
シェルスクリプトにできることを知る。
その時、cshの文法をそのまま持ち込もうとするので混乱が起きる。
で、ユーザーによっては、「自分はcshだから」という理由で
cshスクリプトを書いてしまう。
そういう芽は幼少のうちから摘んでおくべき。

269:名無しさん@お腹いっぱい。
06/03/26 12:00:00 .net
老害憎けりゃcshまで憎い

270:名無しさん@お腹いっぱい。
06/03/26 12:40:00 .net
cshがダメなのに気付けない老人という構図です。

271:名無しさん@お腹いっぱい。
06/03/26 16:57:13 .net
うっさいハゲ。

272:名無しさん@お腹いっぱい。
06/03/26 23:06:42 .net
csh撲滅(廃止)までのロードマップ。

・/binから追い出し、/usr/local/binへ(FreeBSDならports化)
・/etc/shellsから/bin/cshを外す。(cshユーザはftp等不可)
・/etc/csh.login /etc/csh.cshrcに、使用非推奨・警告メッセージを追加
・/usr/local/bin/cshを、/bin/shへのシンボリックリンクに変更
・/usr/local/bin/cshのシンボリックリンク自体削除

以上、めでたしめでたし。

273:名無しさん@お腹いっぱい。
06/03/27 01:37:54 .net
cshにchshしようとしたら、obsoleteだからヤメレ!って警告が出るようになれば、
新規ユーザは居なくなるだろうな。

274:名無しさん@お腹いっぱい。
06/03/27 10:35:03 .net
でも実際の話cshの問題はそれなりに受けとめて
スクリプトを書き問題が生じなければそれまで
大量のcshスクリプトを持ってるが365日なんの
問題もない

何熱くなってるの?って話だ


275:名無しさん@お腹いっぱい。
06/03/27 11:08:43 .net
老害キター

276:名無しさん@お腹いっぱい。
06/03/27 11:27:23 .net
百歩譲って「インタラクティブ使用のcshならOK」とするなら、
/bin/cshを/usr/local/bin/cshに移動するべきだな。
どうしても使いたい人は/etc/passwdも/usr/local/bin/cshにする。
すると、#!/bin/csh なスクリプトは動かなくなるので、
これでcshスクリプトを一掃できる。

277:名無しさん@お腹いっぱい。
06/03/27 11:53:14 .net
ついにbashが入ってそうなディレクトリへ移動しなければならないのか

278:名無しさん@お腹いっぱい。
06/03/27 12:39:11 .net
>>276
どうせなら、/usr/local/Program Files/csh にすればいい。
パス名にスペースが入ってると、
#!/usr/local/Program Files/csh
と書いてもスクリプトが実行できない。

コマンドとしての起動はできるので、インタラクティブのみ桶を徹底できる。

279:名無しさん@お腹いっぱい。
06/03/27 13:18:11 .net
所詮素人が寄って集ってもcshは無くならない
歴史を見て未来をみろよ
素人が何人集まっても
政治的に動くこととそうでないことがある

280:名無しさん@お腹いっぱい。
06/03/27 20:10:30 .net
>279
そうだな。
Linusに直メールして、csh使ってるとランダムにkernel panicが起きるよう細工してもらおう。


281:名無しさん@お腹いっぱい。
06/03/27 23:36:51 .net
$HOME/.xinitrc(←これはxinitによって固定的に/bin/shスクリプトで扱われる) に
cshの文法で記述するという、アフォな例が検出されました。

スレリンク(unix板:843番)

exportとsetenvが混在w

282:氏天国
06/03/27 23:42:36 .net
うーそー
じゅんになー
あきさみよー
でーじなってる

283:名無しさん@お腹いっぱい。
06/03/28 00:57:32 .net
ln /bin/sh /bin/csh


284:名無しさん@お腹いっぱい。
06/03/28 15:03:09 .net
またまたヴァカ発見。↓
スレリンク(unix板:17番)

やっぱ早くcsh撲滅しないと、初心者の被害者増やすなぁ。

285:名無しさん@お腹いっぱい。
06/03/29 19:50:02 .net
>>258
uucp使って人に迷惑かけるやつはそんなにいないが、
cshつかうやつはたいてい人に迷惑かけてるだろ。

286:名無しさん@お腹いっぱい。
06/04/11 22:49:04 .net
age

287:名無しさん@お腹いっぱい。
06/04/12 03:01:44 .net
>>284
それはべつにどうでも

288:名無しさん@お腹いっぱい。
06/04/12 03:47:33 .net
嬉々として老害、老害いってねーで
シェルのひとつやふたつくれぇちゃっちゃとマスターして
「あ、それ csh ですか?20分で書き直すんで待ってもらえます?
 ちなみにこの際、都合のいいシェル言っていただければ、できますが?」
くれぇ言えや!このゆとり教育世代の腐れニートどもが!



って言うべき流れかなと思った

289:名無しさん@お腹いっぱい。
06/04/20 20:00:01 .net
最近書いたtcshの補完が全部shに丸投げw

290:名無しさん@お腹いっぱい。
06/04/28 14:02:23 .net
>>289
日本語でおk

291:名無しさん@お腹いっぱい。
06/05/16 20:55:00 .net
Linux使ってたんですが最近FreeBSD使い始めました。
とりあえずportsからbash入れたんですが、rootのログインシェルを /usr/local/bin/bash に変更したくてたまりません。
どうしたらいいでしょうか?

292:291
06/05/16 21:02:42 .net
そういえば使ってるFedora Core 5 になぜかtcshが入ってるなあ・・・
削除しちゃえと、
# yum remove tcsh
とやったら・・・


Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Removing:
tcsh i386 6.14-6.fc5.1 installed 1.1 M
Removing for dependencies:
cvs i386 1.11.21-3.2 installed 1.5 M
mkbootdisk i386 1.5.2-5.2 installed 6.9 k
mtools i386 3.9.10-1.2.1 installed 326 k
syslinux i386 3.10-2.2 installed 430 k

Transaction Summary
=============================================================================
Install 0 Package(s)
Update 0 Package(s)
Remove 5 Package(s)


tcshに依存してるパッケージがこんなに・・・orz

293:名無しさん@お腹いっぱい。
06/05/16 22:25:31 .net
>>292
cp /usr/local/bin/bash /bin/csh

294:名無しさん@お腹いっぱい。
06/05/16 22:54:55 .net
シングルユーザーモード入るときシェル選べるから、 /usr/local/bin/bash をrootのログインシェルにしても問題ないですかねえ?

>>293
せめてシンボリックリンクにさせてください

295:名無しさん@お腹いっぱい。
06/05/16 23:47:21 .net
>>292
それって、単に依存してることになってるだけで、
強制削除しても何も問題ないよ。
(実際オレはtcsh削除した)
依存パッケージになってしまったのは
ある意味パッケージングミスだな。

296:名無しさん@お腹いっぱい。
06/05/17 11:09:29 .net
>>294
その bash は static link になってる?
FreeBSD だと /bin と /usr 以下は runlevel で分けられてるとオモタ
root アカウントは single user mode 起動時の最後の砦だから、
常に mount される /bin 以下の shell にしとくのが無難だよ。
でないと library が link デキネーって怒られるからw
Solaris なら /bin は /usr/bin の symbolic link だから init S でも
問題が起きるケースは少ないけど

297:名無しさん@お腹いっぱい。
06/05/17 11:24:20 .net
run level は SysV 由来のもの。FreeBSD にはねーよ。


298:名無しさん@お腹いっぱい。
06/05/24 11:38:23 .net
>>295
気付いてたなら報告しといてよ。

299:名無しさん@お腹いっぱい。
06/05/24 13:03:39 .net
>>296
最近は/bin以下の物もstatic linkじゃないよ(6.1R/stable)

% file /bin/sh
/bin/sh: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 6.1 (601100), dynamically linked (uses shared libs), stripped
% file /bin/csh
/bin/csh: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 6.1 (601100), dynamically linked (uses shared libs), stripped

それで作られたのが/rescueだ
% ls -l /rescure
-r-xr-xr-x 131 root wheel 3319064 May 7 04:28 [
-r-xr-xr-x 131 root wheel 3319064 May 7 04:28 atacontrol
-r-xr-xr-x 131 root wheel 3319064 May 7 04:28 atm
-r-xr-xr-x 131 root wheel 3319064 May 7 04:28 atmconfig
: ↑
いわゆるクランチバイナリ。

300:名無しさん@お腹いっぱい。
06/05/26 00:28:03 .net
ports の zsh は、Makefile を変更。 
NOSHARED=yes にして /bin/zsh として突っ込んでる。
クランチバイナリの/rescue なんて使いたくないね。
バカ犬のインストーラに、よくついてくるbusyboxもオプションが
マトモに渡せないのでかなり腹たたよ。
バカ犬はそれ以来うちの箱では飼ってない。客んとこに有るけど
手入れはおざなり(っつか、手間がかかりすぎる)

301:名無しさん@お腹いっぱい。
06/08/15 14:57:31 .net
標準エディタはedだからEmacsは使うべきじゃない。
edと同系統のviに統一すべき。

302:名無しさん@お腹いっぱい。
06/09/01 01:23:00 .net
>>295
以外にcshスクリプトとかパッケージに含まれてたりするんじゃないの?

>>296
もうrescueイメージでネットブートでもCD-ROMブートでも簡単に
できて復旧できるから、あまりstatic linkに拘る必要はなくない?


303:名無しさん@お腹いっぱい。
06/09/01 08:16:19 .net
>>302
実行しなければならないcshスクリプトはパッケージに含まれていない。

含まれているのは、cshユーザー用の環境変数設定ファイルとか。
(もちろん、B-shユーザー用もある)
なので、これはcshに依存しているわけではないのに、
パッケージ上は依存扱いにされているのが間違い。

304:名無しさん@お腹いっぱい。
08/04/04 21:46:34 .net
くだスレでこっちで質問するように言われたのですが、
マルチポストになると思ったのでリンクだけ張っておきます
cshで環境変数PATHの設定の仕方についての質問です

スレリンク(unix板:192番)

305:名無しさん@お腹いっぱい。
08/04/04 21:49:13 .net
>>304
またまた csh被害者だね。cshを捨てると直るよ。マジで。

306:304
08/04/04 23:19:59 .net
FreeBSD でシェルを変えるのってどうしたらいいのでしょう?

307:名無しさん@お腹いっぱい。
08/04/04 23:36:39 .net
シェルを起動する

308:名無しさん@お腹いっぱい。
08/04/05 09:57:46 .net
>>306
chsh

>>307
それだとログインシェルは変わらないし、ログインシェル用の設定ファイルが読まれない。


309:名無しさん@お腹いっぱい。
08/04/05 12:28:45 .net
>>308
どこにログインシェルを変えたいって書いてあるんだよ

310:名無しさん@お腹いっぱい。
08/04/05 13:15:30 .net
>>309
>>304

311:304
08/04/05 14:01:12 .net
>>307
>>308
ありがとん

bashに変えてみたけど
.profile再生成とかできないのかな?
結局kahua-packageが起動できないorz

312:名無しさん@お腹いっぱい。
08/04/05 14:37:22 .net
エラーメッセージを秘密にしたまま質問したいならエスパースレで聞くといいよ。
スレリンク(unix板)

313:304
08/04/05 15:24:16 .net
エラーメッセージではないですが
command not found
と言われます


314:名無しさん@お腹いっぱい。
08/04/05 16:13:13 .net
>>313
やっぱり、初心者にとって、エラーメッセージを示すこと自体困難だよな。
>>312 の言う通り、
【エスパー】くだ質【エラーメッセージ不要】(1)
で質問し直して。
そっちのスレでは「マルチ」って言われないから、再度質問分を書いてもOK。
今回の場合、単にPATHの通し方がわかってないだけみたいだけど、
エスパースレの方に移動してから回答してやるから。

315:304
08/04/05 20:39:04 .net
スレを汚してすみません。
移動しましたので宜しくお願い致します

316:名無しさん@お腹いっぱい。
08/04/05 20:57:35 .net
ここは糞スレだから汚れてはいないw

317:名無しさん@お腹いっぱい。
08/04/05 21:04:15 .net
tcshのports送りマダー?

318:ウサチャソ ◆/0IEZmXnQ6
08/04/06 19:41:08 .net
csh が存在する理由が解らない。
老人ホーム以外の意味なんてあるんだろーか?

319:名無しさん@お腹いっぱい。
08/04/06 19:46:53 .net
普通に便利だと思うが

320:名無しさん@お腹いっぱい。
08/04/09 12:04:17 .net
普通にしか便利じゃないのに文法が違う

321:名無しさん@お腹いっぱい。
08/04/18 01:03:17 .net
インタラクティブな場合には便利とかいう意見もあるけど、
それはbsh系が貧弱だった過去の評価を未だに盲信してるだけじゃないのかな。
職場でしばらくtcshを使っていたが
結局自分でHOMEの下に違うの入れちゃった。

322:名無しさん@お腹いっぱい。
08/04/27 14:11:43 .net
半年前にcsh&tcsh Manual&Referenceをブックオフにて
100円で購入した僕が通りますよっと。

323:名無しさん@お腹いっぱい。
08/05/20 22:39:41 .net
cshは必要です。

324:名無しさん@お腹いっぱい。
08/05/24 10:35:08 .net
% alias lo logout
% alias ls 'ls -AF'
% alias rm 'rm -i'
% alias q99 'echo please | mail -s q99 quest@B'
% alias quest 'echo please | mail -s \!* quest@B'
% alias ans 'mail -s \!:1 ans@D'
% alias ppa 'echo \!* echo'
% alias ppb 'echo echo'
このようにコマンドを実行したあとに
ppa sunday ppb
ppb sunday ppa
quest q30
と打つと置換が完了した時にどのような文字列に変わるか、という課題が
わかりません。

aliasが置換コマンドなのはわかります。
ただ、\!*や\!:1がどう影響を及ぼすかが私には推測できません。
どなたかUNIXにお強い方がいましたら
ご教授を願えないでしょうか?

325:名無しさん@お腹いっぱい。
08/05/24 13:30:36 .net
cshの課題出す教授の講義受けるの止めろ
時間の無駄だから

326:名無しさん@お腹いっぱい。
08/05/24 15:47:58 .net
あのう、cshって現場ではもう使われていないんですかぁ?

327:名無しさん@お腹いっぱい。
08/05/24 19:49:25 .net
csh恥ずかしい・・・

328:名無しさん@お腹いっぱい。
08/06/07 01:29:54 .net
普通はksh93、そうでなければ、Bash (3.x)、
パワーユーザはzsh、
感傷に浸りたいひとが、tcsh 。

329:名無しさん@お腹いっぱい。
08/06/10 08:45:10 .net
cshのデメリットって
標準エラー絡みしか思いつかないんだけど他にもある?

330:名無しさん@お腹いっぱい。
08/06/10 08:59:50 .net
csh why not

331:名無しさん@お腹いっぱい。
08/06/17 10:59:44 .net
#!/bin/csh -f

set com=$0

if ($#argv < 1 || $#argv > 3) then
echo Usage:$com start_line total_lines '[file_name]'
exit 1
endif
if ($#argv == 2) then
set s=$1
set t=$2
tail +$s | head -$t
else
set s=$1
set t=$2
set f=$3
cat $f | tail +$s | head -$t
endif

exit 0
echo ------------------

これだとエラーがでます。どなたか改良してください。お願いします。

332:名無しさん@お腹いっぱい。
08/06/18 02:37:22 .net
cshはglobの制御がどうにもしがたい。糞。

333:名無しさん@お腹いっぱい。
08/06/18 03:12:26 .net
#!/bin/sh

com="$0"

if [ $# -lt 2 -o $# -gt 3 ]; then
echo Usage:$com start_line total_lines '[file_name]' >&2
exit 1
fi

if [ $# -eq 2 ]; then
s="$1"
t="$2"
tail +$s | head -$t
else
s="$1"
t="$2"
f="$3"
cat $f | tail +$s | head -$t
fi

exit 0


334:名無しさん@お腹いっぱい。
08/07/15 17:13:57 .net
-------------------------------
echo "running..."

set num = 1

foreach file (*.ppm)
./mser.ln $file img$num.mser
./compute_descriptors.ln -sift -i $file -p1 img$num.mser -o1 mser.img$num.sift
@ num++
end

echo "running..."

set num = 1

foreach file (*.ppm)
./mser.ln $file img$num.mser
./compute_descriptors.ln -sift -i $file -p1 img$num.mser -o1 mser.img$num.sift
@ num++
end
----------------------------------------------
こう書くと
./mser.sh: line 7: syntax error near unexpected token '('
./mser.sh: line 7: 'foreach file(*.pp,)'
と言うエラーが出ます。ボスケテ!

335:名無しさん@お腹いっぱい。
08/07/15 21:32:06 .net
cshか・・・今となっては全てが懐かしい


336:名無しさん@お腹いっぱい。
08/07/15 21:49:37 .net
マルチかよ

337:名無しさん@お腹いっぱい。
08/07/19 22:13:32 .net
おまえらdashって知ってるか?

338:ウサチャソ ◆/0IEZmXnQ6
08/07/20 05:13:21 .net
>>337
えー初耳なにそれ

339:名無しさん@お腹いっぱい。
08/07/20 23:54:08 .net
昔debianでNetBSDのshのlinux移植版をdashってしてたけど
そのこと?

340:名無しさん@お腹いっぱい。
08/07/28 11:40:07 .net
dash(dead again shell)ってどこかで聞いた覚えがあるけど
なんだか思い出せん

341:名無しさん@お腹いっぱい。
08/09/13 18:03:43 .net
うちの会社では、基幹系の処理をcshスクリプトで実行してます。
6,7年前に汎用機からSoralisに基幹処理を移行したときに、
対話もスクリプトもcshってことになっちゃったみたいです。

3,4年前から対話はtcshでやろう!ってことになってきたのですが、
それもログインシェルの変更ではなくて、
ログイン後に"tcsh"っていちいちタイプしてますよ。
(わたしはbashだけど)

「標準エラー出力が...」なんて言っても、
会社の同僚はみんな汎用機 & JCL & COBOL の人達なので(わたしもそうですが)、
そもそも標準入力・標準出力を理解してないので、話になりません。

まだまだそういう環境もあるのですよ...(最近できたんだけど)

342:名無しさん@お腹いっぱい。
08/09/13 18:39:01 .net
スクリプトはbshで書くようにしないとでしょ...

343:名無しさん@お腹いっぱい。
08/09/13 20:16:34 .net
ナショナル撲滅してパナソニックに統一しろ! みたいなスレだな

344:名無しさん@お腹いっぱい。
08/09/13 20:20:10 .net
>>343
え、それはすでに決定事項で、パナソニックに統一されますが。今年10月からだっけ?

345:名無しさん@お腹いっぱい。
08/09/13 21:53:00 .net
Soralisならしょうがないな

346:名無しさん@お腹いっぱい。
08/09/13 23:06:13 .net
csh(tcsh)も、期限を切ってサポート終了すればいいのだな。

347:名無しさん@お腹いっぱい。
08/09/13 23:16:41 .net
池田大作が「宗教は自由」って言ってた

348:名無しさん@お腹いっぱい。
09/02/11 17:45:33 .net
cshの勉強をするのにお勧めの書籍ってある?

349:名無しさん@お腹いっぱい。
09/02/11 18:27:25 .net
C SHELL フィールドガイド とか?
でもなんだっていまさらcshなの?
SI会社で昔のcshスクリプトでもメンテナンスしなきゃならないの?

350:名無しさん@お腹いっぱい。
09/02/11 21:10:55 .net
URLリンク(www.faqs.org)

351:名無しさん@お腹いっぱい。
09/02/11 21:16:37 .net
汚れ仕事は金になる~

352:名無しさん@お腹いっぱい。
09/03/06 23:26:10 .net
いわゆるラッパースクリプトで、
コマンドライン引数をそのまま、
引数に含まれるスペースや記号に解釈を加えないで、
別のコマンドの引数として引き渡す場合、
/bin/shなら、

command "$@"
としますが、

これ、cshスクリプトだとどう記述するんですか?

353:名無しさん@お腹いっぱい。
09/03/07 20:28:05 .net
>>352
$argv
man を見るんだ。


354:名無しさん@お腹いっぱい。
09/03/07 20:58:39 .net
>>353
$argvでは、引数に含まれるスペースや記号が解釈されてしまう。
そもそも$argvでできるなら質問しないだろ。

質問は「引数に含まれるスペースや記号を解釈しないでそのまま渡す方法」だ。

355:名無しさん@お腹いっぱい。
09/03/07 21:19:41 .net
>>352
それは cshでは不可能というのが結論。だからcsh撲滅すべし。

cshの $argvは、/bin/shの $* 相当なので、内容が再解釈されるから不可。
cshの "$argv"は、/bin/shの "$*" 相当なので、引数が連結されてしまうから不可。

/bin/shの "$@" に相当するものは cshには存在しない。


>>353
おまえ、あほだろ。何が「man を見るんだ」だ。

356:名無しさん@お腹いっぱい。
09/03/07 21:47:04 .net
まんまんを見る

357:ウサチャソ ◆/0IEZmXnQ6
09/03/08 02:35:04 .net
>>356
man man
か?

それにしても最近おまんまn見てねーな…

358:man man
09/03/12 15:20:51 .net
しこっていいのよ

359:名無しさん@お腹いっぱい。
09/04/08 23:19:38 .net
以下のソースで動きが異なる理由が知りたい。。。

#!/usr/csh -f
set cmd = ( 'echo "test test2"' "|" "wc -l")
set cmd2 = ( "echo" "|" 'echo "test test2"' "|" "wc -l")

echo "cmd=$cmd"
eval $cmd

echo "###########################"
echo "cmd2=$cmd2"
eval $cmd2

360:名無しさん@お腹いっぱい。
09/04/08 23:45:17 .net
359だが、別の環境でやったら同じ動きをしたよ。。。
バージョンとかの違いだったみたいです。お騒がせしました。

誰も見てねーとは思いますが

361:名無しさん@お腹いっぱい。
10/04/26 18:05:48 .net
デスマご苦労さまでちゅ!

仕事がなくてヒマしているPGさんも
ご苦労さまでちゅ!

壊れて辞めてしまったPGさんも
これまた本当にご苦労さまでちゅた!

さて、フロは入ったほうがさっぱりいたしますが、
スレタイどおりと思いませんか?


362:名無しさん@お腹いっぱい。
11/01/29 19:47:30 .net
撲滅する必要は無い

363:名無しさん@お腹いっぱい。
11/01/29 20:06:45 .net
>>362
ある。

364:名無しさん@お腹いっぱい。
11/01/29 20:12:17 .net
応募資格:
・UNIXシェル(コマンドライン)上にて一通りの作業ができる方
(ただし、ログインシェルがcsh系(tcshを含む)の方は応募を御遠慮下さい)

365:名無しさん@お腹いっぱい。
11/02/27 22:33:14.72 .net
バカなcshのこれ、解決できないの?

% alias foo 'echo Hello' ; foo
foo: Command not found.
% foo
Hello



366:名無しさん@お腹いっぱい。
11/02/27 23:28:54.15 .net
そんな訳ないだろと思って試してみたら本当だったでござる

367:名無しさん@お腹いっぱい。
11/02/27 23:30:17.05 .net
と思ったらbashでもzshでも同じじゃねーか!ふざけんな

368:名無しさん@お腹いっぱい。
11/02/28 06:31:21.81 .net
$ foo(){ echo Hello;}; foo
Hello
$ foo
Hello

369:名無しさん@お腹いっぱい。
11/02/28 13:45:26.63 .net
1行ごとに解釈して alias 展開したのち、全体を実行するという man 通りの動作です。
% alias foo 'echo Hello' ; foo
foo: Command not found.
% unalias foo ; foo
Hello


370:名無しさん@お腹いっぱい。
11/02/28 15:24:31.11 .net
>>365
それできないと何か困るの?

371:名無しさん@お腹いっぱい。
11/02/28 16:21:12.40 .net
>>369
へぇー

372:名無しさん@お腹いっぱい。
11/04/27 12:30:41.83 .net
今のLinuxの主要ディストリはみんな、
デフォではcsh/tcshは入ってないんだよ。
撲滅完了?

373:名無しさん@お腹いっぱい。
11/04/27 14:56:56.62 .net
ビル女医大先生は、どうして新しいシェル文法を考えるのをやめて、
Bourne shellにジョブコンとヒストリを付けてくれなかったのか…
>>372
Mac OS Xもtcshをディフォルトログインシェルにするの辞めたしな。
HP-UXは今でもそうなんじゃない? *BSDはもう最近全然知らないが。

374:名無しさん@お腹いっぱい。
11/05/04 23:59:38.43 .net
>>373
C言語の文法を、スクリプト書き、もっと言えばインタラクションの場面でも使いたかったからでは。
C shellって名前にしたぐらいなんだから。

375:名無しさん@お腹いっぱい。
11/05/06 11:36:51.11 .net
She sells C shells by the seashore.


376:名無しさん@お腹いっぱい。
11/05/30 19:51:13.42 .net
撲滅だよもん

377:名無しさん@お腹いっぱい。
11/08/10 11:51:49.83 .net
$の部分を食べたらおいしかった

378:名無しさん@お腹いっぱい。
11/08/10 21:59:40.74 .net
bshの文法が受付けないわ
tcshで桶

379:名無しさん@お腹いっぱい。
11/08/11 02:30:15.45 .net
文法はどうでもいい部分。
cshは意味に問題がある部分が多い。

380:名無しさん@お腹いっぱい。
11/08/11 11:17:20.47 .net
基本文献
URLリンク(www.faqs.org)

381:名無しさん@お腹いっぱい。
12/02/26 15:19:16.96 .net
いい加減Cシェル書くのは止めようよ。マジCシェルみたいなカス使ってるの
ってFREE?BSDユーザだけだよ。ていうかROOTのデフォルトシェル
がTCシェルなのは一体何時になったら変わるの?

Cシェル使うくらいならSHシェル使ってください。それか、あとからバッシュ
入れるか。

382:名無しさん@お腹いっぱい。
12/02/27 08:22:51.95 .net
わざわざ意識してまで間違った言葉遣い&用語選びをしなくてもいいんですよ。

383:名無しさん@お腹いっぱい。
12/07/12 19:20:13.06 .net
今月はじめ、職場に新しいPC(Core i7の結構ハイエンド構成)が入りました。
多分私が運用保守をまかされそうな雰囲気です。業務的にとある構造分析や
シミュレーションなど行う必要があり、制御コマンドとしてシェルスクリプトを
使用するのは聞いていたのですが、そのファイルを開いて1行目に書かれていたのは
#!/bin/tcshという文字列でした。

「うへぇ~、よりによってtcshかよ」

ファイル記述子のリダイレクト不可、クオートのネスティング等に無理あり、
今の奴でさえシェル関数は使えないし、パイプラインの終了ステータスもおかしいし、
今時の担当者が扱ってセキュリティは大丈夫なのか不安はつきませんし、
スクリプトとしてのcshは嫌われるのでネット上の情報も少なく調べるのも大変です。
おそらく導入に際して、大学など教育機関で最初にcshに触れて刷りこまれた人間が
強気の知ったかぶりをして発言権を得て「俺流」をつらぬき紛れ込ませたのでしょう。

昔、当時、シェルで唯一aliasやhistoryやジョブコントロールの機能が使えた
cshは大学など教育機関に浸透していて、日本のシェル界に多くのバカを輩出しました。

これから私は、おそらくそういうバカが、$*でスペース入りファイル名が扱えないとか
$<でファイルから読めないのかとか、if文の条件式のコマンドでリダイレクト
できないのかなどと、シェル通気取りの偏ったどうでもいい我侭を言い出し
(だからcshスクリプト書くんじゃねーよ)それと戦わなければならないのでしょう。
そして時代によって決着している、過去25年のシェル界隈のくだらないそれらの議論が
再現され、それに巻き込まれるのでしょう。もう今からうんざりです。

だからお願いです。教育現場ではbashでもzshでもkshでもashでも
Bourne shでもなんでもいいですがBシェル系のシェルにしてください。

教育機関で懐古趣味のバカを量産されると現場が非常に苦労するのです。

384:名無しさん@お腹いっぱい。
12/07/12 19:50:14.10 .net
そのコピペ面白くないからもういいよ。

385:名無しさん@お腹いっぱい。
12/07/12 21:01:57.19 .net
コピペだったのか。マジレスしそうになったよw

386:名無しさん@お腹いっぱい。
12/07/13 06:45:17.86 .net
>>383
「輩出する」は自動詞

×バカを輩出しました。
○バカが輩出しました。

387:名無しさん@お腹いっぱい。
12/07/13 08:07:12.14 .net
ただの誤変換だろ。

○バカを排出しました。

388:名無しさん@お腹いっぱい。
12/07/13 08:49:13.87 .net
>>387
だからそれが間違いだって。

○バカが輩出しました。

389:名無しさん@お腹いっぱい。
12/07/13 09:16:52.20 .net
一人じゃ輩出できないけどな。次々出てこないと。



390:名無しさん@お腹いっぱい。
12/07/13 10:48:15.32 .net
>>388
ぷぷぷっ。教養の無さを自白すんなよ。どっかのブログでつけた浅知恵か。
「排出する」は他動詞だから「バカを排出しました」は正しい用法。

>>389
元記事は「多くのバカ」となってるよ。切り出し方も無教養だったって事だね。

391:名無しさん@お腹いっぱい。
12/07/13 10:53:49.08 .net
>>390
だから、排出じゃなくて輩出だよ。>>383 もう1回良く読め。
勝手に排出と読み間違えて何言ってんだか。

392:名無しさん@お腹いっぱい。
12/07/13 11:05:11.50 .net
そんなひっぱるほどの話じゃない。

393:名無しさん@お腹いっぱい。
12/07/13 15:31:20.10 .net
>>381
排出: (内部の不用な物を)外へ出すこと。
(不要な)バカが(大学など教育機関)から外に出てきたんだから、排出であってるじゃん。

394:名無しさん@お腹いっぱい。
12/07/13 16:19:11.30 .net
>>393
原文は >>383
383では輩出と言ってる。原文がすべて。以上終了。

(排出だと前後の文脈と矛盾して意味が通じない)

395:名無しさん@お腹いっぱい。
12/07/13 16:34:20.85 .net
単なる誤変換。排出でも前後の文脈と全然矛盾しない。

ゴミやクズやバカに対しては「~~を排出する」は正しい用法であること
に気づかず、どこかのブログで仕入れた半端な知識を振り回したお前の負け。

396:名無しさん@お腹いっぱい。
12/07/13 16:48:22.39 .net
「~を排出する」では「~」の部分に「人」は来ない。「物」が来る。

397:名無しさん@お腹いっぱい。
12/07/13 16:54:24.26 .net
>>395
「cshで教育を受けた人間が世の中に輩出した」という文脈だから、
「排出」だと矛盾する。「排出」だとcshで教育を受けたことが不要なことだったという
意味になってしまうから。

もちろん、原文ではそういう大学教育をやめろともう一度否定してるんだけど、
その否定元が「排出」だと意味が逆になってしまう。
よって、原文は「輩出」の意味で書いていると考えられる。

398:名無しさん@お腹いっぱい。
12/07/13 17:44:18.52 .net
>>395
> 「排出」だとcshで教育を受けたことが不要なことだったという意味になってしまうから。

違う。不要なのはcshの教育を受けたことではなく、csh教育を受けた結果としてできた「バカ」。
なんら矛盾しない。

399:名無しさん@お腹いっぱい。
12/07/13 18:02:43.74 .net
>>398
「排出」だと仮定した場合の主語は「大学等」だから
398が言うことは矛盾している。大学自身は「排出」だと考えていないのだから。

で、>>396 には反論できないのかな?w

400:名無しさん@お腹いっぱい。
12/07/13 18:11:03.07 .net
このように、>>838からは排出の誤変換なのか、自動詞の誤用なのかは判断できないのだが、

>>386はどこかのブログで仕入れた半端な知識で自信たっぷりに
> ×バカを輩出しました。
> ○バカが輩出しました。
と突っ込んでしまった。
ところが、「輩出する」とは「たくさん出てくる」という事なので、主語は複数で
なければならない。○をつけた文が誤用という愉快な突込みをとなってしまった。

×多くのバカを輩出しました。
○多くのバカが輩出しました。
とすべきであろう。付け焼刃でアゲ足を取ると恥をかくという実例である。

401:名無しさん@お腹いっぱい。
12/07/13 18:15:36.30 .net
>>399
反論して欲しいなら反論に値するレスを書け。
ゴミカス書いて反論できないのかとは片腹痛いわ。

バカはゴミに等しい。すなわち「物」以下なので正しい用法。

402:名無しさん@お腹いっぱい。
12/07/13 18:16:16.69 .net
>>400
元の文の >>383 に「多くのバカ」ってちゃんと書いてあるよ。
何ボケてんだかw

403:名無しさん@お腹いっぱい。
12/07/13 18:17:16.12 .net
>>396 への反論まだぁ? ないなら >>396 の勝ちだね。

404:名無しさん@お腹いっぱい。
12/07/13 18:19:27.91 .net
かつてスクリプトスレで/dev/tcpで無知晒したクンが騒いでるのか。
文体そっくりでわかりやすいわ。

405:名無しさん@お腹いっぱい。
12/07/13 18:19:43.08 .net
>>399
これもゴミカスだな。

> 大学自身は「排出」だと考えていないのだから。
ゴミを排出する側がゴミであるか否かを決定できるならゴミの違法投棄なんて
起こるはずがない。「排出」していると考えなければいいんだからな。

406:名無しさん@お腹いっぱい。
12/07/13 18:31:41.51 .net
383です。ご指摘通りバカが輩出しましたに直しました。レスが流れてしまったのでもう一度書きます。
-----------------------------------------------------------------
今月はじめ、職場に新しいPC(Core i7の結構ハイエンド構成)が入りました。
多分私が運用保守をまかされそうな雰囲気です。業務的にとある構造分析や
シミュレーションなど行う必要があり、制御コマンドとしてシェルスクリプトを
使用するのは聞いていたのですが、そのファイルを開いて1行目に書かれていたのは
#!/bin/tcshという文字列でした。

「うへぇ~、よりによってtcshかよ」

ファイル記述子のリダイレクト不可、クオートのネスティング等に無理あり、
今の奴でさえシェル関数は使えないし、パイプラインの終了ステータスもおかしいし、
今時の担当者が扱ってセキュリティは大丈夫なのか不安はつきませんし、
スクリプトとしてのcshは嫌われるのでネット上の情報も少なく調べるのも大変です。
おそらく導入に際して、大学など教育機関で最初にcshに触れて刷りこまれた人間が
強気の知ったかぶりをして発言権を得て「俺流」をつらぬき紛れ込ませたのでしょう。

昔、当時、シェルで唯一aliasやhistoryやジョブコントロールの機能が使えた
cshは大学など教育機関に浸透していて、日本のシェル界に多くのバカが輩出しました。

これから私は、おそらくそういうバカが、$*でスペース入りファイル名が扱えないとか
$<でファイルから読めないのかとか、if文の条件式のコマンドでリダイレクト
できないのかなどと、シェル通気取りの偏ったどうでもいい我侭を言い出し
(だからcshスクリプト書くんじゃねーよ)それと戦わなければならないのでしょう。
そして時代によって決着している、過去25年のシェル界隈のくだらないそれらの議論が
再現され、それに巻き込まれるのでしょう。もう今からうんざりです。

だからお願いです。教育現場ではbashでもzshでもkshでもashでも
Bourne shでもなんでもいいですがBシェル系のシェルにしてください。

教育機関で懐古趣味のバカを量産されると現場が非常に苦労するのです。

407:名無しさん@お腹いっぱい。
12/08/31 17:48:07.42 .net
そういう理屈ならWindows使ったほうが合理的だよ

408:名無しさん@お腹いっぱい。
12/09/01 19:31:27.91 .net
だな、素直にWindows使ったほうがいい

409:名無しさん@お腹いっぱい。
12/11/17 19:50:51.68 .net
自分で調べる気0なんだけど、
cshでshのset -eやecho Error 1>&2相当をやるにはどうすんの?

410:名無しさん@お腹いっぱい。
12/11/17 20:57:15.80 .net
cshからshのスクリプトを呼び出す。

411:名無しさん@お腹いっぱい。
12/11/17 21:06:39.91 .net
もちろん「cshからshのスクリプトを呼び出す」以外の方法で。

412:名無しさん@お腹いっぱい。
12/11/18 08:23:51.81 .net
>>410
set -eは、個別にshのスクリプトを呼び出しても機能しないだろw
そのshスクリプトがexitするだけで元のcshスクリプトはexitしないから。

413:名無しさん@お腹いっぱい。
12/11/19 09:49:52.47 .net
さっきスクリプトのデレクトリをちょっと
catしてみてら、cshのスクリプトが40本以上あったよw
ボーンのほうがはるかに本数は多いけど
別に毎日20年からcシェル使い続けてるが、なんの問題もない

1回書いて回して無問題ならOK
あれれ?ってなったらshで書けば済むことだろ
なんで兼用できないバカがおおいのだろう

414:名無しさん@お腹いっぱい。
12/11/19 10:48:30.20 .net
なんで兼用しなきゃいけないんだろう。

415:名無しさん@お腹いっぱい。
12/11/19 14:01:46.37 .net
なんで各種のシェルを使い分けたくないんだろう?

416:名無しさん@お腹いっぱい。
12/11/19 14:02:29.91 .net
複数使う必要特にないからなぁ。

417:名無しさん@お腹いっぱい。
12/11/22 18:19:41.97 .net
あるcshスクリプトに渡された空白を含む可変長引数を、別のコマンドに転送したいのですが書き方がわかりません
具体的にはシェルスクリプトhoge.cshを./hoge.csh "a b" "c d"…と実行すると,内部で別のコマンドcmdを引数"a b" "c d"…で実行するような場合です.
引数の数が固定であればhoge.cshの中にcmd "$1" "$2"…と記述すれば良いのですが,可変長に対応しようと$*をそのまま用いると
展開されてcmd a b c dというコマンドになり,引数が4つになります.

どなたかわかる方がいましたら,ご教授ください.

418:名無しさん@お腹いっぱい。
12/11/22 19:20:54.87 .net
>>417
スレリンク(unix板:21番)

419:名無しさん@お腹いっぱい。
13/04/10 22:08:00.83 .net
tcsh使いの求人情報ってどこにありますか?

420:名無しさん@お腹いっぱい。
13/06/29 20:20:30.93 .net
同じPCでも、使うシェルによってPCの耐久寿命が変わるそうですね。
C shellは、電解コンデンサがライトアップしやすいって聞きましたけど、
やっぱり撲滅するべきなんでしょうね。

421:名無しさん@お腹いっぱい。
13/07/11 NY:AN:NY.AN .net
コンデンサとは本来、大型の蓄電器、蓄電装置のこと。
静電容量を持った電子部品のことはキャパシタという。

この用語を間違えて使用していると日本人と思われて馬鹿にされるので
気を付けるように。

422:名無しさん@お腹いっぱい。
13/09/16 21:49:03.02 .net
cshの組み込みコマンド echo で\nを改行コードとして扱いたいのですが。
例)echo "test\ntest"

test
test

bashは使えない環境のため、cshで実現をしたいのですが、可能でしょうか?

423:名無しさん@お腹いっぱい。
13/09/16 22:16:22.21 .net
>>422
シェルスクリプトのスレからですが、man echoに不十分な場合はprintfを使うことと書いてあったので。
以下でどうでしょうか。
% printf "test\ntest\n"
test
test

424:名無しさん@お腹いっぱい。
13/09/17 15:34:21.10 .net
\n じゃなく \n を使いたいんだろう。

425:名無しさん@お腹いっぱい。
13/09/18 14:55:35.29 .net
【静岡】男子バレー部で体罰、部員平手打ち ネットに動画が投稿される-浜松日体高★11



スレリンク(newsplus板)

426:名無しさん@お腹いっぱい。
13/09/25 17:45:22.59 .net
fedoraって標準でCシェルがインストされてないんだよね、ビックリした。
Cシェルってもう時代遅れなの?

427:名無しさん@お腹いっぱい。
13/09/25 17:48:31.57 .net
昔から時代遅れだよ。

428:名無しさん@お腹いっぱい。
13/09/26 12:56:56.37 .net
中HIGHドライブ

びーるうまい

オマエラ

仕事わー

429:名無しさん@お腹いっぱい。
13/10/09 21:15:56.20 .net
標準エラー出力と標準出力、それぞれを
別のパイプに通すことは可能?

430:名無しさん@お腹いっぱい。
14/08/31 19:57:41.30 .net
cshを使ってきた君たちへ

君たちが悪いわけじゃないんだよ
君たちが覚えたcshの将来が無かっただけ
当時の社会が悪かっただけ
君たち一人ひとりが悪いわけじゃないんだよ

だから自分を責めないで
社会と向き合ってください
そうすればきっと気が付くはず
君たちのcshの知識が無用なのだということに
君たちの存在自体が社会の足枷だということに


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch