問題タブ [gnuwin32]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
101 参照

tiff - GnuWin32 によるマルチページ

GnuWin32 ライブラリの tiffSplit.exe は tiff 画像を分割します。GnuWin32 ライブラリを使用して、さまざまな単一ページのファイルを複数ページの tiff に変換することは可能ですか?

0 投票する
1 に答える
3787 参照

windows - sed を使用して変更するシンボルに

GnuWin32 (sed 4.2.1 およびコア ユーティリティ 5.3.0) を使用して Windows Vista で作業しています。ActivePerl 5.14.2 パッケージもあります。

大きなマルチ レコード ファイルがあります。ファイル内の各レコードの終わりは、4 つのドル記号 ($$$$) で示されます。各論理レコード内には、多くの「CRLF」があります。

CRLF のすべてのインスタンスを|+|. $$$$次に、CRLFに置き換えます。結果: 行ごとに 1 つのレコードを Excel にインポートして、さらに操作することができます。

CRLFに変換する方法をいくつか試しました|+|が、成功しませんでした。

たとえば、次のような方法がありました。sed -e "s/[\r\n]/|+|/g" source_file_in target_file_out

別のメソッドを使用tr -dして削除\rし、次に 2 番目のステートメントを使用します。sed -e "s/\n/|+|/g" source_file_in target_file_out

trステートメントは機能しました。sed声明はそうではありませんでした。

\r\n次の記事を読みましたが、それらを適応させてのような記号に置き換える方法がわかりません|+|

sed: CR および/または LF を "\r" "\n" に置き換える方法。これにより、任意のファイルが 1 行になります。

CRLF を含む文字列を置き換えますか?

sed を使用して改行 (\n) を置き換えるにはどうすればよいですか?

この問題がsed(and tr) を使用しても簡単に解決できない場合は、誰かが方法を教えてくれれば Perl を使用します。


エドさん、お勧めありがとうございます。

awk スクリプトはまだ完全に機能していないため、推奨事項を微調整できることを期待して、不足している詳細を追加します。

まず、gawk v3.1.6.2962 を実行しています。awk の実装には違いがあるかもしれないと思うので、これは役に立つ情報かもしれません。

次に、データの種類とデータの出所に関する情報をいくつか追加します。

データは化学物質に関するものです (立体化学描画プログラムに入力されるテキスト データ)。

化学ファイルは .sdf 形式です。

NotePad++ で "133711.sdf" を開くと (表示/シンボルの表示/すべての文字の表示を使用)、スクリーン ショットに示されているデータが表示されます: https://dl.dropbox.com/u/3094317/_master_1_screen_shot_.png

ご覧のとおり、LF のみ - CR はありません。これは、.sdf ファイルの起源が UNIX システムであることを意味していると思います。

次に、Windows コマンド COPY *.sdf _master_2_.txt を実行します。これにより、レコードに解析したい非常に大きなファイルのファイルが作成されます。

_master_2_.txt の構造は 133711.sdf と同じです - LF のみ。CRなし。

次に、.BAT ファイルで awk の推奨事項を実行します。Microsoft が私を作ったので、一重引用符を二重引用符に置き換える必要があります。

awk -v FS="\r\n" -v OFS="|+|" -v RS="\$\$\$\$" -v ORS="\r\n" "{$1=$1}1" C:_master_2_.txt >C:\output.txt

output.txt のスクリーン シャウトを添付しました: https://dl.dropbox.com/u/3094317/output.txt.png

ご覧のとおり、awk コマンドは "\r\n" を "|+|" に正常に置き換えませんでした。

さらに、Windows は CRLF を使用して output.txt を作成しました。

4 つの $ を CRLF に置き換えることに成功しました。

この情報は、Windows 関連の問題を処理するために awk の推奨事項を更新するのに十分ですか?

0 投票する
4 に答える
10376 参照

python - Windowsの`magic`ライブラリのファイルがありません

Windows上のいくつかのファイルのmimeタイプを取得する必要があるため、python-magic(32ビットPython 2.7.3に)インストールしました。UNIXライブラリ
に依存します。作成者は、gnuwin32プロジェクトから取得するように 指示します。そこで、ファイルをフォルダーに保存し、そのフォルダーをシステムに追加しました。 これで、メソッドを実行すると、欠落しているファイルの例外が発生します。 magic
regex2.dllzlib1.dllmagic1.dllPATH
magic

DLLはPATHにあり、デバッグを試みmagic1.dllて正しく配置されていますが、ライブラリ内のどこかで例外がスローされます。私が見つけ
たパッケージの中と。それらを同じフォルダに置いて、乗りました gnuwin32magicmagic.mgcWindowsError: [Error 126]

magicこれは明らかに、Pythonがファイルをプレーンテキストであるdllとして開こうとするために発生します。コード内のファイル名に追加.dllした後、私は同じを取得しますmagic.MagicException: could not find any magic files!
どのファイルがありませんか?

アップデート:

更新2(解決済み):

ファイルを明示的に指定する必要がありました

0 投票する
1 に答える
2232 参照

batch-file - win7で未完了/応答なし/ハングしたコマンドの出力をログに記録する方法は?

コマンドのコンソール出力をリダイレクトしたい。
問題は、コマンドが途中で (多かれ少なかれ) ハングし、コンソールに出力されてもログファイルが空であることです。次のように wtee.exe も試しました。%pat%wtee.exe log.txt ですが、機能しません。コンソールをリアルタイムでダンプするものが必要です。私は、c ++やpowershell csriptなどを含むほとんどすべてのソリューションを受け入れています.

