我有一个文件,内容如下所示:
***************Encrypted String***************
ezF7LcHO0Zlb+8kkBeIwtA==
**********************************************
我只需要从上面获取加密的密码。我用谷歌搜索答案,我得到了这个例子(如下),但它不起作用:
sed -n '/***************Encrypted String***************/,/**********************************************/p' $file
我尝试过,但没有成功
答案1
这里的问题可能是这*
是一个正则表达式运算符,因此您必须对其进行转义\*
才能将其视为文字。如果没有这种适应,您引用文字的示例和建议BEGIN
都会END
失败。
***************Encrypted String*************** ezF7LcHO0Zlb+8kkBeIwtA== **********************************************
要提取第二行,您可以使用以下任一方法:
sed -n '0,/\*Encrypted String\*/d;p;q' "$file"
sed -n 2p "$file"
第一个匹配*Encrypted String*
,然后打印下一行。请注意,*
字符的书写方式是为了\*
确保将它们视为字面星号。第二个仅打印文件的第二行。