当前位置: 首页 > 知识库问答 >
问题:

使用SED更改txt中对象的名称

黄宏旷
2023-03-14

我有一个超文本标记语言的小项目。构建超文本标记语言的脚本如下:

#!/bin/bash

summe=$(find /home/info/PDF -type f | wc -l)
array=()
find /home/info/PDF -type f -print0 >tmpfile
while IFS=  read -r -d $'\0'; do
array+=("$REPLY")
done <tmpfile
if [ $summe>0 ]
    then
            rm -f /var/www/html/index.html
            cat header.txt > /var/www/html/index.html
            for (( i=0; i<$summe; i++))
            do
                    cat testcontent.txt >> /var/www/html/index.html
            done
            cat footer.txt >> /var/www/html/index.html
fi

使用$summe,我计算目录中有多少PDF,以便在以后的Nginx上显示它们。在本例中,我有3个PDF,然后内容片段将在我的HTML中设置3次。现在我的问题是PDF的名称不同,我不知道如何使用SED正确更改它们。

内容片段:

<div class="content">
    <object data="chungus.pdf" style="width:1920px;height:1080px"</object>
  </div>

我希望这是足够的信息,为我的英语不好感到抱歉,我还在学习。

共有1个答案

尉迟正平
2023-03-14

在bash手册中的bash条件表达式中,注意变量周围的双引号和

[ "$summe" > 0 ]

这是一个词典测试

string1

          True if string1 sorts after string2 lexicographically.

用于位置兼容性的单支架测试

[ "$summe" -gt 0 ]

否则,使用bash双括号可以删除双引号

[[ $summe -gt 0 ]]

否则有算术表达式(双括号),这里空格不重要,可以省略$

((summe>0))

 类似资料:
  • 我试图使用Jackson将JSON blob转换为实例化Java类对象的列表。只要JSON保持不变,这就相当简单了。但是,从服务器返回的每个JSON对象都以唯一的UUID开始,这意味着每个对象都是不同的。是这样的: 请注意,每个JSON对象都以不同的名称开头。如果每个JSON对象都使用相同的名称(如“数据”)而不是UUID启动,那么这将是一个骗局。现在我得到了以下异常: JAVAlang.Runt

  • @PayloadRoot(命名空间=”http://munis.ws.uz/“,localPart=“CheckPaymentRequest”)@ResponsePayload public CheckPaymentResponse processCheckPaymentRequest(@RequestPayment@WebParam(name=“checkPayment”)CheckPaymen

  • Hi下面是我的bash脚本。它需要一个源文件和一个令牌文件,令牌文件包含servicename:用法我必须在源文件中逐行查找servicename,如果找到,然后计算内存使用量,然后用-Xmx\d{1,3}m更改-Xmxm。在下面的脚本粗线解释做什么多简单你可以先下站问题从下面的小部分脚本 那么上面的错误是什么

  • 我最终得到。 我是否可以模拟并且在测试时仍然得到消息错误?

  • 问题内容: 令V为一个具有单个属性的类,该属性名为K以及其getter和setters。 如果执行该怎么办: 据我所知,这应该会引起某种问题,因为映射键应该是不变的。这里会发生什么? 编辑:认为该键不是字符串,而是如下文所述的可变对象。 问题答案: 这个问题的标题具有误导性-您没有更改map键,就像在更改 用作map key的对象时一样 。当您说时,您将创建一个聚合两个独立值的 映射条目 : ke

  • 我需要在test.txt文件的第4行插入命令“new file”。 已尝试;我可以看到更改后的文件输出,但当我再次执行时,更改就消失了。