0
lighttpdを使って動作する基本的なcgi bashスクリプトがあります。これは動作しています:条件がbash cgiで動作しない
#!/bin/bash
echo -e 'Content-type: text/html\n'
echo '<html>'
echo '<head>'
echo '<title>test</title>'
echo '</head>'
echo '<body>'
echo "Hello World"
echo '</body>'
echo '</html>'
問題は、何らかの種類の条件を追加しようとすると動作しません。あなたは、このためだけにハローワールドラインを変更した場合:
if [ 1 -eq 1 ]; then
echo "it worked"
else
echo "anything else"
fi
それは何も表示されません。私はそれらをすべて1行に入れようとしました:
if [ 1 -eq 1 ]; then echo "it worked"; else echo "anything else"; fi
同じ結果です。それは何も示していない。
私は "トリック"を持っていますが、私にはオプションではありません。これは次のようなものを使用しています:
[[ 1 -eq 1 ]] && echo "it worked"
何が起こっているのでしょうか?誰かがもっと多くのデータを必要とするならば、lighttpd.confか何でも私に教えてください。ありがとう。
'/ bin/['は存在しますか? – MrTux
はい、それはたくさんのコマンドを内部に持っています... ls、 cat、grep、ifなど... – OscarAkaElvis
実際のコマンド '/ bin/['は存在しません(ほとんどのシェルは '['を内蔵しています) – chepner