日常開發技巧:在遠程機器上直接使用adb


背景

嵌入式開發中,開發工作是在遠程服務器上進行的。當需要adb推送一個文件到開發板時,則需要重新在本地機器中找到該文件,再執行命令。這樣的操作比較麻煩。

下面介紹我的解決方式。

sshfs掛載

首先,我是通過sshfs將遠程機器,掛載到了本地。並且在掛載時,挑選了同一目錄。即,將遠程機器的/workspace掛載到了本地的/workspace。這么做的好處是,遠程的路徑,可以直接復制黏貼到本地使用。

配置免密碼登錄

在遠程機器上,配置好.ssh/config並使用ssh-copy-id設置免密碼登錄。假設配置好的本地機器別名,叫ZQB。則此時可在遠程機器上,可直接ssh ZQB登錄回本地機器。

編寫包裝腳本

既然已經通過sshfs將遠程機器掛載到本地,且目錄一致,則腳本很簡單,ssh回到本地機器,並切換到同一目錄,再執行命令即可。

文件 ~/.remote_zqb.sh

zqb()
{
	ssh ZQB "cd $(pwd) && $@"
}

alias adb="zqb adb"
alias fastboot="zqb fastboot"

並在/.bashrc中引入它。即在/.bashrc中添加一行

. ~/.remote_zqb.sh

最后重新source,使其生效

source ~/.bashrc

此時輸入type zqb,可看到該函數。輸入type adb可看到adb已經被alias成了”zqb adb“

現在就可以在遠程機器上,直接使用adb命令了。非常便捷。

其他

有了這個思路之后,除了adb,還有其他命令,也可以進行對應包裝,看個人需要了。

如果未事先用ssh掛載到同一目錄,則可對應自己平時的使用習慣,修改腳本。如先使用scp先拷貝文件,再ssh執行命令,原理是一樣的。目的就是,自動化平時手工操作中的重復操作,簡化使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM