X



shスクリプトでcgi
0001nobodyさん
垢版 |
03/03/20 01:27ID:zBrN4BPB
Perl vs. PHP vs. Rubyと言われているこの時代に
shスクリプトでcgiを書いている奴っていますか。
周りからは生きた化石と言われながら、頑固一徹
shスクリプトのcgiの可能性にかけている。
そんなcgi職人、集まれ!
0029nobodyさん
垢版 |
03/03/23 17:48ID:???
>>28
27じゃないけど、単に標準入力から読んでデコードして標準出力に書き出すだけならこれでいいかな。
きちんとテストしていないけど。一度全てバッファに取り込んだ方がいいかな?

#include <stdio.h>
#include <stdlib.h>

int main()
{
char s[3]={0};
int c;

while((c=getchar())!=EOF){
switch(c){
case '+':
putchar(' ');
break;
case '%':
s[0]=((c=getchar())==EOF)?'\0':c;
s[1]=((c=getchar())==EOF)?'\0':c;
putchar(strtol(s,NULL,16));
break;
default:
putchar(c);
break;
}
}

return 0;
}
0030nobodyさん
垢版 |
03/03/23 21:53ID:emAJ6ArI
>>29
ありがとうございます。
これはccでコンパイルした後、どうshスクリプトに組み込めばよいのですか。
初学者なものでお手数をとらせてもうしわけございません。
0031名無しさん@カラアゲうまうま
垢版 |
03/03/23 22:26ID:???
sh スクリプトで URL デコード。
URL エンコードされてない無関係な文字列が入ってると破綻するけど。

% cat urldec.sh
#!/bin/sh
( echo ibase=16; echo obase=8; echo "$@" | tr a-z% A-Z\\n ) |\
bc |\
while read a; do
echo -e \\0$a
done |\
tr -d \\n

% sh urldec.sh %A4%DB%A4%B2
0032nobodyさん
垢版 |
03/03/23 23:12ID:826klXke
>>11
おいらLISP(clisp)でつくってるよ〜

#! /usr/bin/perl
open (MYLISP,">mylisp.lisp");
print MYLISP "S式";
close(MYLISP);

system("clisp mylisp.lisp");

こんなんだけど・・・
0034nobodyさん
垢版 |
03/03/23 23:19ID:???
>>32
あんた、そっち公開しても仕方ないっしょ。
0036nobodyさん
垢版 |
03/03/23 23:30ID:???
>>35
ああ、スーパサーバ使えば後は標準入出力のプログラムになるからなぁ。
0037nobodyさん
垢版 |
03/03/24 00:11ID:???
>>35
<H1>ただいまメンテ中</H1>
って吐くだけの同じ奴を使ってた事がある。
apache止めてる間だけとか。
0038nobodyさん
垢版 |
03/03/25 15:20ID:???
mod_brainfuck で…。(誰か使ってる人いない?)
0039nobodyさん
垢版 |
03/03/29 00:47ID:???
なつかしーな。1994年ごろは、カウンタっていったら、shとperlが半々だったきがする
0040nobodyさん
垢版 |
03/04/06 00:59ID:/7G2cvSN
>>39
shスクリプトが生き残れなかったのはなんでだろう?
0041nobodyさん
垢版 |
03/04/06 02:18ID:???
外部コマンドを大量に起動するためにオーバヘッドが非常に大きく遅い。
shから呼ばれる外部コマンドのパスや引数や実装がOSによって大きく異なる。
あまつさえ/bin/sh自身がOSによって互換性がない。
0042nobodyさん
垢版 |
03/04/08 01:54ID:???
>>41
うむ。その前提で限界に挑戦するのがおもしろいのではないのか?
0043nobodyさん
垢版 |
03/04/11 06:31ID:???
毎回自分自身がどのような環境に置かれた sh なのか調査した上で動き出すようにすればよい。
0046山崎渉
垢版 |
03/04/20 06:23ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0047nobodyさん
垢版 |
03/05/01 00:19ID:nSLOiiM0
echo "AGE"
0049nobodyさん
垢版 |
03/05/11 14:24ID:???
multipart/form-data ならデコードしなくて済むのでわ,
と言ってみるテスト
0050山崎渉
垢版 |
03/05/22 02:06ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
0051山崎渉
垢版 |
03/05/28 17:18ID:???
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0052名無しさん@Emacs
垢版 |
03/06/16 05:36ID:???
>>41
> 外部コマンドを大量に起動するためにオーバヘッドが非常に大きく遅い。
> shから呼ばれる外部コマンドのパスや引数や実装がOSによって大きく異なる。
> あまつさえ/bin/sh自身がOSによって互換性がない。

