我试图找到这三行:
<!--
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
-->
Run Code Online (Sandbox Code Playgroud)
并将它们替换为:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
Run Code Online (Sandbox Code Playgroud)
当我尝试
sudo sed -i 's:<!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />:' /myfile.xml
Run Code Online (Sandbox Code Playgroud)
它没有找到它,我也尝试将 \n 放入其中,但它仍然不起作用:
sudo sed -i 's:<!--\n <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />\n -->:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />:' /myfile.xml
Run Code Online (Sandbox Code Playgroud)
这些不会引发任何错误,只是不会取消注释该行。任何建议都会有所帮助谢谢!
CentOS
有没有一种简单的方法可以从数据流中转换 HTML 特殊实体?我将数据传递给 bash 脚本,有时该数据包含特殊实体。例如:
“测试”& 测试 $ 测试!测试@#$%^& *
我不确定为什么有些字符显示正常而其他字符显示不正常,但不幸的是,我无法控制传入的数据。
我想我可以在这里使用 SED,但这似乎很麻烦,并且可能容易出现误报。是否有我可以通过管道传输的 Linux 命令专门用于解码此类数据?
我想http://cdn1.domain.com用https://cdn1.domain.com200 个 .html 文件替换,但我不知道如何用 sed 做到这一点。
有人可以帮我解决这个问题吗?
sed -i '/http:/\/\cdn1/http:/\/\cdn1/' cum-comand.html
sed: -e expression #1, char 8: unknown command: `\'
sed -i '/http:\/\/cdn1/http:\/\/cdn1/' cum-comand.html
sed: -e expression #1, char 17: extra characters after command
Run Code Online (Sandbox Code Playgroud) 我知道
ps ax
Run Code Online (Sandbox Code Playgroud)
返回 pid
1 ? Ss 0:01 /sbin/init
2 ? S< 0:00 [kthreadd]
3 ? S< 0:00 [migration/0]
Run Code Online (Sandbox Code Playgroud)
我所需要的只是清理这些字符串,但我无法使用 sed 来完成,因为我无法编写正确的正则表达式。你可以帮帮我吗?
这是参考另一个问题:如何使用 robocopy 递归列出超过特定大小的所有文件?
我想解析命令的输出(或 cat 日志文件)并找到一个字符串值,将其转换为整数,然后查看该整数值是否大于给定的整数。
例如,给定以下行:
*EXTRA File 78223 C:\_Google.Enterprise.Contract.2010-06-01.pdf
Run Code Online (Sandbox Code Playgroud)
我想比较“78223”和“10485760”。这可以用 grep 或 sed 吗?
谢谢!
例如,我有一个包含此条目的日志文件:
[2012 年 8 月 8 日星期三 11:39:41] [错误] [客户端 155.94.70.224] ModSecurity:[文件“/etc/httpd/modsecurity.d/rules/base_rules/modsecurity_crs_20_protocol_violations.conf”] [行“271”] [ id "960020"] [rev "2.2.5"] [msg "Pragma Header 需要 Cache-Control Header for HTTP/1.1 请求。"] [severity "NOTICE"] [tag "RULE_MATURITY/5"] [tag "RULE_ACCURACY/ 7"] [标签 " https://www.owasp.org/index.php/ModSecurity_CRS_RuleID-960020 "] [标签 "PROTOCOL_VIOLATION/INVALID_HREQ"] [标签 " http://www.bad-behavior.ioerror.us/文档/它是如何工作的/ “] 警告。REQUEST_PROTOCOL 处的字符串匹配“HTTP/1.1”。[主机名“webmail.white-art.co.uk”] [uri“/horde/themes/graphics/tree/plusonly.
我想提取所有以字符开头[并以]. 我可以使用 cut 或 awk 使用单个分隔符进行提取,但我需要在开始[和结束之间提取字符串]。如何实现呢?
例如,我需要提取:
“[标签“RULE_ACCURACY/7”]”
和
“[严重性“注意”]”
从日志中。
我找到了一个解决方案,首先我必须通过在每个之后添加新行]然后使用 grep 搜索所需的字符串来分解日志。有没有更好的方法来做到这一点?
以下效果很好:
phpmemory_limit=256M #or what ever you want it set to
sed -i 's/memory_limit = 16M/memory_limit = '${phpmemory_limit}'/' /etc/php5/apache2/php.ini
Run Code Online (Sandbox Code Playgroud)
如果 memory_limit 设置为 16M,但我发现在某些发行版中它不会默认为 16M,而是默认为 32M。所以我的问题是如何为此拥有 SED 帐户并将任何数字替换为 ${phpmemory_limit}?
如何使用 sed、grep 或其他程序删除文件中标记文本块的所有实例?
如果我有一个包含以下内容的文件:
随机
文本
// START TEXT
内部
文本
// END TEXT
更
随机
// START TEXT
asdf
// END TEXT
文本
如何删除开始/结束行中的所有文本块,生成以下内容?
随机
文本
更多
随机
文本
我正在尝试使用一个 sed 命令删除=和]字符:
# echo "A=[A]" | sed s'/[=\]]/ /g'
A=[A]
Run Code Online (Sandbox Code Playgroud)
这个语法有问题吗?
我期望从 sed 得到以下结果
# echo "A=[A]" | ....sed
A [A
Run Code Online (Sandbox Code Playgroud) 我有一个 226GB 的日志文件,我想把split它分成几块以便于xz阅读。问题是我的可用空间只剩下 177GB 的空间。
有没有办法split在不保留原始文件的额外副本的情况下将文件分成一半或分成N个块?
$ split myFile.txt
$ ls -halF
-rw-r--r-- 1 user group 35 Dec 29 13:17 myFile.txt
-rw-r--r-- 1 user group 8 Dec 29 13:18 xaa
-rw-r--r-- 1 user group 3 Dec 29 13:18 xab
-rw-r--r-- 1 user group 5 Dec 29 13:18 xac
-rw-r--r-- 1 user group 10 Dec 29 13:18 xad
-rw-r--r-- 1 user group 8 Dec 29 13:18 xae
-rw-r--r-- 1 user group 1 Dec …Run Code Online (Sandbox Code Playgroud)