テキストファイルの先頭と末尾にあるすべての「空白」文字(存在する場合は\ nを含む)を削除したいと思います。 (デフォルトでは、「file」が大きな文字列の場合、ほとんどのプログラミング言語のTrim()関数の動作を模倣します)。
ベストアンサー1
使用sed
:
sed -z 's/^\s*//; s/\s*$//' infile
s/^\s*//
、infile
入力ファイルとして使用する場合は、空白/空白行を削除します。s/\s*$//
infile
\n
、を含む入力ファイルの末尾の空白/空白行を削除しますinfile
。
例cat -e infile
:
$
$
$
Three blank lines above$
$
$
Two blank lines in the middle$
a blank lines below$
$
a line with trailing whitespaces $
a line with leading whitespaces$
below are two empty lines + one whitespaces then an empty line again$
$
$
$
$
出力:
Three blank lines above
Two blank lines in the middle
a blank lines below
a line with trailing whitespaces
a line with leading whitespaces
below are two empty lines + one whitespaces then an empty line again
または、最初の空白/空白行を削除した結果をprintf
印刷しsed
、最後から空白行のみを削除するコマンドの置き換えに使用できます\n
。
printf '%s' "$(sed -z 's/^\s*//' infile)"