2012-02-21 13 views
4

誰かがadbシェルからコマンドを実行し、シェルセッションに残る方法を知っていますか? 私が達成しようとしているのは、adbシェルでエイリアスを設定することです。私は確かにこのコマンドを実行した後、成功adbシェルコマンドを実行してシェルに残す方法は?

adb shell <<< "ls" 

せずに次のことを試してみました

は殻に残っているが、任意の更なるコマンドの出力を受け取ることができません。

私はまた、次のことを試してみました:

adb shell <<EOF 
ls 
EOF 

同じ結果に。

答えて

9

あなたが実行します。

adb shell ls 

あなたはADBの外で、現在、このコマンドを実行しています。

まず、あなたはADBを入力する必要があります。

adb shell 

あなたはADBシェルを入力すると、あなたは出力と入力の複数のコマンドを見続けることができます。

ls 
help 

単にこのことができます場合は私に知らせてください "exit" と入力するか、 "Ctrlキー+ C"

を打つ、ADBを終了するには!

1

同様の質問がコメントhereにありました。

は要するに、自分の端末から以下のコマンドを実行します。

stty raw -echo ; (echo "ls" && cat) | adb shell ; stty sane

注:stty魔法ずに、コマンドが認識されないadbタブ完全などにパイプされます。

0

は解決

adb-cmd期待:

#!/usr/bin/env expect 
spawn adb shell 
expect "#" 
send [ concat [ join $argv " " ] ] 
send "\r" 
interact 

使用方法:Ubuntuの16.04ホスト、AndroidのOのゲストでテスト

adb-cmd 'cd /data/data; ls' 

関連する問題