Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows Shell脚本:从差异输出中删除信息_Windows_File_Shell_Diff - Fatal编程技术网

Windows Shell脚本:从差异输出中删除信息

Windows Shell脚本:从差异输出中删除信息,windows,file,shell,diff,Windows,File,Shell,Diff,所以,我的节目: #!/bin/bash OIFS="$IFS" IFS=$'\n' find teste1 -type f | while read -r firstResult do find teste2 -type f | while read -r secondResult do firstName=${firstResult##*[/|\\]} secondName=${secondResult##*[/|\\]} if [[ "$(

所以,我的节目:

#!/bin/bash

OIFS="$IFS"
IFS=$'\n'

find teste1 -type f | while read -r firstResult

do

  find teste2 -type f | while read -r secondResult

   do

    firstName=${firstResult##*[/|\\]}
    secondName=${secondResult##*[/|\\]}

     if [[ "$( echo "$firstName" | tr [A-Z] [a-z])" == "$( echo "$secondName" | tr [A-Z] [a-z])" ]]; then
      echo "$firstResult" "$secondResult" >> equal.lst
     else
      echo "$firstResult" "$secondResult" >> notEqual.lst
     fi

      if [[ $firstName == $secondName ]]; then
       echo "$firstResult" "$secondResult" >> equal2.lst
      fi

   done

done

diff -2 equal.lst equal2.lst >> renamedFiles.lst
我在“diff”部分遇到了一些困难,因为“renamedFiles.lst”上的输出显示如下内容:

3d2 8d6
所以我的问题是:如何删除“3d2”和“8d6”部分?我有办法这样做吗?我想为这些差异创建一个报告,如果没有这些数字,它会“更干净”。我知道为什么会有数字,但有办法删除吗?

使用行格式指定所需的确切格式。例如:

diff -2 "--old-line-format=<%L" "--new-line-format=>%L" "--unchanged-line-format=" equal.lst equal2.lst
diff-2”--旧的行格式=%L”--未更改的行格式=“equal.lst equal2.lst
输出结果如下:

>new line
<old line
>新行

嗯,我试过你的方法,在Diff手册页上读到了关于行格式的内容,但每当我尝试使用行格式时,它只会输出如果它没有“-2”会输出的内容。我的意思是,它输出的比我想要的多得多。它不是将差异从第一个文件输出到第二个文件,而是将差异从两个文件输出到“重命名文件”中。我在Linux上这样做,所以我不知道所有的差异。您的
diff
usag消息是否表示它支持行格式?您的确切意思是什么?对不起,我对这个完全陌生。另外,我正在使用Windows:)不知道这对你有什么影响:呸!我解决了。再次阅读你的代码,我发现我做错了什么。非常感谢你的帮助!