2016-08-30 21 views
0

誰か助けてくれますか?新しいシェルスクリプトを書かずに、Antターゲット内からBashシェルを使って2つ(またはそれ以上)のUnixコマンドを実行する方法のターゲットです。複数のUnixコマンドを一度に実行する方法

私はここで答えが見つかりましたHow to run multiple Unix Commands in one time?これは素晴らしいですが、私がしたくないシェルスクリプトを作成することをお勧めします。

これまでのコードはこれと同じですが、うまくいきますが、これはもっと簡単な方法があるのでしょうか?恐らく ";"または<シェルスクリプトではなく< exec>タグを使用している可能性があります。あなたの回答については

<target name="dos2unixTidyUp" depends="deleteTemp" if="isUnix" > 
    <shellscript shell="bash" dir="${my-app-bin.dir}" osfamily="unix" > 
     dos2unix *.sh 
    </shellscript> 
    <echo>dos2Unix formatting completed</echo> 
    <shellscript shell="bash" dir="${my-app-bin.dir}" osfamily="unix" > 
     chmod +x *.sh 
    </shellscript> 
    <echo>chmod +x *.sh commanded completed</echo> 
</target> 

ここでは例 <ターゲット> 答えを提供してください! </target>

「;」を使用してコマンドを区切ることができる場合は、コマンドを別々の行に置くことも、同じ行に置かなければならないこともあります。

を使用でき
+0

タスクを使用し、2つのコマンドを ';'で区切ります。行く方法です – Rebse

答えて

0

彼らが私を助けてくれたあなたの答えに感謝します。私はそれのように私の目標を変更することができた。両方のunixコマンドを1行に ";"また働いた。誰かが< exec>を使用して例を投稿したい場合は、それを実行してください - それも役立ちます。私は2番目の回答としてマークします。

<target name="unixShellTidyup" depends="deleteTemp" if="isUnix" > 
    <shellscript shell="bash" dir="${my-app-bin.dir}" osfamily="unix" > 
      dos2unix *.sh ; 
      chmod +x *.sh 
     </shellscript> 
     <echo>unixShellTidyup completed</echo> 
</target> 
1

$ echo "hello"; echo "there" 

すべてのコマンドを実行します、または

$ mkdir "xxx" && cd "xxx" || echo "mkdir fail, will not cd ..." 

のみ "MKDIRの成功場合は、 'CD' を実行します。そうでない場合、「エコー」が実行されます

関連する問題