Ruby on Rails を使用して Web アプリケーションを開発し、Linux (ubuntu) サーバーで実行しています。私のバックエンド処理は、約 5 つのパラメーターのリストに基づいて他の .bat ファイルのネットワークを呼び出す Windows .bat ファイルに基づいています。
したがって、基本的には、Rails アプリケーションで wine を使用して、コマンド ライン設定を使用して初期バッチ ファイルを呼び出そうとしています。
たとえば、これは ubuntu ターミナルでコードを正常に実行するために使用するものと似ています。
wine cmd.exe /C InitialCallFile.bat Directory/Input.xml Directory/Output.xml param1 param2
Ruby の System コマンドと %x コマンドで呼び出してみました。例えば:
System "wine cmd.exe /C InitialCallFile.bat self.infile self.outfile self.param1 self.param2"
system wine cmd.exe InitialCallFile.bat [self.infile, self.outfile, self.param1, self.param2]
%x[wine cmd.exe /C InitialCallFile.bat self.infile self.outfile self.param1 self.param2]
および他の同様のバリエーション
ただし、プログラムは cmd を認識せず、エラーが返されます: undefined local variable or method `cmd'
Ruby on Railsを使用してwineでアプリケーションを正しく呼び出すにはどうすればよいですか?