我想删除文件中与精确模式匹配的行,而不是与字符串不匹配的字符串,如果我仅键入密钥,则不应该删除该属性,而应该向我询问完全匹配或给我一条消息只有在完全匹配时才找到匹配项,应删除该行。
sed -i '/nodeName:/d' etc/dir.txt
这会删除以nodeName开头的行:但我想保留此行,仅在我给nodeName = xyz时才删除。
sed -i "/nodeName:/d" etc/dir.txt
文件如下所示:
nodeName: 'HKLGIDWAS11_HK_DMGR01'
dmgrPath: '/IBM/websphere/DMGR_SAN/profiles/DEV_WAAS_CRBKG01_HK_DMGR01'
clusterName: 'DEV_WAAS_eBBSONL_MY_DC'
在命令中,如果我仅给出节点名:如果我输入nodeName: 'HKLGIDWAS11_HK_DMGR01'
,它应该不给我找到匹配的消息,应该删除该属性,并给我一个消息属性,删除
答案 0 :(得分:0)
尝试一下:
create index "nodes_tags_idx" on nodes using gin(tags)
示例
给定文本的文件名:#!/bin/bash
if grep -q -x "$1" etc/dir.txt; then
sed -i "/$1/d" etc/dir.txt
echo $1 deleted
else
echo " No match found"
fi
脚本:t2.txt
ta1.sh