-2
我想要一個腳本來在android手機上勾選首選項時執行腳本。切換完成,但現在執行這個:如何將bash腳本語言轉換爲java
if (preference == mRandomizeMac) {
SystemProperties.set(RANDOMIZE_MAC_PERSIST_PROP, (Boolean) newValue ? "1" : "0");
取而代之的系統屬性,我想有執行下面的腳本:
macaddr="$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/')"
echo $macaddr > /sys/devices/fb000000.qcom,wcnss-wlan/wcnss_mac_addr
感謝您的回答。不幸的是,我不是一名程序員,而是一名自學成才的業餘愛好者。我可以正確實施提交,解決衝突,迴應錯誤,但我無法創建語言。所以,如果你能向我展示你提到的兩種方法的詳細例子,我將不勝感激。我想在.java文件中傳遞該腳本...提前致謝。 –
請允許我以這種方式解釋它。您不能將您的bash腳本「轉換」爲Java。你可以做的是從Java代碼執行shell命令。你的bash腳本只是執行shell命令的一種奇特方式。因此,您需要研究如何從Java執行shell命令(使用'Runtime.getRuntime()。exec'調用)並獲取這些命令的輸出。我無法爲你做所有的研究,但我可以給你一些關於從哪裏開始的指導。 –
我沒有實現Runtime.getRuntime ...現在,編譯器不喜歡實際Shell腳本中的括號:非法轉義字符:echo $(dd if =/dev/urandom bs = 1024 count = 1 2>/dev/null | md5sum | sed's/^ \(.. \)\(.. \)\(.. \)\(.. \)\(.. \)\(.. \)。* $/\ 1 :\ 2:\ 3:\ 4:\ 5:\ 6 /')「}); 我正在說括號.. \ –