西格溫:實用程式Linux包裹

西格溫:實用程式Linux包裹

我有gnuwin32舊金山聯邦大學。也沒有script.exe命令。

script.exe有人知道除了我不想安裝的 Cygwin 之外是否有Windows 的等效程式(出於與本討論無關的原因)?

答案1

不,Windows 中沒有與該script命令等效的命令;相信我,我曾高低搜尋過

無論如何,您可以使用重定向來完成至少一半的工作。在執行過程中您不會看到輸出,但之後可以在檔案中看到它。不幸的是,這是一種妥協,但在緊要關頭它可以做到。

您需要注意的唯一一件事是某些程式會寫入多個流。另外標準輸出( stdout),他們也可以寫信給標準誤stderr) 或者標準日誌( stdlog)。所以為了確保您捕獲全部輸出,您需要重定向stdoutstderr(在 Windows 中,stdlog自動重定向到stdout)。在下面的範例中,Microsoft 編譯器 ( cl.exe) 將橫幅(標題文字)列印到stderr,並將其餘說明文字列印到stdout

C:\> cl /? > foobar.txt 2>&1

答案2

恐怕複製貼上是唯一的方法(重定向輸出與腳本命令不同)。

根據微軟幫助論壇

以視窗格式開啟cmd提示符,即不是全螢幕...

現在右鍵單擊cmd提示符的頭部,即頂部的藍色條,有一個編輯選項。在那裡選擇選項標記,即編輯->標記,。

現在在文字檔案中貼上,您將在文字檔案中獲得cmd提示符的內容...

答案3

據我所知,沒有非 cygwin 的;但無論您不想要 cygwin 的原因是什麼,您都可以重新考慮它們,因為您知道你可以將它的script.exe從cygwin中分離出來,並刪除cygwin中不需要的部分。會很難看,但可以用,而且很便攜,對我來說需要 5MB。

長話短說在任何地方建立bin目錄並手動安裝實用程式Linuxcygwin 包,將這些檔案複製到其中,bin然後刪除 cygwin 的其餘部分: bin\cyggcc_s-1.dll bin\cygiconv-2.dll bin\cygintl-8.dll bin\cygncursesw-10.dll bin\cygreadline7.dll bin\cygwin1.dll bin\script.exe bin\sh.exe

就是這樣。以下是關於如何找到它、如何安裝 cygwin 以及其他所有內容的非常詳細的描述。


西格溫:實用程式Linux包裹

命令script手冊頁) 對於 Windows 而言,作為 cygwin 的非預設部分存在,稱為script.exe.您必須手動選擇其軟體包進行安裝,目前它位於名為實用程式Linux。 (請注意,雖然不明智,但從技術上講,如果您提供其依賴項,則可以將 script.exe 從 cygwin 安裝中分離出來)

獲得後,您可以透過開始並在最後鍵入來script.exe記錄 cmd 會話。您可以使用例如設定輸出檔名。開關,預設名稱為and overwrite。script.exe -c cmd.exeexit-atypescript


要查找哪個exe(或其他檔案)在哪個包中,可以在線上搜尋cygwin的包內容:http://www.cygwin.com/packages/例如,尋找“script.exe”。

供參考script,您可以使用以下指令查看 Linux 系統中該指令的手冊頁男人命令,man script輸入終端(如果您安裝了手冊頁),或透過線上尋找關鍵字“man script typescript”。


口袋錯誤.. cygwin 背包指南:

關於賽格溫

Cygwin 將每個 exe 連結到自己的 .dll,因此除了其 exe 檔案之外還需要這些 dll 的副本,但除此之外可用作普通 Windows 原生 exe 檔案的集合。然而,使用 cygwin 的標準方法是透過其安裝安裝人員。據報道,基礎包的下載量約為 30MB,解壓縮後的大小為 90MB,但您可以選擇額外的包,例如實用程式Linux對於其他前任,例如script.exe.

安裝包

您可以透過執行 cygwin 安裝軟體包安裝人員,目前稱為setup-x86.exex86(以前稱為setup.exe。它偶爾也會有更新。例如,舊的 setup.exe 不再工作,因為伺服器上的路徑已更改;您需要下載新的)。您在安裝程式中以「下一個下一個」的方式前進,直到看到類似於軟體包清單的內容。

在頂部點擊選項“保持“並查看”滿的「如果你問我。將滑鼠懸停在資訊工具提示上,了解這些意義。

取得包裹清單的詳細方法

若要取得軟體包列表,您通常會在 x86 上執行以下操作:下載並開始setup_x86.exe,在歡迎畫面中點擊“下一步”,選擇“從網路安裝”並點擊下一步,選擇安裝目錄並點擊下一步,選擇臨時套件快取目錄並點擊下一步,選擇“直接連接」(或任何您需要的內容) )然後點擊下一步,如果可以下載鏡像列表,實際上是按照國家英文名稱的字母順序排列的(難以置信,但卻是事實),你可以從域名後綴(. com/.net/.org)中看到它首先,然後例如.au、.de、.gr 等)。選擇一個您認為離您比較近的鏡像,點擊下一步,如果下載成功就可以看到軟體包清單。

安裝尺寸+便攜性

Cygwin 可以透過其安裝程式安裝,但它創建的目錄實際上是可移植的。我曾經用7z壓縮它並解壓縮並在其他計算機上成功使用它。

據稱預設安裝解壓縮 90MB,下載 30MB。您可以在以下位置查看預設包的範例這個易碎的線索了解要在最小系統上安裝什麼。您實際上可以取消選擇這些包,只選擇例如。實用程式Linux安裝時,cygwin安裝程式會詢問您是否也想安裝util-linux的依賴項(要求)。我不確定取消選擇預設包是否仍會安裝終端mintty.exebash,儘管它們對於使用任何 cygwin exe 實際上並不是必需的,但它們很方便並且通常是 cygwin 環境所期望的。


將 script.exe 與 cygwin 分離

筆記將 cygwin 安裝的任何部分分開是不明智的,不是因為它無法工​​作,而是因為如果您有多個 exe 依賴於 cygwin.dll,那麼每當 cygwin.dll 更新並且您碰巧製作了一份副本時對於另一個exe 的新dll,dll 載入可能會嘗試載入錯誤的dll,例如,如果它在PATH 中的位置比另一個dll 靠前。

也就是說,要分離 script.exe(並可能刪除 cygwin 的其餘部分) - 您可以做到這一點,您複製它的 dll 依賴項,但這還不夠。即使周圍沒有unixy shell,它也會嘗試載入sh.exe,因此它也需要sh.exe,但它仍然找不到它,除非你將它們放在名為「bin」的目錄中(可以是任何地方,順便一提)。因此,要使功能 script.exe 與 cygwin 分離,您需要以下結構中的這些檔案(截至撰寫本文時):

bin\cyggcc_s-1.dll,,,,,,,,,,, bin\cygiconv-2.dll bin\cygintl-8.dllbin\cygncursesw-10.dllbin\cygreadline7.dllbin\cygwin1.dllbin\script.exebin\sh.exe

順便說一句,該bin目錄可以在任何地方

您可以使用 Total Commander lister 外掛程式來取得 dll 依賴項文件訊息

透過 Total Commander Lister 外掛程式「fileinfo」的 dll 依賴項

答案4

聽起來你想要這個tee指令。你可以得到它這裡。 Tee 可讓您從標準輸入讀取資料並寫入標準輸出和檔案。

相關內容