記録のために、詳細な出力を投稿する必要があります(https://superuser.com/questions/564468/how-can-i-store-encfs6-xml-in-another-location-and-still-make-it-検出可能

前もって感謝します

アップデート:

うわーそれは動作します。
どうやら、バッチ スクリプトを実行する前にログ ファイルを削除する必要があるようです。

私が使用する場合

その後、毎回ファイルを削除する必要はありません。
ベアテイルのアイデアは興味深いですが、今は必要ありません。ストリームはコンソールとログ ファイルの両方に送信されます。

本当にありがとう

UPDATE2: tee と wtee はほとんど同じなので、gnuwin32 タグも使用しました。これは tee.exe に適用されると思います。

0 投票する
1 に答える
3875 参照

python-2.7 - SIP Makefile の失敗 (gnuwin および mingw)

Python 2.7 用の Sip モジュールをダウンロードし、makefile を作成して、makefile をmake含むディレクトリでコマンドを実行しましたが、次のエラーが発生しました。

Gnuwin と mingw32 の両方でこのエラーが発生します。だから、今何をすべきか途方に暮れています。何か案が?

0 投票する
2 に答える
1178 参照

batch-file - Windows バッチ ファイルと GNU Sed グループ化コマンド

バッチ ファイルで GNU Sed for Windows を使用しています。sed グループ化コマンド {} を使用して、一連のコマンドをグループ化したいと考えています。ただし、UNIX プラットフォームのドキュメントによると、{} 内の各 sed コマンドを新しい行で開始する必要があります。UNIX で実行できるのは、bash がコマンドを 1 行以上にまたがることをサポートしているためです。しかし、Windows バッチ ファイルでは、コマンドを 1 行以上に分割するにはどうすればよいでしょうか。すべての sed コマンドを別のスクリプト ファイルに入れ、「-f script-filename」で sed を呼び出すことができることを知っています。しかし、バッチ ファイルを 1 つだけに制限し、「sed -e script」オプションを使用してすべてをバッチ ファイル内に配置したいと考えています。

バッチファイル内で sed -e を使用してグループ化コマンドを指定するにはどうすればよいですか?

編集

たとえば、このhttp://www.grymoire.com/Unix/Sed.html#uh-35から:

バッチ ファイルで同じことを行うにはどうすればよいでしょうか。彼らが sed を Windows プラットフォームに移植したとき、彼らはこの問題に遭遇し、その回避策を見つけたはずです。GNU 関係者が {} はバッチ ファイルでサポートされていないと判断した場合を除きますが、GNU Sed のドキュメントには何も見つかりません。

0 投票する
0 に答える
549 参照

c - VisualStudio 2010 で regex.h が原因で例外が発生する

学生に正規表現の使い方を教えたかったのです。彼らは C でプログラミングを学んでいるので、GnuWin32 ( http://gnuwin32.sourceforge.net/packages/regex.htm )の regex.h を使用するのが最適だと思いました。例として、 http://www.peope.net/old/regex.htmlプログラムを実行しようとしましたが、実行時に正規表現を保持する変数で例外が発生します。正確なエラー メッセージは次のとおりです。

実行時チェックの失敗 #2 – 変数「regex」の周りのスタックが壊れていた

驚くべきことは、例自体が適切に実行されており、正規表現関数が適切に機能しているように見えることです。main() が戻りたいポイントですべての重要なことが終わった後、エラーが発生します。

このエラーが発生する理由を知っている人はいますか? 使用している 64 ビット システムが問題の一部である可能性はありますか?

アドバイスをありがとう!

0 投票する
2 に答える
70 参照

compiler-construction - GnuWin32 Bison の Shift/Reduce 警告を解決しますか?

私は次のルールを持っており、バイソンでそれらを実装すると、5つのシフト/削減警告が表示されます。

規則の一部は次のとおりです。

この状態でParser.output警告が表示されます。

**state 25**

誰かがこれを解決する方法を教えてくれますか、私は多くの記事を読みましたが、何が問題なのか理解できませんでした。すべての人に感謝します... :)

0 投票する
1 に答える
6634 参照

batch-file - GnuWin32 openssl s_client による WebSphere MQ サーバーへの接続が EOF で終了せず、ハングする

OpenSSL の GnuWin32 バージョンを使用して、いくつかの WebSphere MQ キュー マネージャーから証明書を取得しようとしています。すべての試行で、手動で ENTER を押すまで、OpenSSL が接続を開いたままにします。

this SO questionおよびthis SO question に従って、さまざまなテキストをコマンドにパイプしようとしましたが、うまくいきませんでした。

理想的には、入力ファイルまたはパイプされたテキストが EOF に達すると、OpenSSL は接続を閉じます。

例:

コマンドを使用した例QUITは、HTTP サーバーにアクセスしているため、他の SO の質問で機能しているように見えます。これは私の場合は WMQ であるため、接続ハンドシェイクが異なり、送信QUIT(または私が試したもの) を行っても接続を閉じることができません。QMgrが接続を窒息させて切断するまで、おそらく巨大なファイルをフィードできますが、サーバーに対してできるだけ礼儀正しくしようとしています。キーボードから ENTER を入力する現在の方法では、接続ごとに FDC ダンプがそのまま発生し、あらゆる種類のアラームが発生し、Tivoli の担当者が私を怒らせています。

したがって、最良のケースは、QMgr が適切な拒否として解釈し、接続を閉じる文字列または 16 進値です。2 番目に良いケースは、これをスクリプト化できる方法であり、この機能を自動化するコストとして FDC ファイルを受け入れます。

更新: 2013 年 5 月 31 日
以来、これが完全に機能する AIX に移動しました。s_client は、スクリプトで実行して改行をパイプすると、接続を確立した直後にハングアップします。ただし、Windows 用のソリューションが必要です。Cygwin バージョンが機能するか、同じ問題があるかどうかは誰にもわかりませんか? Windows シグナリング/POSIX の問題ですか? コードバグ?