新人求教!!

lesho 2010-07-23 03:30:20
最近刚刚接触linux和android系统,遇到一个问题请教大虾们:

一条shell命令用来把3g 网卡mount起来
mount -t usbfs none /proc/bus/usb

在adb shell上能顺利执行,但是写成mnt.sh

#!/system/bin/sh
mount -t usbfs none /proc/bus/usb

在adb shell上就没法执行了,出错信息是:
mnt.sh:not found

我已经chmod 777 mnt.sh成功了。是不是我的脚本文件有问题啊?

如果我想把上述的mount命令在c语言文件里面执行用什么函数啊?我试了execlp, system这些命令都没有成功!苦于刚刚接触linux所以还请大虾们不吝赐教!!
...全文
185 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yihua0001 2010-07-23
  • 打赏
  • 举报
回复
android很多类似的怪现象发生,我一般喜欢用busybox去编译,效果好点。android自带的sh命令功能被切割了,与linux下的功能完全不能相比。我想直接输命令用的解析工具可能不是sh吧,如果楼主没有busybox,可以尝试一下bash之类的。老实说,我也不记得android工具集里是否有bash。楼主试试看吧。
Hinagi 2010-07-23
  • 打赏
  • 举报
回复
诶...没找到原因...你换其他的命令也是一样么? 比如ls之类的,看错误提示是没有找到mount..
lesho 2010-07-23
  • 打赏
  • 举报
回复
在没有mount之前我用

cat /proc/bus/usb/devices

结果:

/proc/bus/usb/devices: No such file or directory

执行了mount之后再cat
结果:

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev= 2.06
S: Manufacturer=Linux 2.6.29 dwc_otg_hcd
S: Product=DWC OTG Controller
S: SerialNumber=DWC OTG Controller
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 1
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0001 Rev= 2.06
S: Manufacturer=Linux 2.6.29 ohci_hcd
S: Product=TCC OHCI
S: SerialNumber=tcc
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=12d1 ProdID=1446 Rev= 0.00
S: Manufacturer=HUAWEI TECHNOLOGIES
S: Product=HUAWEI Mobile
S: SerialNumber=
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=87(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=08(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
#

红字就是usb 3g卡


Hinagi 2010-07-23
  • 打赏
  • 举报
回复
你执行下mount,把结果抓上来看一看
lesho 2010-07-23
  • 打赏
  • 举报
回复
对的,就这个意思!!
Hinagi 2010-07-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lesho 的回复:]

多谢kenshintang1215,确实这个问题

但是执行的时候发生了新的错误:

mount: No such file or directory

但是明明3g卡插在上面,而且输命令是可以mount的
[/Quote]

你的意思是在adb shell里面直接执行mount可以,但是把mount写在shell script里面就不行了
是这个意思吗?
lesho 2010-07-23
  • 打赏
  • 举报
回复
多谢kenshintang1215,确实这个问题

但是执行的时候发生了新的错误:

mount: No such file or directory

但是明明3g卡插在上面,而且输命令是可以mount的
Hinagi 2010-07-23
  • 打赏
  • 举报
回复
#!和/system/bin/sh有个空格

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