2016-02-06 14 views
-1

所以我做了gcc -Wall -o file file.c,我的程序使用echo abc | ./file,但是當我嘗試sh file abc,它說file : file cannot execute binary file,我該怎麼辦才能解決這個問題?我的C原型是int main(int argc, char **argv),不知道這是否有幫助。我該怎麼做才能讓我的C腳本可以執行二進制文件?

謝謝!

+1

shell('/ bin/sh')只能執行shell腳本。如果你想執行一個二進制文件,你可以像運行'./ file'一樣運行該文件。 – larsks

+0

只需鍵入./file abc – pm100

回答

0

您試圖將文件(即已編譯的可執行文件)作爲shell腳本執行。這是行不通的。您的意思是

sh -c ./file 
0
  • file並不是腳本,而是一個二進制文件。
  • 試圖用sh執行它意味着它是sh/bash腳本。
  • 試用./file
相關問題