如何使用 sed 命令替换单词的一部分

如何使用 sed 命令替换单词的一部分

我有一个文件,每一行只有一个单词。我想删除每行中单词的某些部分。如何使用 sed 命令删除该部分?前任:

u_fox/u_snake/u_snail/u_plus/u_core/u_vector/u_divider_rad4_0_1/instanceFE_OFC209016_vx0_srcb_fdivsqrt_44(code0_lo6_poic_hpc_int3_vcell05p00)

我想删除这部分:(code0_lo6_poic_hpc_int3_vcell05p00),基本上括号内的任何内容,包括括号。

文件中的所有其他行都遵循类似的模式。

答案1

sed -e 's/(.*)//' file

这是删除以 开头的(任意数量的字符(用点 ( .*) 表示,以 结尾的字符串))。这将发生在具有此序列的每一行上。

答案2

$ cut -d'(' -f1 file
u_fox/u_snake/u_snail/u_plus/u_core/u_vector/u_divider_rad4_0_1/instanceFE_OFC209016_vx0_srcb_fdivsqrt_44

答案3

使用 grep:

grep -o '^[^(]*' file

带栏:

column -ts'(' -H2 file

答案4

Below mentioned Awk command will do


awk -F "(" '{print $1}' filename   ==========>This will display output

awk -F "(" '{print $1}' filename >tmpfile && mv tmpfile filename  ======> If you want to save output in exsisting file

相关内容