Awk

將文件中的一行拆分為兩列

  • March 28, 2022

我想將一行分成兩列

./ABC/dce/app/config/fgh/pqr/app.properties:app.pass=*****

我希望上述行中的冒號(:) 作為分隔符並輸出如下

./ABC/dce/app/config/fgh/pqr/app.properties                        app.pass

有人能幫我嗎 ?

您可以使用awk

awk -F"[:=]" '{print $1"\t"$2}' $file

我們設置了 2 個分隔符,FS以便我們可以將後面的所有內容設置=為一列並將其排除。

你也可以使用sed

sed -E 's/(^.*):(.*)=.*/\1\t\2/'

輸出*

./ABC/dce/app/config/fgh/pqr/app.properties     app.pass

你可以試試:

echo "./ABC/dce/app/config/fgh/pqr/app.properties:app.pass=*****" | tr ':' '\t'

引用自:https://unix.stackexchange.com/questions/664032