在shell或脚本中运行时,命令具有不同的输出 -- adb 领域 和 shell 领域 和 scripts 领域 android 相关 的问题

Command has different output when running in a shell or in script


简体版||繁體版
0
vote

问题

中文

我正在尝试在 nox仿真器通过adb上运行脚本。通过adb与 abcdefghijklmn0 并将脚本复制到 /data/scripts/script.sh 文件夹中,执行它给了我不同的输出。该脚本包含以下内容:

  #!/system/bin/sh dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd  # Expected output: 00000000  08 04 1D FF   

现在,这是问题:我得到了不同的结果,具体取决于我运行脚本的位置/如何运行。因为它工作,我需要使用 adb shell 以及以下任何命令来打开shell,以及以下内容:

  • dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd
  • . ./data/scripts/script.sh

但我需要能够从脚本内运行命令而无需键入它们。所有这些 not 工作:

  • adb shell sh ./data/scripts/script.sh
  • adb shell . ./data/scripts/script.sh
  • adb shell 'dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd'

我得到的主要错误是 Usage: hd [-b base] [-c count] [-r delay] file (这是奇怪的,因为我知道它是正确的),偶尔也是 /data/scripts/script.sh0 。我今天花了大约5个小时试图解决这个问题,而且我脱离了想法......如果有人有一个人让我知道!

english

I'm trying to run a script on the Nox emulator through adb. After connecting to Nox via adb with adb connect localhost:62001 and copying a script into a /data/scripts/script.sh folder, executing it gives me different outputs. The script contains the following:

#!/system/bin/sh dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd  # Expected output: 00000000  08 04 1D FF 

Now, here is the problem: I'm getting different results depending where/how I run the script. For it to work, I need to open the shell first with adb shell, and any of the following commands work from within it:

  • dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd
  • . ./data/scripts/script.sh

But I need to be able to run the commands from within a script without having to type them. All of these don't work:

  • adb shell sh ./data/scripts/script.sh
  • adb shell . ./data/scripts/script.sh
  • adb shell 'dd if="/data/scripts/screen.dump" bs=4 skip=540503 count=1 | hd'

The main error I'm getting is Usage: hd [-b base] [-c count] [-r delay] file (which is weird because I know it's correct), and occasionally also dd: stdout: Broken pipe. I've spent about 5 hours today trying only to solve this and I'm out of ideas... If anyone has one let me know!

        
       
       

回答列表


相关问题

2  如何脚本我的手机?  ( How do i script my phone ) 
我最想要做的是,很快更改设置,添加报警等。 也许是别的什么? 这是来自Windows PC。 语言并不重要,但我知道Python和UNIX脚本。 通常如何完成? ...

0  如何在rooted android设备上运行脚本?  ( How to run a script on a rooted android device ) 
我们最近部署了很多内部的Android设备,仅用于显示自定义网页。 设备:RKM MK902 操作系统:Android 4.4.2 rooted WiFi半径8021x 海豚浏览器,带有售货亭模式和标签重新加载加载(刷新页面/ 30秒) 在网页中也有代码刷新本身 尝试在计划时间窗口中刷新浏览器的其他应用程...

54  如何在启动时运行脚本?  ( How can i run a script on boot ) 
我习惯于在Linux的启动时运行脚本,但我不确定如何在Android中执行此操作。我想在开始时开始我的SSH守护程序,所以我将永远能够连接。如何在Android启动时运行任意脚本?在dalvik之外做这一点是优选的。 ...

1  如何尽早设置CPU频率?  ( How to set cpu frequency as early as possible ) 
这个问题的意思是在引导时执行脚本的序列。 假设我有这个脚本: echo 307000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 我希望尽快执行此行脚本(甚至在加载Android shell之前)。把它放在哪里最好的地方? ( init.d...

3  如何在启动时运行可执行文件并将其保持运行?  ( How to run an executable on boot and keep it running ) 
我有一个来自 ndk-build 程序的可执行构建。我想在rooted android设备上运行它。 Android将杀死我可执行的可能性是多少? 使用 adb shell ,我能够使用以下命令执行我的可执行文件: adb push executable /sdcard adb shell device:/ $ ...

9  在Android上我可以编写脚本(类似于Win.bat文件)来组合几个命令行命令吗?  ( On android can i write scripts similar to win bat files to combine several co ) 
在Windows上,我可以使用.bat文件运行两个命令。 如何在Android 上实现同样的事情 例如: 通过调用pcastclient / updateall 更新我的播客 我的图片Sugarsync / forcupdate的力同步 ...

0  二进制文件在哪里?  ( Where are binaries installed ) 
我最近扎根了我的手机,所以我可以安装sl4a。我想通过Python脚本执行一些命令,具体转向所有呼叫的Google语音,拨打电话,然后重新打开。我只是猜测我需要访问任何二进制文件,但似乎没有a / bin /文件夹,所以我的应用程序在哪里? (P.S.从我的移动浏览器搜索不起作用,所以如果这是一份重复的话,请将我链接...

1  如何创建可以复制和重命名文件的Update.zip文件?  ( How to create an update zip file that can copy rename a file ) 
这是我正在寻找的 - 我需要一个可以复制文件的'update.zip'文件(示例): /system/framework/file-to-copy.apk 到另一个文件夹: / system / 然后它将在"系统" 文件夹中将"file-to-copy.apk" 重命名为: 重命名-fife.apk 并将其...

1  如何使用adb的Android 4.1.2和4.2.2播放  ( How to long press in android 4 1 2 and 4 2 2 using adb ) 
我发现下面的命令不会在Android 4.1.2和4.2.2中执行,但它从Android 4.4 +执行。 input touchscreen swipe x1 y1 x2 y2 [duration] 我正在使用我的旧Android 4.1.2和4.2.2在售货亭模式中,我需要我的脚本在某些区域上长按,但我...

3  在vold.decrypt = trigger_shutdown_framework通过init.rc运行自己的.sh脚本(android 5.0)  ( Running your own sh script at vold decrypt trigger shutdown framework via init ) 
我想在Android 5.0手机(中文,MTK,没有适当的源)中解决Android 5.0手机的供应商错误 问题是由于某些二进制中的错误,/数据未正确释放 vold.decrypt=trigger_shutdown_framework 和 vold.decrypt=trigger_reset_main ...




© 2022 it.wenda123.org All Rights Reserved. 问答之家 版权所有