regex - 我究竟做错了什么 ?sed:-e 表达式 #1,字符 74:缺少命令
问题描述
我正在运行 Ubuntu 14 并尝试使用 sed 在文件中查找特定行。
当我运行命令时
sed '/password\s[success=\d\sdefault=ignore]\spam_unix.so\sobscure\s+sha512/' testfile.txt
我明白了sed: -e expression #1, char 74: missing command
我正在寻找这条线:
password [success=1 default=ignore] pam_unix.so obscure sha512
我错过了什么或做错了什么?
解决方案
你错过了一个命令。尝试在末尾添加 jus 字符 p :
sed /password\s[success=\d\sdefault=ignore]\spam_unix.so\sobscure\s+sha512/p' testfile.txt
如果您在某些编程语言中使用正则表达式,通常您需要编写模式并通过库中的其他方法使用它。像 sed 或 awk 这样的工具需要一个模式,也可以提供关于你想用这个模式做什么的信息。外汇:
- /p 打印传递的字符串
- /s 替换字符串
推荐阅读
- python - json.load() 函数不起作用 - Python
- c++ - 为什么不调用模板化的复制构造函数?
- python - TypeError: Iterable command_prefix 或从 get_prefix 返回的列表必须只包含字符串,而不是 Cursor | 不和谐.py
- android - (Kotlin) 在 fragmentList 项上设置 OnclickListener
- matlab - 使用 arrayfun 或其他方式创建动态 matlab 函数
- c# - 如何在逻辑层访问 ClaimsIdentity
- python - 在 def 中找不到文本变量
- python - MoviePy write_videofile 需要几个小时
- python - 在 Python 中更新列表列表中的特定列表
- web-crawler - 我的 robots.txt 文件中的以下语法是否会阻止所有爬虫将我的网站编入索引?