如何在一行中字符串替换命令的结果?
How can I string replace results of a command in one line?
例如,假设我想在 ps aux | grep python
.
的输出中将子字符串 python
替换为 php
如何在一行中完成此操作?
ps aux | grep python | /python/php/
^--- totally made up
期望的输出是看到如下所示的字符串:script.python
到 script.php
。这与实际文件无关。这只是关于输出。我可以很容易地说用 f
.
替换所有 ph
你甚至不需要 grep
。您可以只使用 sed
:
ps aux | sed -n '/python/s/python/php/pg'
-n
会抑制正常输出
/python/
将搜索带有 python
的行
s/python/php/pg
将用 php
替换所有出现的 python
并打印替换的行
例如,假设我想在 ps aux | grep python
.
python
替换为 php
如何在一行中完成此操作?
ps aux | grep python | /python/php/
^--- totally made up
期望的输出是看到如下所示的字符串:script.python
到 script.php
。这与实际文件无关。这只是关于输出。我可以很容易地说用 f
.
ph
你甚至不需要 grep
。您可以只使用 sed
:
ps aux | sed -n '/python/s/python/php/pg'
-n
会抑制正常输出/python/
将搜索带有python
的行
s/python/php/pg
将用php
替换所有出现的python
并打印替换的行