我想将匹配特定模式的行从file1移动到file2。类似于Windows中从一个文件剪切和粘贴到另一个的操作示例假设我想从file1中剪切所有包含bar的行并将其粘贴到新创建的file2输入:文件1blafooblablabarblablaaaablablabarblablafoobla处理后的期望输出:文件1blafooblablaaaablablafoobla文件2blabarblablabarbla我尝试过的grep创建所需的file2但不修改file1grep'bar'file1>file2sed-i修改所需的file1但不创建file2sed-i'/bar/d'file1如果
如果行以另一个字符串开头,我如何使用sed替换文件中的字符串?例如,替换这一行:connection=sqlite://keystone:[YOURPASSWORD]@[YOURIP]/keystone用这一行:connection=mysql://keystone:password@10.1.1.10/keystone 最佳答案 回答:sed'/^start_string/s/search_string/replace_string/'信息在http://www.gnu.org/software/sed/manual/sed.ht
如果行以另一个字符串开头,我如何使用sed替换文件中的字符串?例如,替换这一行:connection=sqlite://keystone:[YOURPASSWORD]@[YOURIP]/keystone用这一行:connection=mysql://keystone:password@10.1.1.10/keystone 最佳答案 回答:sed'/^start_string/s/search_string/replace_string/'信息在http://www.gnu.org/software/sed/manual/sed.ht
我希望得到您关于如何对大文件(数百万行或数百万行)进行子集化的建议/帮助。例如,(1)我有大文件(数百万行,制表符分隔)。我想要此文件的一个子集,其中只有从10000到100000的行。(2)我有大文件(数百万列,制表符分隔)。我想要此文件的一个子集,其中只有从10000到100000的列。我知道有head、tail、cut、split和awk或sed等工具。我可以用它们做简单的子集化。但是,我不知道该怎么做。您能给点建议吗?提前致谢。 最佳答案 过滤行很容易,例如使用AWK:catlargefile|awk'NR>=10000&&
我希望得到您关于如何对大文件(数百万行或数百万行)进行子集化的建议/帮助。例如,(1)我有大文件(数百万行,制表符分隔)。我想要此文件的一个子集,其中只有从10000到100000的行。(2)我有大文件(数百万列,制表符分隔)。我想要此文件的一个子集,其中只有从10000到100000的列。我知道有head、tail、cut、split和awk或sed等工具。我可以用它们做简单的子集化。但是,我不知道该怎么做。您能给点建议吗?提前致谢。 最佳答案 过滤行很容易,例如使用AWK:catlargefile|awk'NR>=10000&&
我有一个平面文件,其中多次出现包含单引号的字符串,例如hari的和leader的。我想用空格替换所有出现的单引号,即hari's到haris的所有出现leader's到leaders的所有出现我试过了sed-e's/"'"//g'myfile.txt和sed-e's/"'"/""/g'myfile.txt但他们没有给我预期的结果。 最佳答案 尽量使sed命令简单。否则,您稍后阅读时会对自己写的内容感到困惑。#!/bin/bashsed"s/'//g"myfile.txt 关于linux-
我有一个平面文件,其中多次出现包含单引号的字符串,例如hari的和leader的。我想用空格替换所有出现的单引号,即hari's到haris的所有出现leader's到leaders的所有出现我试过了sed-e's/"'"//g'myfile.txt和sed-e's/"'"/""/g'myfile.txt但他们没有给我预期的结果。 最佳答案 尽量使sed命令简单。否则,您稍后阅读时会对自己写的内容感到困惑。#!/bin/bashsed"s/'//g"myfile.txt 关于linux-
我只想获取可能会或可能不会gzip的文件的编号。但是,sed中的正则表达式似乎不支持?。这是我尝试过的:echo'file_1.gz'|sed-n's/.*_\(.*\)\(\.gz\)?/\1/p'什么也没有返回。然后我在被分析的字符串中添加了一个?:echo'file_1.gz?'|sed-n's/.*_\(.*\)\(\.gz\)?/\1/p'得到:1那么,大多数正则表达式中使用的?似乎在sed中不受支持,对吧?那么,我只想为file_1和file_1.gz提供1。如果执行时间很关键,在bash脚本中执行此操作的最佳方法是什么? 最佳答案
我只想获取可能会或可能不会gzip的文件的编号。但是,sed中的正则表达式似乎不支持?。这是我尝试过的:echo'file_1.gz'|sed-n's/.*_\(.*\)\(\.gz\)?/\1/p'什么也没有返回。然后我在被分析的字符串中添加了一个?:echo'file_1.gz?'|sed-n's/.*_\(.*\)\(\.gz\)?/\1/p'得到:1那么,大多数正则表达式中使用的?似乎在sed中不受支持,对吧?那么,我只想为file_1和file_1.gz提供1。如果执行时间很关键,在bash脚本中执行此操作的最佳方法是什么? 最佳答案
如何使用简单运行的sed将foo.替换为foo_sed's/foo./foo_/g'file.php不起作用。 最佳答案 转义。:sed's/foo\./foo_/g'file.php例子:~$cattest.txtfoo.bar~$sed's/foo\./foo_/g'test.txtfoo_bar 关于linux-出现点和下划线时用sed搜索和替换,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/