Web ブラウザーで実行されている JavaScript コードからサーバー側スクリプト (.sh ファイル) の実行をトリガーしたいと考えています。
私はグーグルを検索しましたが、私が見つけたコードは私のために働いていません。
Web ブラウザーで実行されている JavaScript コードからサーバー側スクリプト (.sh ファイル) の実行をトリガーしたいと考えています。
私はグーグルを検索しましたが、私が見つけたコードは私のために働いていません。
最初に、.sh ファイルを実行するサーバー側言語 (PHP、Python、RoR、PERL、ASP.NET、または JSP など) でファイルを作成する必要があります。次に、Ajax を使用してそのページを要求する必要があります。
PHP では、次のようなものです。
<?= shell_exec('sh /home/user/public_html/scripts/script.sh'); ?>
次に、JS の場合は次のようになります。
<script src="//code.jquery.com/jquery-1.8.0.min.js"></script>
<script>
var runShellScript = function () {
$.get('/scripts/script.php', function () {
alert('Shell script done!');
});
};
// Some stuff
runShellScript();
</script>
jQuery や Ajax を使用したくない場合は、おそらく JSONP を使用できます。
クライアントサイドのJavaScriptでこれを直接行うことはできないと思います。ただし、URLリクエストを呼び出して、サーバー側の言語(PHP、Java、Ruby ...ほとんどすべての言語)にタスクを実行させることができます。また、セキュリティの問題も必ず考慮してください。
.sh ファイルが次で始まることを確認してください。
#!/bin/sh
echo "Content-type: text/html"
echo ""
.htaccess ファイルは、.sh ファイルを実行するように設定されています。
Options +ExecCGI
AddHandler cgi-script sh
次に、XMLHttpRequest を使用して URL からファイルを呼び出すだけです。http://en.wikipedia.org/wiki/XMLHttpRequest、おそらくスクリプトでjsonオブジェクトを返すことさえあります。
特にJavascript でファイルを開くかどうかはわかりませんが.sh
、filereader API を使用すると、一般的にファイルを開くことができます。