Ich weiß es nicht. Wenn Sie diesen Satz eingeben, gefolgt von einem NL & Strg-D für mich, wird die wc-Datei 1 16 80-Datei gerendert. In welcher Umgebung befinden Sie sich?
Tink
5
Weil Sie 3 Leerzeichen am Ende der Zeile haben? Tun Sie od -c file, um genau zu sehen, was da drin ist.
vonbrand
Verwenden Sie wc -mdiese Option, um Zeichen zu zählen. wcund wc -cgeben Sie eine Byteanzahl an, keine Zeichenanzahl.
Stéphane Chazelas
Antworten:
36
wczeigt 3 Zeichen mehr an, weil Ihre Beispieldatei ein ausgefallenes Unicode-Apostroph enthält ’(höchstwahrscheinlich, weil Sie den Inhalt von einem Browser oder Texteditor kopiert haben):
$ cat file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
$ wc file
1 16 82 file
Mit einfachem ASCII-Apostroph ':
$ cat file2
Amy looked at her watch. He was late. The sun was setting but Jake didn't care.
$ wc file
1 16 80 file2
wcStandardmäßig wird die Anzahl der Bytes pro Handbuch angezeigt :
Zeilenumbruch, Wort und Byte zählen für jede Datei
Für die Anzahl der Zeichen kann ein -mArgument verwendet werden:
$ cat file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
$ wc -m file
80 file.txt
Verwenden Sie wc -mdiese Option, um Zeichen zu zählen, wc -cund die dritte Spalte in der wcAusgabe zählt Bytes, keine Zeichen.
Stéphane Chazelas
12
Wenn Sie die Datei weiterleiten xxd, um eine hexadezimale Ausgabe neben dem ASCII zu sehen, können Sie sehen, ob es zusätzliche Zeichen gibt, die Sie nicht sehen können oder die nicht gedruckt werden können.
od -c file
, um genau zu sehen, was da drin ist.wc -m
diese Option, um Zeichen zu zählen.wc
undwc -c
geben Sie eine Byteanzahl an, keine Zeichenanzahl.Antworten:
wc
zeigt 3 Zeichen mehr an, weil Ihre Beispieldatei ein ausgefallenes Unicode-Apostroph enthält’
(höchstwahrscheinlich, weil Sie den Inhalt von einem Browser oder Texteditor kopiert haben):Mit einfachem ASCII-Apostroph
'
:wc
Standardmäßig wird die Anzahl der Bytes pro Handbuch angezeigt :Für die Anzahl der Zeichen kann ein
-m
Argument verwendet werden:quelle
wc
zählt Bytes , nicht Zeichen . pubs.opengroup.org/onlinepubs/009604499/utilities/wc.htmlwc -m
diese Option, um Zeichen zu zählen,wc -c
und die dritte Spalte in derwc
Ausgabe zählt Bytes, keine Zeichen.Wenn Sie die Datei weiterleiten
xxd
, um eine hexadezimale Ausgabe neben dem ASCII zu sehen, können Sie sehen, ob es zusätzliche Zeichen gibt, die Sie nicht sehen können oder die nicht gedruckt werden können.quelle
wc
zählt Bytes, keine Zeichen. Wenn Sie Zeichen zählen möchten, sollten Sie die folgende-m
Option verwenden :Das verbleibende "zusätzliche Zeichen" ist in der Tat die neue Zeile, die Sie am Ende der Datei haben.
quelle