上のほうでシェルスクリプトがperlより軽いとか言ってるのはウソなんですね。
0053nobodyさん
垢版 |
03/06/16 10:17ID:???
ほんとうに sh しか使わんのならかなり軽いよ。
ただ、ある程度以上の規模になると外部コマンドを fork せずに
スクリプトを書くことができない。だから総体として重くなる。

ある程度以上の規模のスクリプトなら、
いったん中間言語にコンパイルしてから実行する perl にはかなわんね。
0054nobodyさん
垢版 |
03/06/17 06:33ID:???
>いったん中間言語にコンパイルしてから実行する perl にはかなわんね。

テキスト−>解析−>実行

テキスト−>解析−>中間コード生成−>解析−>実行

Perlの方が遅くないか?JSPの初回起動みたいなもんだろ。
ループとかだと若干有利か。
0056山崎 渉
垢版 |
03/07/15 11:16ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0057山崎 渉
垢版 |
03/08/02 02:35ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0058ぼるじょあ ◆ySd1dMH5Gk
垢版 |
03/08/02 05:15ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
0059山崎 渉
垢版 |
03/08/15 23:04ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0062nobodyさん
垢版 |
04/12/11 02:12:40ID:???
1994年ごろ、
カウンタつっても、Perlかshでつくったものしかなかったよ・・・なつかしや
0063nobodyさん
垢版 |
04/12/11 02:13:19ID:???
うわ、11ヶ月ぶりのレスじゃねーかw
0064nobodyさん
垢版 |
2005/11/29(火) 20:35:42ID:6biAl2f4
apacheでshでCGI動かす設定ってどうやるんですか?
perlとC(バイナリ)では正常に動くんですけど・・・
shだと500 internal server errorになります。
ちなみにシェルはcsh使ってます
0065nobodyさん
垢版 |
2005/11/30(水) 02:21:29ID:???
CGIなんだから、一行目にシェバングパスを書かないとだめだぞと。
0066nobodyさん
垢版 |
2005/11/30(水) 07:51:57ID:???
>>64
hello.cgi
-----------------
#!/bin/sh
echo "Content-type: text/html\n\n";
echo "Hello";
0068nobodyさん
垢版 |
2008/10/15(水) 20:02:22ID:CwbSjCAQ
  ぺす
0069nobodyさん
垢版 |
2008/10/21(火) 12:33:37ID:???
昔アセンブラでCGI作って動かしてたな(´・ω・`)
0070nobodyさん
垢版 |
2008/11/14(金) 13:01:21ID:elYW8Na3
>>26
つNKF
0071nobodyさん
垢版 |
2008/11/14(金) 18:55:25ID:???
>>64
.shで動かしたいならスクリプトがあるディレクトリに.htaccessを作り、
AddType application/x-httpd-cgi .sh
と書けばよい
0072nobodyさん
垢版 |
2011/01/26(水) 22:13:55ID:???
シェルスクリプトでてきとうにURLでこーど

#!/bin/bash

#環境変数[QUERY_STRING]を[&]を空白に変換しパース
_QRYVAL=`echo "$QUERY_STRING" | tr '&' '\t'`

#引数解析
for v in $_QRYVAL
do
#[=]を空白に変換し配列化
v=(`echo "$v" | tr '=' '\t'`)
#formの[name]に[value]を格納(URLデコード)
eval "${v[0]}"="`echo ${v[1]} | tr % = | nkf -emQZ1`"
done
0075nobodyさん
垢版 |
2015/11/11(水) 23:47:23.65ID:OBd/4WeX
転職の際に必ず思い出してください。
下記の条件が全て当てはまる会社にご注意下さい。

・IT系 in 東京
・転職会議で2.5点
・転職会議の「その他>2ch情報」の欄で過去の労基2chスレが表示される
0076nobodyさん
垢版 |
2017/12/30(土) 13:05:12.28ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

QSCHX4VEAB
0077nobodyさん
垢版 |
2023/05/01(月) 10:28:17.48ID:???
イップク♪ (○`ε´○)y-~~~
0078nobodyさん
垢版 |
2023/09/24(日) 18:06:56.12ID:???
~~-y( ̄▽ ̄*)ゥヶヶ♪
0079nobodyさん
垢版 |
2023/10/20(金) 01:21:09.53ID:???
これが幸せってやつなのかな?
レスを投稿する


ニューススポーツなんでも実況