0

ubuntu で Qt 5.0.1 (64 ビット) を使用しています。ボタンを押した機能で次のコマンドを実行しています。

QString コマンド = "sh /home/rahul/qtapp/ques_new/ques_new/inter4ql/test1.sh"; const char* command2;

command2 = command.toLocal8Bit().data();

システム (command2);

test1.sh ファイルの内容は

!/ビン/バッシュ

echo "こんにちは" echo "こんにちは" >> out.txt


ボタンを押してこのシステム コマンドを呼び出すと、出力ウィンドウに hello が表示されますが、新しいファイル out.txt は作成されません。

デバッグのために、この関数を呼び出す前に手動で out.txt を作成します。しかし、この関数を再度呼び出すと、出力ウィンドウに hello が表示されますが、out.txt には hello が表示されません。

4

1 に答える 1

0

あなたのコードは間違っています。

試す:

#!/bin/bash
echo "hello" >> out.txt

ここでは問題なく動作しました。

また、見ているディレクトリにファイルが作成されていない可能性があります。スクリプト ディレクトリとアプリケーションの作業ディレクトリを確認しましたか? out.txtをフルパス (など) に置き換え/home/derp/out.txtます。

于 2013-03-14T17:13:10.787 に答える