2016-12-04 4 views
0

OS X Terminal上で動作するほとんどのbashを使って作成した非常に基本的なアプリケーションを移植するのは非常に困難です。Windows上で動くことができるものへのポートbashスクリプト

私はWindowsラップトップでこのプログラムの似たようなバージョンを実行する必要があるので、基本的にコードを書き直す必要があると感じます。私はLinuxエミュレータと新しいWindows 10 bashの統合を試みましたが、私が使った機能はバグであるか、動作しません。私はそれを行うために必要なシンプルなものの

例:私はスクラッチに戻ってアプリケーションに作ることができる別の言語、1でこれを作成する準備ができてるよう

export lev=/home/user/dir 
export shu=/home/user/dir 
export laptime=/home/user/dir 
export currLaptime=/home/user/dir 
export currLaptime=/home/user/dir 
export infant=/home/user/dir 

lev=1; 
shu=0; 
increments=0.5; 
cpuDelay=0.35; 


declare -a laptime=('1' '1' '1' '1' '1' '1' '1' '1' '1' '1' '1' '1' '1'); 
say "Distance?"; 
read distance infant; 
if [[ $infant == "i" ]]; then speed=5.5; else speed=6.5; fi 
echo $speed "kph"; 

n=0; 
speedCalc=$speed; 
for i in `seq 1 21`; 
do laptime[n]=$(awk "BEGIN {print ${distance}/($speedCalc/3.6); exit}"); 
    laps[n]=$(awk "BEGIN {print 60/${laptime[n]}; exit}"); 
    laps[n]=$(printf '%.0f' "${laps[n]}"); 
    let n+=1; 
    speedCalc=$(awk "BEGIN {print ${speedCalc} + 0.5; exit}"); 
done; 

turningRoundTime=$(awk "BEGIN {print ((${distance} * 0.02 - 0.29) * -5); exit}"); 
laptimeAdjustment=$(awk "BEGIN {print ${turningRoundTime}-$cpuDelay; exit}"); 


n=0; 
for i in `seq 1 21`; 
do laptime[n]=$(awk "BEGIN {print ${laptime[n]}+$laptimeAdjustment; exit}"); 
    let n+=1; 
done; 

echo "cpu delay: $cpuDelay"; 
echo "Turning round time: $turningRoundTime"; 
echo "laptime adjustment: $laptimeAdjustment"; 

for i in `seq 1 21`; 
do 
currLaptime=${laptime[lev-1]}; 
    for i in `seq 1 ${laps[lev-1]}`; 
    do 
      parallel sh ::: announceLevel.sh sleep.sh; shu=$((shu+1)); 
    done 
lev=$((lev+1)); shu=0; 

が感じているかもしれません将来的にはWindows、あるいはおそらくAndroid上で動作します。 OS Xで設定した環境ではうまく動作しますが、これを他の環境で実行するにはどの方向に向かうべきかを示す必要があります。

多くの感謝!ニック

+0

try http://www.batsh.org –

答えて

0

は、Windowsの下でCygwinを試してみましたか? (GPL/LGPL/etc/Open Source)デフォルトのmintty cygwinターミナルエミュレータはうまく動作します。あなたはBASHと必要なものを手に入れることができます。

+0

提案をいただきありがとうございます。私はCygwinを試しましたが、私が構築していたスクリプトのタイプには遅すぎました。最終的に私はUpwork.comに行き、Windowsの下でこれを作成するタスクを外注することができました。それは、QtのC++を使ったGUIアプリケーションに開発されました。これは夢のように動作します! – user2742630

関連する問題