Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
请解释下面的unix代码_Unix_Sed - Fatal编程技术网

请解释下面的unix代码

请解释下面的unix代码,unix,sed,Unix,Sed,请解释上述命令 我无法理解此执行。给定的命令使用sed将某些字符替换为其他字符 其基本形式是 echo "1,a,20,000,aa,s" | sed 's/,\([^0]\)/|\1/g' **output 1|a|20,000|aa|s** 其中FIND和REPLACE是正则表达式。 末尾的g代表全球。这意味着不仅替换模式匹配查找的第一个匹配项,而且替换输入字符串中的所有匹配项 要使用正则表达式,请执行以下操作: 查找,\[^0]\n此模式匹配以a开头的所有两个字符串,后

请解释上述命令


我无法理解此执行。

给定的命令使用sed将某些字符替换为其他字符

其基本形式是

 echo "1,a,20,000,aa,s" | sed 's/,\([^0]\)/|\1/g'  
 **output  
 1|a|20,000|aa|s**  
其中FIND和REPLACE是正则表达式。 末尾的g代表全球。这意味着不仅替换模式匹配查找的第一个匹配项,而且替换输入字符串中的所有匹配项

要使用正则表达式,请执行以下操作:

查找,\[^0]\n此模式匹配以a开头的所有两个字符串,后面不跟0

替换|\1这等于一个两个字符的字符串,该字符串以|开头,后跟FIND中的第二个字符。\1会记住以前找到的匹配项

有关sed命令的详细概述,我建议您也阅读以下内容:

以及如何阅读正则表达式:


当然,如果上述网页对您没有启发,那么还有更多与此相关的网站。

Unix或sed?正确地标记你的问题。你不明白命令的哪一部分?分享你的研究有助于每个人。告诉我们您尝试了什么,以及为什么它不能满足您的需求。这表明你花了时间来帮助自己,它使我们避免重复显而易见的答案,最重要的是,它帮助你得到一个更具体和相关的答案!也看到
s/FIND/REPLACE/