2016-12-04 83 views
0

我很難移植一個非常基本的應用程序,我使用的主要是bash,它運行在OS X終端上。端口bash腳本,可以在windows上運行的任何東西

我需要在Windows筆記本電腦上運行該程序的類似版本,所以覺得我需要基本上重寫代碼。我已經嘗試過Linux模擬器和新的Windows 10 bash集成,儘管我用過的功能是buggy或者不起作用。簡單的事情,我需要做的

例子:

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

嘗試http://www.batsh.org –

回答

0

你有沒有在Windows下試過Cygwin? (GPL/LGPL/etc/Open Source)。默認的mintty cygwin終端仿真器工作得很好。你可以得到BASH和其他你需要的東西。

+0

感謝您的建議,我嘗試了Cygwin,但對於我正在構建的腳本類型來說太慢了。最後,我去了Upwork.com,並設法將創建這個任務的工作外包出去,然後開發成一個在Qt中使用C++的GUI應用程序,它像夢一樣運行! – user2742630

相關問題