2015-02-11 74 views
0

當bash(或其他shell)無法猜測終端上的正確列數時,編輯長行會變得不方便。如何修復adb shell中的列數?

對於通常的Linux系統,有自動修復終端大小的腳本termsize。但是典型的Android沒有Python,所以termsize不能工作。

如何修復端子寬度adb shell

回答

1

這個片段可以幫助您設置列數:

echo "\033[18t"; { sleep 1; echo -n "COLUMNS="; } & grep -m 1 -o '[0-9]*t' | { sleep 2; grep -m 1 -o '[0-9]*'; } 

用法:

  1. 打開adb shell;
  2. 將代碼段插入命令行;
  3. 執行它(按輸入)並立即按再次輸入。等待2秒鐘:1秒鐘後應打印COLUMNS=,並在另一個1秒後計算列數;
  4. COLUMNS=NNN複製到控制檯,然後按再次輸入

實施例的會話:

$ adb shell 
9]*t' | { sleep 2; grep -m 1 -o '[0-9]*'; }         < 

[1] 17212 
^[[8;38;149t 
COLUMNS=149 

[1] + Done     { sleep 1 ; echo -n "COLUMNS=" ; } 
[email protected]:/ $ COLUMNS=149 
[email protected]:/ $