将awk模式应用于具有相同名称的所有文件,将每个文件输出到新文件(代码片段)

author author     2022-12-28     480

关键词:

我试图以递归方式在目录中查找具有相同名称的所有文件,对它们应用awk模式,然后输出到每个文件都存在该文件的新更新版本的目录。

我认为使用for循环比使用xargs更好,但我不知道如何使这个工作...

for f in $(find。-name FILENAME.txt); do awk -F“\(corr \)”'print $ 1,$ 2,$ 3,$ 4'./ FINILAME.txt> ./newFILENAME.txt $ f; DONE

最后,我希望能够使用-F一次性从文件中删除多个字符串,但也不确定如何使用awk执行此操作。

还有一种方法可以删除“(cor *)”,其中*表示通配符?不确定如何保持括号的转义序列

谢谢!

答案

要使用(corr*)作为字段分隔符,其中*是一个glob样式的通配符,请尝试:

awk -F'[(]corr[^)]*[)]' 'print $1,$2,$3,$4'

例如:

$ echo '1(corr)2(corrTwo)3(corrThree)4' | awk -F'[(]corr[^)]*[)]' 'print $1,$2,$3,$4'
1 2 3 4

要将此命令应用于名为FILENAME.txt的当前目录下的每个文件,请使用:

find . -name FILENAME.txt -execdir sh -c 'awk -F'\''[(]corr[^)]*[)]'\'' '\''print $1,$2,$3,$4'\'' "$1" > ./newFILENAME.txt' Awk  \;

Notes

不要使用:

for f in $(find . -name FILENAME.txt ); do

如果任何文件或目录中包含空格或其他shell-active字符,结果将是一个令人不快的惊喜。

Handling both parens and square brackets as field separators

考虑这个测试文件:

$ cat file.txt
1(corr)2(corrTwo)3[some]4

要消除这两种类型的分隔符并打印前四列:

$ awk -F'[(]corr[^)]*[)]|[[][^]]*[]]' 'print $1,$2,$3,$4' file.txt
1 2 3 4

自动创建一个视图,该视图将所有其他具有相同名称但不同前缀和不同模式的视图联合起来

...视图,该视图将所有其他具有相同名称但不同前缀和不同模式的视图联合起来【英文标题】:Automagicallycreateaviewthatunionsallotherviewswiththesamenamebutdifferentprefixanddifferentschema【发布时间】:2020-09-1814:32:19【问题描述】:我有一个包含... 查看详情

将 :hover 样式应用于具有相同类的所有元素

】将:hover样式应用于具有相同类的所有元素【英文标题】:Apply:hoverstylingtoallelementsthathavethesameclass【发布时间】:2017-10-3003:36:03【问题描述】:我正在尝试对所有具有dialog-btn类的button标记应用悬停效果。我试过.dialog-btn:hoverbackgr... 查看详情

如何将 Git 补丁应用于具有不同名称和路径的文件?

】如何将Git补丁应用于具有不同名称和路径的文件?【英文标题】:HowtoapplyaGitpatchtoafilewithadifferentnameandpath?【发布时间】:2013-05-0717:44:05【问题描述】:我有两个存储库。一方面,我对文件./hello.test进行了更改。我提交更改并... 查看详情

将渐变层添加到具有相同名称 Xcode/Swift 的所有按钮

...8【问题描述】:对于Xcode/Swift来说太新了,我正在为我的应用程序中不同视图控制器中的一堆按钮添加一个渐变层。我想知道是否有一种方法可以一次将所有具有特定名称的按钮作为目标,而不是将我的代码单独 查看详情

如何将引导类应用于 css 文件中的每个相同的 HTML 元素?

】如何将引导类应用于css文件中的每个相同的HTML元素?【英文标题】:HowtoapplyabootstrapclasstoeverysameHTMLelementincssfile?【发布时间】:2018-05-2605:36:21【问题描述】:例如,如果我想将引导类“pull-right”应用于每个标签,我需要将类... 查看详情

如何将滤色器应用于具有所有子项的视图

】如何将滤色器应用于具有所有子项的视图【英文标题】:Howtoapplyacolorfiltertoaviewwithallchildren【发布时间】:2012-06-1716:57:46【问题描述】:如何使包含许多不同项目的视图统一变灰-ImageViews、TextViews、背景图像。我必须单独将每... 查看详情

将相同的功能应用于火花数据框行的所有字段

