問題タブ [wc]

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 投票する
3 に答える
13873 参照

linux - linuxコマンドwc出力形式

Linuxコマンドを正確に模倣するperlを書く必要がありますwc(特に出力形式を含む)、機能を実現しながら、の出力wcは本当に頭痛の種です、それは常に変化しているようです、以下はいくつかの例です(スペース 文字 を表すため に□を 使用し ます)
1.⇒2.⇒3.⇒4.⇒5.⇒6.⇒7.⇒ wc test_input_1_ □□705673□□4234032□26754553□test_input_1
_wc test_input_2□14□□79□581□test_input_2
wc test_input_2 -w79□test_input_2
wc test_input_2 -wc□79□581□test_input_2
cat test_input_2 | wc□□□□□14□□□□□□79□□□□□581
cat test_input_2 | wc -w79
cat test_input_2 | wc -wc□□□□□79□□□□□581

wcが出力をフォーマットする方法を知っている人はいますか?どんな助けでもありがたいです、どうもありがとう。

0 投票する
3 に答える
278 参照

linux - perlの行の文字を数えようとして失敗しました

最初は、以下を使用して各行の長さを数えました。

しかし、得られた結果をLinuxコマンドWCによって生成された結果と比較すると、問題が見つかりました。ファイル内のすべてのタブ文字が1 characterperlの長さとして扱われるのに対し、それは8のためのものであるwcため、次の変更を行いました。

上記のコードでは、1つを除いて、現在ほとんどすべてのケースで機能します。wcすべてのタブがカウントされるわけではありませんが、一部の文字が含まれていないものだけがカウントされます。たとえば、行の先頭にある場合は、入力して1234からタブを押すと、タブwcとしてカウントされませんが、上記のコードはそれをカウントしましたが、この問題を解決するために採用できる方法はありますか?ありがとう

それを解決し、タブ拡張を使用しました、ここにコードがあります:

誰かがそれを説明することができれば、それは素晴らしいでしょう、私はそれが機能していることをテストしましたが、それを完全には理解していません。とにかく、すべての助けに感謝します

0 投票する
6 に答える
23582 参照

c# - 行をすばやくカウントする方法は?

unxutils 'を試しましwc -lたが、1GB のファイルでクラッシュしました。このC#コードを試しました

500MB のファイルを 4 秒で読み込みます

10 秒で読み取ります

7秒かかります

まだ試していないより速いものはありますか?

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

c - 行数を数えるときに奇妙な動作をするCプログラムからのファイル出力

私はCを使用して大きなフラットファイルを解析し、関連する行を出力ファイルに出力しています。出力ファイルは約70,000行である必要があります。

geditでファイルを開くと、正しい行数と行の長さで、期待どおりに表示されます。

ただし、実行するとwc -l <file>13,156が返されます。ですgrep -c "" <file>

tail <file>geditに表示される最後の10行を返します。head <file>最初の10行を返します。しかしtail -n +8000 | head -n 1、8,000行目を返すはずの、は、geditの34,804行目に表示されるテキストを返します。

ファイルに改行文字がない場合は、これらの結果を期待します。しかし、geditには問題がないようです。さらに、wc -L <file>最大行長を表示する、は、予想どおり、142バイトを返します。予想通り、ファイルのサイズは9,000,000バイト強です。

wc -L <file>= 142、およびwc -c <file>= 9046609の場合、どうすれば= 13156になりwc -l <file>ますか?

このファイルに書き込むときに私が間違ったことを誰かが知っていますか?

0 投票する
7 に答える
65957 参照

bash - 変数としての wc の結果

「wc」からの行を変数として使用したいと思います。例えば:

のようなものを持ち、値、$lines$wordsおよび に$characters関連付けたいと思います。どうすればbashでそれを行うことができますか?2523

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

linux - ファイルの行番号がxより小さい場合のBASH

いくつかのファイルを読み取るループを作成し、wc出力が5より小さい場合にループを停止したい。この場合、ファイル「file」には、処理されるファイルの名前が含まれています。

この部分は機能していません

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

linux - 3 つのファイルを比較するにはどうすればよいですか (ファイル間の共通点を確認するため)。

3 つのファイルを比較して、ファイル内の情報がどの程度同じかを確認したいと考えています。ファイル形式は次のようなものです。

私は最初の 2 つの列にのみ関心があります (最初の 2 つの列が同じであれば、等しいと見なします)。これは、2 つのファイルを比較するために使用するコマンドです。

私のファイルは非常に大きく、awkはそれらを非常にうまく処理するので、awkコマンドを使用したいと思います! しかし、3つのファイルに使用する方法がわかりませんでした!

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

c++ - wc に読むのをやめるにはどうすればいいですか?

fork()新しいプロセスを作成し、その新しいプロセスstdinをファイル記述子パイプで上書きするプログラムがありますfd。このプロセスでは、execvp()実行に使用しwc、親から入力を読み取る必要があります。親では、次にパイプの書き込み側に書き込み、書き込みが終了したらパイプを閉じます。

問題は、wcまだ入力を期待していて、des が終了しないことです。
通常、wc入力することで停止できますCTRLDが、C/C++ でその信号を送信できないようです。

wc読むのをやめるにはどうすればいいですか?

編集:パイプ/フォーク/dup/execイディオムに従いました(それが呼ばれるものだと思います)
。ストリーミングは、入力が必要な他のプログラムで機能します。読み取りを停止wcするには、特別なものが必要です。EOF

コードが少しばらばらに見える場合は申し訳ありません。ファイルの周りからまとめなければなりませんでした。

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

bash - Bash:最大行数のファイルを検索

これは私の試みです

  • すべての*.javaファイルを検索
    find . -name '*.java'
  • 行数を数える
    wc -l
  • 最後の行を削除
    sed '$d'
  • wcAWKを使用して、出力の最大行数を検索します
    awk 'max=="" || data=="" || $1 > max {max=$1 ; data=$2} END{ print max " " data}'

次に、それを1行にマージします

どういうわけか、空白以外の行だけをカウントするように実装できますか?