Cygwin
使用cygwin“無法執行二進製文件”
我在文件夾 C:\cygwin 中安裝了 64 位 cygwin
跑步
"C:\cygwin\bin\sh.exe" /bin/ls
結果是
/bin/ls: /bin/ls: cannot execute binary file
為什麼?
Runnin sh 和 ls 分別工作。
C:\test>"C:\cygwin\bin\sh.exe" sh-4.4$ /bin/ls foreign_keys functions procedures props.sql schemas.sql tables
使用 file 命令,我可以看到二進製文件是 64 位的。
C:\test>"C:\cygwin\bin\sh.exe" sh-4.4$ file /bin/sh /bin/sh: PE32+ executable (console) x86-64 (stripped to external PDB), for MS Windows sh-4.4$ file /bin/ls /bin/ls: PE32+ executable (console) x86-64, for MS Windows sh-4.4$
我嘗試了一些變體,發現您可以使用:
C:\cygwin64\bin\sh.exe -c “/bin/ls”
或者
C:\cygwin64\bin\bash -c “/bin/ls”