3

利用した:

tr -dc [:alpha:] < $fileDoc | wc -c

すべての文字を数えるには、

tr -dc ' ' < $fileDoc | wc -c

すべてのスペースを数えるには、

tr -dc '\n' < $fileDoc | wc -c

テキスト ドキュメント内のすべての新しい行をカウントします。

私が今やりたいことは、ドキュメント内の他のすべての文字を数えることです。他のすべてのものを呼び出します。

ドキュメントのテキストは次のとおりです。

こんにちは、これはテスト テキスト ドキュメントです。

123

!@#

[:alpha:]、および見つかったすべてを削除し\n、残りの文字を数える方法はありますか?

4

2 に答える 2

1

参考のためにここに投稿するだけです。すべてを一度に実行したい場合は、次のawkスクリプトが機能するはずです。

awk -v FS='' '
{
    for(i=1; i<=NF; i++) {
        if($i ~ /[a-zA-Z]/) {alpha++};
        if($i == " ") {space++};
        if($i !~ /[A-Za-z0-9 ]/) {spl++}
    }
}
END {
    printf "Space=%s, Alphabets=%s, SplChars=%s, NewLines=%s\n", space, alpha, spl, NR
}' file

$ cat file
This is a text
I want to count
alot of $tuff
in 1 single shot

$ awk -v FS='' '
{
    for(i=1; i<=NF; i++) {
        if($i ~ /[a-zA-Z]/) {alpha++};
        if($i == " ") {space++};
        if($i !~ /[A-Za-z0-9 ]/) {spl++}
    }
}
END {
    printf "Space=%s, Alphabets=%s, SplChars=%s, NewLines=%s\n", space, alpha, spl, NR
}' file
Space=11, Alphabets=45, SplChars=1, NewLines=4
于 2014-02-25T05:56:03.350 に答える