Linux的二进制文件无法运行

问题描述

cannot execute binary file
Linux的二进制文件无法运行_第1张图片

解决思路

不能执行二进制文件,而指令没有报错;执行文件的用户权限也是最高权限(如上图,root用户);使用ls -l查看,这是可执行文件;那会不会是环境问题呢?我不知道,但这是需要头号解决的问题。如果不是环境问题的话,那一定是个有趣的问题。

重新编译

Linux的二进制文件无法运行_第2张图片
这是重新编译的情况,依然是不行,所以这是个有趣的问题。

查找根源

(1)查看执行文件内容
Linux的二进制文件无法运行_第3张图片
里面有个eaidkAuth,我们单独执行看看。
(2)单独执行eaidkAuth
在这里插入图片描述
单独执行的时候,没有问题,那么,可能是别人写的脚本不对。我们尝试改一下。
(3)改为全路径

#!/bin/bash
for ((i=0;i<=1000;i++))
do
  sh /usr/local/tengine/html/testyqf/device-authentication/src/device/build01/eaidkAuth&       
done

Linux的二进制文件无法运行_第4张图片
如图,说明已经成功解决该问题了,也就是脚本里面执行的文件找不到。

你可能感兴趣的:(Linux)