我注意到目录中有很多文件,称为“sedAbCdEf”或类似文件。

  • 为什么创建这些文件?
  • 脚本运行后,它们有什么值(value)吗?
  • 我可以将这些文件发送到其他位置吗? /tmp/

  • 更新:

    我检查了脚本,直到找到一个可以制作文件的脚本。这是一些示例代码:
    #!/bin/bash
    a=1
    b=`wc -l < ./file1.txt`
    while [ $a -le $b ]; do
        for i in `sed -n "$a"p ./file1.txt`; do
            for j in `sed -n "$a"p ./file2.txt`; do
                sed -i "s/$i/\nZZ$jZZ\n/g" ./file3.txt
                c=`grep -c $j file3.txt`
                if [ "$c" -ge 1 ]
                then
                    echo $j >> file4.txt
                    echo "Replaced "$i" with "$j" "$c" times ("$a"/"$b")."
                fi
                    echo $i" not found ("$a"/"$b")."
                a=`expr $a + 1`
            done
        done
    done
    

    最佳答案

  • 为什么创建这些文件?
  • sed -i "s/$i/\nZZ$jZZ\n/g" ./file3.txt-i选项使sed将标准输出存储到临时文件中。sed完成后,它将重命名此临时文件以替换原始的file3.txt
    如果在运行sed时出了点问题,这些sedAbCdE临时文件将保留在那里。
  • 脚本运行后,它们有什么值(value)吗?

  • 您的旧文件未更改。通常没有。
  • 我可以将这些文件发送到其他位置吗?/tmp/?

  • 是的,您可以,请参见上文。

    编辑:请参阅this以进一步阅读。

    关于linux - sed为什么会留下很多文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9833518/

    10-12 00:43
    查看更多