在bash中的.ods文件中执行条件更改

在bash中的.ods文件中执行条件更改,bash,awk,sed,ods,Bash,Awk,Sed,Ods,如何在.ods文档中进行条件更改?我有两个专栏。其中一个存储字符串,第二个存储值。我想用我拥有的特定字符串搜索文档,比如“xyz”。如果这与第一列中显示的任何字符串匹配,我希望从同一行的单元格中减去值1,但从第二列中减去。.ods文档中的数据由不同的相邻单元格分隔(是否为制表符?) 作为一个例子,考虑如下: xyz 23 xxy 42 xzz 76 如果我有字符串“xxy”,我希望bash脚本更新.ods文件,使其看起来如下: xyz 23 xxy 41 xzz 76 现在,我正在搜索的字符串存

如何在.ods文档中进行条件更改?我有两个专栏。其中一个存储字符串,第二个存储值。我想用我拥有的特定字符串搜索文档,比如“xyz”。如果这与第一列中显示的任何字符串匹配,我希望从同一行的单元格中减去值1,但从第二列中减去。.ods文档中的数据由不同的相邻单元格分隔(是否为制表符?)

作为一个例子,考虑如下:

xyz 23
xxy 42
xzz 76

如果我有字符串“xxy”,我希望bash脚本更新.ods文件,使其看起来如下:

xyz 23
xxy 41
xzz 76


现在,我正在搜索的字符串存储在一个单独的.txt文件中。我希望迭代.txt文件中的所有字符串,并重复执行.ods文件中描述的操作。在某些情况下,同一字符串可能多次出现。有什么帮助吗?

这应该是一条评论,但有点长

我正在搜索存储在文本文件中的数据


不是。MS Excel文件不是文本文件。它甚至不是一个文件,而是一个嵌入的文件系统,其中的内容封装在OLE中,或者最近作为一个树。虽然Unix上既有OLE解析器,也有XML解析器(我假设您希望在Linux/Unix/Posix上运行此解析器,因为您已经用bash、awk和sed标记了此解析器),但它只允许您访问数据存储的位置。您仍然需要对文件格式有详细的了解才能进行更改。虽然在bash中可以做到这一点,但在专用编程语言中要容易得多。有几个确实附带了用于处理Excel文件的库,但它们对文件格式的支持各不相同。或者,您可以使用其UNO API在openoffice中加载它。

这应该是一条注释,但有点长

我正在搜索存储在文本文件中的数据


不是。MS Excel文件不是文本文件。它甚至不是一个文件,而是一个嵌入的文件系统,其中的内容封装在OLE中,或者最近作为一个树。虽然Unix上既有OLE解析器,也有XML解析器(我假设您希望在Linux/Unix/Posix上运行此解析器,因为您已经用bash、awk和sed标记了此解析器),但它只允许您访问数据存储的位置。您仍然需要对文件格式有详细的了解才能进行更改。虽然在bash中可以做到这一点,但在专用编程语言中要容易得多。有几个确实附带了用于处理Excel文件的库,但它们对文件格式的支持各不相同。或者,您可以使用其UNO API在openoffice中加载它。

将要搜索的字符串位于.txt文件中。我想将这些字符串与Excel文件中的字符串进行匹配,并执行所述操作。我有两份不同的文件。一个是字符串列表(文本文件),另一个是字符串属性数量(Excel文件)。要搜索的字符串位于.txt文件中。我想将这些字符串与Excel文件中的字符串进行匹配,并执行所述操作。我有两份不同的文件。一个是字符串列表(文本文件),另一个是字符串属性(Excel文件)。UNIX工具处理的是文本文件,而不是Excel文件。您可以从Excel导出CSV,然后使用UNIX工具操作CSV,然后将结果导入Excel,但不能使用UNIX工具直接操作Excel文件。UNIX工具处理文本文件,而不是Excel文件。您可以从Excel导出CSV,然后使用UNIX工具操作CSV,然后将结果导入Excel,但不能使用UNIX工具直接操作Excel文件。