2017-02-09 5 views
1

私はCygWinとカールをインストールしました。無関係な何かをしたいからです。しかし今、CygWinで.luaファイルを実行したいので、結果を現在のウィンドウ、CygWinウィンドウに表示します。私はそれがCMDを開くのと同じようになり、cd <directory where the file is>を実行します。そして、<filename>.luaを実行して、結果を出力します。だから私はそれをどうやってやるのだろう?申し訳ありませんが、Linux、Unix、CLIなどの新機能ですが、bashコマンドについてはあまりよく分かりません。CygWinで.luaファイルを実行するにはどうすればよいですか?

が、私はここからメソッドを使用してみました:How do I execute a file in Cygwin? 私はちょうど./<filename>.luaを行なったし、私はあなたのファイルを実行し、実行可能としてマークされている場合、ファイルがちょうど

print("hello world") 
+1

あなたはluaパッケージをインストールしましたか? 'cygcheck -c lua'はcygwinターミナル – matzeri

+0

チェックアウトファイルエンコーディングから行います。 – moteus

+0

私は 'cygcheck -c'を実行し、そこにluaはリストされていませんでした。 'cygcheck -c lua'を実行すると' Package Version Status'と表示されますが、luaは表示されません。私はcygwin64のためにluaをインストールする必要があることに気づいていませんでしたか?ああ、申し訳ありません。私は以前に返答していただろうが、私は一日を通して何かをやっていることに完全に忙しかったし、これを完全に忘れてしまった。 @moteus何ですか? – rumpled105

答えて

1

を持って

./<filename>.lua: line 1: syntax error near unexpected token `"Hello world"' 
./<filename>.lua: line 1: `print("Hello world")' 

を得る./<filename>.luaこのファイルをデフォルトでシェルスクリプトとして実行します(つまり、shbash、)。など)。この結果、表示されるエラーが発生し、簡単に再現できます。

bashで:

$ echo 'print("Hello world")' > script.sh && chmod +x script.sh && ./script.sh 
./script.sh: line 1: syntax error near unexpected token `"Hello world"' 
./script.sh: line 1: `print("Hello world")' 

あなたがする必要がある最初の事はLuaが(CygwinのセットアップGUIを再実行、またはapt-cygのようなツールを使用して)インストールされている、とあなた$PATHに位置していることを確認しています。

ファイルを直接実行する代わりに、Luaインタプリタで実行します。また

$ lua <filename>.lua 

、ファイルを実行すべきかにシェルを指示するshebangディレクティブを使用します。

+0

うわー、私はあなたがそのバッシュで何をしたのか分からない。繰り返しますが、私はLinux、Unix、CLIなどではそれほど良いものではありません。とにかく、私はあなたが言ったことをしました。私はapt-cygを探してインストールしました。しかし実際にはCygwinのセットアップGUIで 'lua5.1'をインストールしました。そこで私は先に進み、 'lua-5.1 .lua'を実行して印刷しました。私のようなノブを助けてくれてありがとう。 – rumpled105

+0

@ rumpled105 'echo'は引数を標準出力に出力します。 '>'はその出力を 'script.sh'ファイルにリダイレクトし、その内容を上書きします。 '&&'は最後のコマンドが成功した場合に次のコマンドを実行します(戻りステータスは '0')。 'chmod + x'はファイルを実行可能ファイルとしてマークします。 '。/ script.sh'はそのファイルを実行します。あなたは、あなたのシェルで遊んで、いくつかのドキュメントを読むことで、これらのものを時間内に選ぶでしょう。それが助けられたら答えを受け入れるようにして、あなたの問題が解決されたことを他人に知らせてください。乾杯。 – Oka

+0

これを行うには、 '#!/ usr/bin/lua'シバン行を使用することをお勧めします。 –

関連する問題