】将相同的功能应用于火花数据框行的所有字段【英文标题】:Applysamefunctiontoallfieldsofsparkdataframerow【发布时间】:2015-12-0208:22:33【问题描述】:我有大约1000列(可变)列的数据框。我想让所有值都大写。这是我想到的方法,你... 查看详情

将具有相同 iPhone 应用名称的 iPad 应用上传到 Appstore

】将具有相同iPhone应用名称的iPad应用上传到Appstore【英文标题】:UploadingiPadappwiththesameiPhoneappnametotheAppstore【发布时间】:2012-04-1615:30:15【问题描述】:伙计们。我在AppStore上有一个iPhone应用程序。我打算将iPad版本(非通用)上... 查看详情

如何将不同的模式应用于单个数据集中的 csvs?

】如何将不同的模式应用于单个数据集中的csvs?【英文标题】:Howtoapplydifferentschemastocsvswithinasingledataset?【发布时间】:2021-12-1403:38:38【问题描述】:我从一个大的csv压缩文件开始,我在PalantirFoundry中解压缩了它。我现在有一个... 查看详情

合并/合并几个PDF文件[重复]

...00个pdf文件,名称相同。我需要合并/合并第三个文件夹中具有相同名称的所有PDF文件,即生成的文件夹(文件夹3)将包含1000个文件,每个文件将是文件夹1和文件夹2文件的合并形式,具有相同的名称。【问题讨论】:【参考 查看详情

如何将相同的 SHA1 用于具有不同包名称的应用程序,作为另一个应用程序?

】如何将相同的SHA1用于具有不同包名称的应用程序,作为另一个应用程序?【英文标题】:HowcanIusethesameSHA1foranappthathasdifferentpackage-name,asanotherone?【发布时间】:2021-03-3101:12:07【问题描述】:背景我使用公共共享代码开发2个不... 查看详情

将功能应用于每个组,其中组被拆分为多个文件,而不连接所有文件

】将功能应用于每个组,其中组被拆分为多个文件,而不连接所有文件【英文标题】:Applyfunctiontoeachgroupwherethegrouparesplittedinmultiplefileswithoutconcatenatingallthefiles【发布时间】:2021-10-0404:43:20【问题描述】:我的数据来自BigQuery,以... 查看详情

将多个csv文件导入具有相同名称的变量(代码片段)

一个目录中有多达1440个文件可供Python读取。文件名的格式为HMM_1_1_.csvHMM_1_2_.csvHMM_1_3_.csvHMM_1_4_.csv...而对于HMM_i_j_.csv,i从1到144,j从1到10。如何将它们中的每一个导入名为HMM_i_j的变量,类似于其原始名称?例如,HMM_140_8_.csv应该... 查看详情

应用所有模板

...能更多级别)我想要一种方法,从主xslt文件调用与特定模式匹配的所有导入/包含的模板(它们具有相同的名称、相同的模式、相同的匹配或其他内容)。我希望能够做到这一点,而无需对特定的导入列表进行硬编码(即,如果 查看详情

NANT 复制所有具有相似名称的文件

】NANT复制所有具有相似名称的文件【英文标题】:NANTcopyallfileswithsimilarname【发布时间】:2012-06-1115:42:23【问题描述】:我正在将现有的批处理脚本转换为nant脚本。批处理文件最初进行了这个调用,它似乎将所有具有相同前缀的... 查看详情

使 ESLint 仅将规则应用于某些文件名模式

】使ESLint仅将规则应用于某些文件名模式【英文标题】:MakeESLintapplyrulestoonlycertainfilenamepatterns【发布时间】:2015-12-0720:24:05【问题描述】:是否可以将ESLint配置为仅将规则应用于名称与特定模式匹配的文件?我知道目录中可以... 查看详情

将模式名称作为变量传递给查询的最佳方法

】将模式名称作为变量传递给查询的最佳方法【英文标题】:Bestwaytopasstheschemanameasavariabletoaquery【发布时间】:2015-03-1308:50:48【问题描述】:我有一个PlayFramework服务器(使用Anorm),它针对具有多个架构的数据库进行操作,所有... 查看详情

如何将具有不同名称和相同架构的 Excel 文件导入数据库?

】如何将具有不同名称和相同架构的Excel文件导入数据库?【英文标题】:HowtoimportExcelfileswithdifferentnamesandsameschemaintodatabase?【发布时间】:2011-05-3116:23:59【问题描述】:如何从每次具有不同文件名的excel源文件将数据导入SSIS中... 查看详情