草庐IT

regex-compat

全部标签

regex - 如何在文件夹中的xml文件中grep一个词

我知道我可以使用grep在这样的文件夹中的所有文件中查找单词grep-rncore.但我的当前目录有很多子目录,我只想搜索当前目录及其所有子目录中存在的所有xml文件。我该怎么做?我试过了grep-rncore*.xml//Doesnotwork但它只搜索当前目录中的xml文件。它不会以递归方式执行。 最佳答案 试试--include选项grep-R--include="*.xml""pattern"/path/to/dir引用:GrepIncludeOnly*.txtFilePatternWhenRunningRecursiveM

regex - sed -E 和 sed -e 有什么区别

我正在处理一些旧代码,我发现我曾经使用过sed-E's/findText/replaceWith/g'#findTextwouldcontainaregex但我现在试试sed-e's/findText/replaceWith/g'它似乎在做同样的事情,是吗?我有点记得我这样做是有原因的,但我不记得了,做“mansed”并没有帮助,因为他们没有任何关于-Eonly-e的东西,这没有多大意义。-e,--expression=scriptAppendtheeditingcommandsinscripttotheendoftheeditingcommandscript.scriptmaycon

regex - 在 linux 目录中查找与模式匹配的文件数

我是Linux新手。我在linux中有一个目录,其中包含大约250,000个文件我需要找到与模式匹配的文件数。我尝试使用以下命令:ls-120061101-20131101_kh5x7tte9n_2010_*|wc-l我收到以下错误信息:-bash:/bin/ls:Argumentlisttoolong0请帮忙。提前致谢 最佳答案 为此使用find可能会更好:find.-name"pattern_*"-printf'.'|wc-m在您的具体情况下:find.-maxdepth1-name"20061101-20131101_kh5x

regex - Bash - 如何将每一行放在引号内

我想把每一行都放在引号内,比如:abcdefghijklmnopqrst转换为:"abcdefg""hijklmn""opqrst"如何在Bashshell脚本中执行此操作? 最佳答案 使用awkawk'{print"\""$0"\""}'inputfile使用纯bashwhilereadFOO;doecho-e"\"$FOO\""done其中inputfile将是一个包含不带引号的行的文件。如果您的文件有空行,awk绝对是最佳选择:awk'NF{print"\""$0"\""}'inputfileNF告诉awk仅当字段数大于零(行

regex - 从查找中排除文件类型的正则表达式

在linux中使用find命令时,可以添加一个-regex标志,使用emacsregualr表达式进行匹配。我想查找除.jar文件和.ear文件之外的所有文件。这种情况下的正则表达式是什么?谢谢 最佳答案 这里不需要正则表达式。您可以将find与-name和-not选项一起使用:find.-not-name"*.jar"-not-name"*.ear"上面的一个更简洁(但可读性较差)的版本是:find.!\(-name"*.jar"-o-name"*.ear"\) 关于regex-从查找

regex - 使用 sed 匹配模式并从该行删除到文件末尾

我正在尝试匹配来自管道输入和/或文件的模式,然后从匹配的行中删除到文件末尾,包括在内。我到处寻找,但似乎找不到适合我需要的表达方式。下面的表达式允许我删除到流的开头,包括匹配的模式:sed-e'1,/Files:/d'给定一些示例数据:BlahblahblahFoobarfoofooFiles:somefiles.tar.gz123somefiles.tar.gz123-----THISSTUFFISUSELESS-----BLEHBLEHBLEHBLEHBLEHBLEH运行上面的表达式会产生:Files:somefiles.tar.gz123somefiles.tar.gz123--

regex - 测试正则表达式工具(Linux/ubuntu)

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我搜索了有关正则表达式测试/学习工具的问题,但人们通常建议使用基于Windows的解决方案。我为ubuntu找到了一个:redit。但是,我想知道是否有更好的工具来完成这项工作。所以,事不宜迟Q:Whatisthebesttoolfor

c - OS X 是 Linux 可执行文件 "compatible"吗?

如果您在基于Linux的平台上用C语言编译程序,然后将其移植以使用MacOS库,是否可以运行?来自编译器的核心机器代码是否在Mac和Linux上都兼容?我问这个的原因是因为两者都是“基于UNIX的”所以我认为这是真的,但我不太确定。 最佳答案 不,Linux和MacOSX二进制文件不交叉兼容。一方面,Linux可执行文件使用一种称为ELF的格式.MacOSX可执行文件使用Mach-Oformat.因此,即使许多库通常在每个系统上单独编译,它们也无法以二进制格式移植。此外,Linux实际上并不是基于UNIX的。它确实与UNIX共享许多

regex - 如何使 "grep"从文件中读取模式?

假设有一个大文本文件,我想只打印与某些模式不匹配的行。显然,我可以使用egrep-v'patter1|pattern2|pattern3。现在如果所有这些模式都在一个文本文件中怎么办?使egrep从文件中读取模式的最佳方法是什么? 最佳答案 grep-v-fpattern_file 关于regex-如何使"grep"从文件中读取模式?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

regex - 在 Linux 中删除文件名中的空格

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭9年前。Improvethisquestion我在不同的文件夹中有数百个jpg文件,如下所示:304775105_01.jpg304775105_03.jpg304775105_05.jpg304775105_07.jpg304775105_02.jpg304775105_04.jpg304775105_06.jpg基本上,我需要删除SPACES。我已经知道将空格更改为下划线的命令:$rename"s//_/g"*但在这种情况下我不需要下划