Sie können tr
verwenden, um nur die druckbaren Zeichen aus einer Zeichenfolge wie unten zu drucken. Verwenden Sie einfach den folgenden Befehl in Ihrer Eingabedatei.
tr -cd "[:print:]\n" < file1
Das Flag -d
ist nicht auf die Zeichensätze in den Argumenten auf dem Eingabestrom definiert löschen soll, und -c
ist zur Ergänzung diejenigen (Invert was vorgesehen ist). Also ohne -c
würde der Befehl alle druckbaren Zeichen aus dem Eingabestrom löschen und die Verwendung ergänzt es durch Entfernen der nicht druckbare Zeichen. Wir behalten auch das Newline-Zeichen \n
, um die Zeilenenden in der Eingabedatei beizubehalten. Das Entfernen würde nur die endgültige Ausgabe in einer großen Linie erzeugen.
Die [:print:]
ist nur ein POSIX bracket expression, die eine Kombination von Ausdrücken ist [:alnum:]
, [:punct:]
und Raum. Die [:alnum:]
ist die gleiche wie [0-9A-Za-z]
und [:punct:]
umfasst Zeichen !
"
#
$
%
&
'
(
)
*
+
,
-
.
/
:
;
<
=
>
?
@
[
\
]
^
_
`
{
|
}
~
Jedes Zeichen ist auf seine Art besonders. –
Ihre Frage ist nicht sehr klar. Etwas mehr Kontext zu geben, würde vielleicht hilfreichere Antworten aufzeigen. –