2013-03-12 36 views
0

我有一個使用多種語言的windows操作系統的場景......我需要使用腳本,使用cygwin中的diskpart獲取磁盤細節。對於英文,我使用以下方式獲取磁盤的詳細信息:如何從cygwin獲取非英文窗口中使用diskpart的磁盤細節

while : 
do 
    echo "rescan" > $wscript 
    echo "list disk" >> $wscript 
    disks=$($diskpart /s $wscript | tee ${logfile} | awk 'p{print $2}$1~/^---/{p=1}') 
    disk="" 
    if [ ! -z "$disks" ]; then 
     > $wscript 
     for disk in $disks 
     do 
      echo "select disk $disk" >> $wscript 
      echo "detail disk" >> $wscript 
     done 
     disk=$($diskpart /s $wscript | awk '/is now the selected disk/ {disk=$2} /^Target/ {if ($3 == target) print disk}' target=$target) 
    fi 
done 

'target'是我爲腳本作爲輸入採用的磁盤編號。但是,當我使用非英語的Windows操作系統時,文本比較「/現在是選定的磁盤/」,因爲它使用不同的語言。任何想法來解決這個問題?

回答

0

嘗試將環境變量LC_ALL設置爲C,這是標準區域設置。

+0

導出LC_ALL = C沒有工作:(Cygwin中的語言環境更改爲英語,但是當我在cygwin中運行diskpart時,結果仍然是原始非英語語言 – Pradeep 2013-03-12 15:59:07

+0

只需將'LC_ALL = C'放在shell腳本的頂部。 – Sjoerd 2013-03-12 16:00:20

+0

仍然沒有運氣:( – Pradeep 2013-03-12 16:22:16

相關問題