この質問にはすでに答えがあります:
私が持っているgnuwin32
とSFU。どちらにもscript.exe
コマンドはありません。
script.exe
Cygwin以外のWindowsに相当するものがあるかどうか、だれでも知っていますか?
script
ます。それはまさにその名前のLinuxコマンドであり、そのマニュアルページはただman script
離れているだけです。
script
コマンドを求めています。
この質問にはすでに答えがあります:
私が持っているgnuwin32
とSFU。どちらにもscript.exe
コマンドはありません。
script.exe
Cygwin以外のWindowsに相当するものがあるかどうか、だれでも知っていますか?
script
ます。それはまさにその名前のLinuxコマンドであり、そのマニュアルページはただman script
離れているだけです。
script
コマンドを求めています。
回答:
いいえ、script
コマンドに相当するWindowsはありません。私を信じて、私は高低を検索しました。
いずれの場合でも、リダイレクトを使用して少なくとも半分を達成できます。実行中に出力は表示されませんが、後でファイルで表示できます。残念ながら、これは妥協点ですが、ピンチのときにそれを行うことができます。
注意する必要があるのは、一部のプログラムが複数のストリームに書き込むことだけです。標準出力(stdout
)に加えて、標準エラー(stderr
)または標準ログ(stdlog
)に書き込むこともできます。だから、あなたがキャプチャしていることを確認するために、すべての出力を、あなたは両方をリダイレクトする必要があるstdout
とstderr
(Windowsでは、stdlog
自動的にリダイレクトされますstdout
)。以下の例では、Microsoftコンパイラー(cl.exe
)はバナー(ヘッダーテキスト)をstderr
に、残りのヘルプテキストをに出力しstdout
ます。
C:\> cl /? > foobar.txt 2>&1
コピーペーストが唯一の方法だと思います(出力のリダイレクトはスクリプトコマンドに相当しません)。
全画面ではなく、ウィンドウ形式でcmdプロンプトを開きます...
ここで、cmdプロンプトの頭、つまり上部の青い帯を右クリックすると、編集のオプションがあります。そこで、オプションマーク、つまり編集->マークを選択します。cmdプロンプトにカーソルが表示されます。コピーする領域を選択するだけで、右上の[編集]-> [コピー]をクリックします
テキストファイルに貼り付けるだけで、テキストファイルにcmdプロンプトの内容が表示されます...
必要なことを行うための回避策があります。
cygwinユーティリティパッケージ(それを見つけるためのgoogle cygwin)には、実際にスクリプトコマンドがあります。そのパッケージをインストールする場合、PATH変数を適切に変更し、script -c cmdと入力すると、DOSシェルが起動し、typescriptという名前のファイルで入力と出力がキャプチャされます 。スクリプトコマンドにはいくつかのオプションがあります。(ドキュメントを見つけるための読者のための演習として残しておきます:)
Cygwinはコンピューターに多くのものをインストールします。シンプルに保ちたい場合は、上記のようにteeコマンドをインストールし、cmd |と入力します。選択したファイル名。これにより、入力と出力がfilename-of-your-choiceにキャプチャされます。
次に、2番目のソリューションのログを示します。ログに記録された入力と出力はサブシェルにあることに注意してください。(私はスクリーンショットを投稿したでしょうが、このサイトは私を許可しません-私は十分に話していない)。
Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft
Corporation. All rights reserved.
C:\Users\David>echo topshell topshell
C:\Users\David>doskey /h echo topshell doskey /h
C:\Users\David>cmd | tee log.txt Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\David>echo subshell subshell
C:\Users\David>doskey /h echo subshell doskey /h
C:\Users\David>exit
C:\Users\David>doskey /h echo topshell doskey /h cmd | tee log.txt
doskey /h
C:\Users\David>type log.txt Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\David>subshell
C:\Users\David>echo subshell doskey /h
C:\Users\David> C:\Users\David>
両方のソリューションを試しました。2番目(cmd | tee ...)は、矢印キーでコマンドを呼び出すことができるため、より優れています。最初のソリューション(script.exe)はサポートしていません。
script.exe
であるのutil-Linuxのパッケージ。script
ドキュメント:linux.die.net/man/1/script
私が知っている非シグウィンはありません。しかし、cygwinを必要としない理由が何であれ、そのscript.exeをcygwinから分離し、cygwinの不要な部分を削除できることを認識して、再考することができます。ugいですが、動作し、ポータブルで、5MBかかります。
TL; DRは、bin
任意の場所にディレクトリを作成し、util-linux cygwinパッケージを手動でインストールした状態で、これらのファイルをコピーし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のインストール方法、その他すべてに関する意図的に非常に詳細な説明に従います。
script
コマンド(マニュアルページでは)と呼ばれるcygwinのデフォルト以外の一環として、Windowsのために存在しますscript.exe
。インストールするパッケージを手動で選択する必要があります。現在はutil-linuxというパッケージにあります。(注意が必要ではありませんが、依存関係を指定すると、技術的にはcygwinインストールからscript.exeを分離できることに注意してください)
あなたが持ってたらscript.exe
、あなたが開始することで、CMDセッションを記録することができますscript.exe -c cmd.exe
し、typeing exit
終わり。たとえば、出力ファイル名を設定できます。-a
スイッチは、デフォルトの名前があるtypescript
と上書きします。
どのexe(または他のファイル)がどのパッケージにあるかを調べるには、cygwinのパッケージのコンテンツをオンラインで検索できます:http ://www.cygwin.com/packages/たとえば、「script.exe」を探します。
FYI、あなたはのマニュアルページを参照してくださいすることができますscript
使用して、Linuxシステムでコマンドのman入力して、コマンドをman script
するターミナル(あなたがインストールさmanページを持っている場合)、またはオンラインで検索キーワード「男スクリプトtypescriptですが」。
の ポケット err .. cygwinのバックパックガイド:
Cygwinはすべてのexeを独自の.dllにリンクするため、exeファイルに加えてこれらのdllのコピーが必要ですが、それ以外は通常のWindowsネイティブexeファイルのコレクションとして使用できます。ただし、cygwinを使用する標準的な方法は、インストーラーを使用してインストールすることです。基本パッケージのダウンロードは約30MB、抽出は90MBと報告されていますが、のような追加のexeにはutil-linuxなどの追加パッケージを選択できますscript.exe
。
現在x86で呼び出されているcygwin インストーラーを実行してパッケージをインストールできますsetup-x86.exe
(以前は呼び出されていましたsetup.exe
。また、時々更新されます。たとえば、サーバーでパスが変更されたため、古いsetup.exeが機能しなくなりました。新しいものをダウンロードします)。パッケージリストに似たものが表示されるまで、インストーラで次、次、次の方法で進みます。
上部にあるオプション " keep "をクリックして、私に尋ねたら" Full "に表示します。これらの意味についての情報ツールチップをマウスでポイントします。
x86で通常行うパッケージリストを取得するには、ダウンロードして開始setup_x86.exe
し、ようこそ画面で[次へ]をクリックし、[インターネットからインストール]を選択して[次へ]をクリックし、インストールディレクトリを選択して[次へ]ディレクトリをクリックし、[次へ]をクリックして[直接接続](または必要なもの)を選択し、[次へ]をクリックします。ミラーリストをダウンロードできる場合は、実際には英語名の国のアルファベット順(生きていることは難しいがtrue)ドメイン名の末尾から(.com / .net / .org、次に.au、.de、.grなど)。自分に近いと思われるミラーを選択し、[次へ]をクリックします。ダウンロードに成功すると、パッケージリストが表示されます。
Cygwinはインストーラーでインストールできますが、Cygwinが作成するディレクトリは実際には移植可能です。以前は7zでzip圧縮し、他のコンピューターで解凍して使用していました。
デフォルトのインストールは、90MBが抽出され、30MBがダウンロードされると主張されています。このナブルスレッドのデフォルトパッケージの例から、最小限のシステムに何をインストールするかがわかります。実際にこれらのパッケージの選択を解除し、たとえばを選択するだけです。util-linuxをインストールすると、cygwinインストーラーはutil-linuxの依存関係(要件)もインストールするかどうかを尋ねます。デフォルトパッケージの選択を解除してもmintty.exe
端末またはがインストールbash
されるかどうかはわかりませんが、これらはcygwin exeを使用するために実際には必要ではありませんが、cygwin環境で通常使用されると便利です。
NOTEあなたがそれはあなたが複数のEXEファイルがcygwin.dllにに頼るのcygwin.dllが更新される、任意の時間を持っているのであれば動作しないことができないので、cygwinのインストールのいずれかの部分を分離し、あなたが作るために起こることunadwisedであることexeの別の1つに対する新しいDLLのコピー、DLLロードは、たとえばそれが他と比較して前の位置のPATHにある場合、間違ったDLLをロードしようとする場合があります。
つまり、script.exeを分離する(および潜在的にcygwinの残りを削除する)には、それを行うことができます。dllの依存関係をコピーしますが、十分ではありません。周囲にunixyシェルがなくてもsh.exeをロードしようとするため、sh.exeも必要ですが、「bin」というディレクトリ(どこでもかまいませんが、ところで)。したがって、機能的なscript.exeを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
、
bin
ディレクトリには、途中で、どこでも可能
たとえば、Total Commander listerプラグインfileinfoを使用して、dllの依存関係を取得できます。