亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么某些 Cygwin 文件不可執行?

為什么某些 Cygwin 文件不可執行?

喵喵時光機 2022-07-06 18:23:28
我正在嘗試從 Java 應用程序在 Windows 上執行 Cygwin 命令。在 cygwin 的 bin 中,我注意到一些文件是應用程序類型(.exe),而其他文件(如 zcat 和 zless)沒有擴展名,只是文件類型。我已將 bin 添加到 Windows PATH 中,并且似乎只能從 cmd 執行 .exe 文件。下面的代碼有效。ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "ls");Process p = pb.start();我想使用 zcat 和 zless 之類的東西,但它們不可執行,并且 cmd 抱怨“zcat”不被識別為內部或外部命令、可運行程序或批處理文件。如果我手動將文件更改為 .exe,我會彈出一個錯誤提示 zcat 由于與 64 位版本的 Windows 不兼容而無法啟動或運行。我已經安裝了 64 位版本的 cygwin (setup-x86_64)。為什么 cygwin 的所有 bin 都不是可執行文件?
查看完整描述

2 回答

?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

大多數 cygwin 程序不是二進制程序,而是腳本之一。該命令file可以為您提供文件類型的描述:


$ file zcat

zcat: POSIX shell script, ASCII text executable

盡管


$ file cat

cat: PE32+ executable (console) x86-64, for MS Windows

讀取zcat的前5行


$ head -n 5 zcat

#!/bin/sh

# Uncompress files to standard output.


# Copyright (C) 2007, 2010-2016 Free Software Foundation, Inc.

我們在第一行#!看到說這是一個由 /bin/sh解釋器執行的腳本。


在其他情況下,我們可以有


$ head -n5 2to3

#!/usr/bin/python2.7.exe

import sys

from lib2to3.main import main


sys.exit(main("lib2to3.fixes"))

2to3python 2.7腳本也是如此


查看完整回答
反對 回復 2022-07-06
?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

沒有其他人說過這個,所以對于其他正在尋找這個的人......如果你需要從cmd窗口運行“z......”命令并且cygwin你的路徑中有 bin 目錄,你可以運行它們(是的,它是有點笨拙)使用 bash,如

bash zcat file.gz

等等

或者您可以直接從cygwin終端運行它們。

FWIW 我必須找到“更多”實用程序并加載它們。出于某種原因,它們不在我下載的初始軟件包中


查看完整回答
反對 回復 2022-07-06
  • 2 回答
  • 0 關注
  • 166 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號