Perl
在一行中連接欄位並刪除尾隨空格
我有一個由空格分隔的 3 個欄位的字元串。我想連接最後兩個欄位,
-
確保最後的換行符被刪除。以下作品:
echo -n "abc 1234 5679" | tr -s "" |cut -d ' ' -f2 -f3 | tr " " "-"
我想知道有沒有
perl
這個的線上人?
使用
awk
:printf 'abc 1234 5679' | awk '{printf "%s", $2"-"$3}'
or
perl
的awk
模式(-a
):printf 'abc 1234 5679' | perl -ape '$_ = "$F[1]-$F[2]"'
請注意,如果存在,如果要保留它,如果存在,兩者都會刪除行分隔符,使用 GNU
awk
:printf 'abc 1234 5679\n' | gawk '{printf "%s", $2"-"$3 RT}'
與
perl
:printf 'abc 1234 5679\n' | perl -ape 's/.*/$F[1]-$F[2]/'
用這個 :
$ echo -n "abc 1234 5679" | perl -pe 's/(\d+)\s+(\d+)$/$1-$2/'