Linux 如何在行尾减去1位置添加sed文本
我想在输入文件中以Linux 如何在行尾减去1位置添加sed文本,linux,shell,sed,Linux,Shell,Sed,我想在输入文件中以resourceFilters:开头的行的最后一个字符前面添加文本[*,test,*](该字符串前面可以有任意数量的空格) 下面是这一行的一个例子 resourceFilters: '[Event,*,*][*,kube-system,*][*,kube-public,*][*,kube-node-lease,*][Node,*,*][APIService,*,*][TokenReview,*,*][SubjectAccessReview,*,*][Binding,*,*][R
resourceFilters:
开头的行的最后一个字符前面添加文本[*,test,*]
(该字符串前面可以有任意数量的空格)
下面是这一行的一个例子
resourceFilters: '[Event,*,*][*,kube-system,*][*,kube-public,*][*,kube-node-lease,*][Node,*,*][APIService,*,*][TokenReview,*,*][SubjectAccessReview,*,*][Binding,*,*][ReplicaSet,*,*]'
将其更改为:
resourceFilters: '[Event,*,*][*,kube-system,*][*,kube-public,*][*,kube-node-lease,*][Node,*,*][APIService,*,*][TokenReview,*,*][SubjectAccessReview,*,*][Binding,*,*][ReplicaSet,*,*][*,test,*]'
sed/^*resourceFilters:'/s/'$/[*,test,*]'/“您的_文件
- 我已经用双引号引用了Sed命令,以便在其中使用单引号李>
使以下/^resourceFilters:'/
substitution命令仅作用于以s
李>resourceFilters开头的行:'
是一个替换命令,它匹配行末尾(s/'$/[*,test,*]/
)处的$
,并将
替换到它,有效地将[*,test,*]
插入到[*,test,*]
之前
resourceFilters:
的行上进行匹配,并在该行的最后一个字符之前插入[*,test,*]
sed -E 's/^(\s*resourceFilters:.*)(.)$/\1[*,test,*]\2/' file