标签: file-comparison

通过命令行在现有meld实例中打开新选项卡

有没有办法在现有的meld实例中使用命令行(如终端)或以编程方式启动新文件比较.


例如,以下两个命令启动两个实例 meld

$ meld ./1/a1.txt ./2/a2.txt &
$ meld ./3/a3.txt ./4/b4.txt &
Run Code Online (Sandbox Code Playgroud)

但是,我更喜欢在不同选项卡中的同一实例中打开文件比较.我不知道如何获得它,但我可以说明我的意思.

我假设可以修改第二个命令(meld ./3/a3.txt ./4/b4.txt &).例如,它可以帮助一些未知的选项,

$ meld --some-option-to-open-in-tab ./3/a3.txt ./4/b4.txt &
Run Code Online (Sandbox Code Playgroud)

或者也许可以编写一些应用程序来添加文件比较到现有的实例 meld

$ MyMeld ./3/a3.txt ./4/b4.txt &
Run Code Online (Sandbox Code Playgroud)

command-line meld file-comparison

2
推荐指数
1
解决办法
1146
查看次数

vscode中有文件比较的API吗

由于文件比较可以使用至少几种我知道的方式从 vscode 执行:

  1. 代码--diff file1 file2
  2. 命令选项板:“文件:将活动文件与...进行比较”

我想知道是否可以有一个 api 来比较我可以在扩展中使用的两个文件?但我在官方页面上找不到它。也许已经在进行中/计划中了?

file-comparison visual-studio-code vscode-extensions

2
推荐指数
1
解决办法
1502
查看次数

代码运行缓慢 - python 中的性能问题

我的文件有 4 列,其中有分隔值。我只需要第一列,所以我读取了文件,然后将该行拆分,分隔并将其存储在一个名为first_file_list 的列表变量中。

我有另一个文件,其中有 6 列,其中包含分隔值。我的要求是读取文件第一行的第一列,并检查字符串是否存在于名为first_file_list 的列表中。如果存在,则将该行复制到新文件中。

我的第一个文件大约有。600 万条记录,第二个文件大约有 600 万条记录。450 万条记录。只是为了检查我的代码的性能而不是 450 万条,我只在第二个文件中放入了 100k 条记录,并且处理 100k 条记录代码大约需要 100000 条记录。2.5小时。

以下是我的逻辑:

first_file_list = []

with open("c:\first_file.csv") as first_f:
    next(first_f)  # Ignoring first row as it is header and I don't need that
    temp = first_f.readlines()
    for x in temp:
        first_file_list.append(x.split(',')[0])
first_f.close()

with open("c:\second_file.csv") as second_f:
    next(second_f)
    second_file_co = second_f.readlines()
second_f.close()

out_file = open("c:\output_file.csv", "a")
for x in second_file_co:
    if x.split(',')[0] in first_file_list:
        out_file.write(x)
out_file.close()
Run Code Online (Sandbox Code Playgroud)

您能否帮助我了解我在这里做错了什么,以至于我的代码需要这么多时间来比较 100k 记录?或者你能建议更好的方法在Python中做到这一点吗?

python list file-comparison filecompare python-3.x

2
推荐指数
1
解决办法
190
查看次数

文件夹与 Beyond Compare 脚本的比较

我想要一个 Beyond Compare 脚本来比较两个文件夹的文件内容并生成一个文本报告。我怎样才能做到这一点?使用文本报告仅比较两个文件。文件夹报告不比较文件内容。

谢谢

beyondcompare file-comparison beyondcompare3

1
推荐指数
1
解决办法
6383
查看次数

如何比较两个巨大的文本文件(每个超过50GB)?

我有2个巨大的文本文件,想找到它们之间的区别?什么是快速命令/实用程序/或脚本来完成这项工作?

我尝试使用unix diff但是,它失败了巨大的文件.它告诉我"Permission Denied"

此外,我尝试unix bdiff(因为我读到这对大文件有好处)但是,我没有完成测试,因为它告诉我"bdiff: command not found"

另外,我尝试windows FC(文件比较),但是,我不知道如何在新的文本文件中显示输出.cmd中的结果输出我无法理解.

任何建议都会对我有所帮助.请帮我解决这个问题.

非常感谢.

unix bash diff text-files file-comparison

1
推荐指数
1
解决办法
9963
查看次数

使用 awk/diff/sed/grep 从文件进行比较时打印不匹配的值

我试图从两个文件中打印一些不匹配的字符串,其中在我的第一个文件中有一些整数值的字符串用空格分隔,我的第二个文件也有一些字符串值与第一个文件中的一些字符串值匹配,但是前面没有指定任何整数。

使用以下awkdiff命令我试图用时第二个比较让我的第一个文件的无与伦比的数据。

使用awk它会产生第一个文件的内容,基本上它会打印传递给awk命令的最后一个参数的内容。

awk -F, 'FNR==NR {a[$1];next} !($0 in a)' f2 f1
Run Code Online (Sandbox Code Playgroud)

使用diff它会产生第二个文件的内容,这里它将打印传递的第一个参数的内容。

diff --changed-group-format='%<' --unchanged-group-format='' f2 f1
Run Code Online (Sandbox Code Playgroud)

f1

papaya   10
apple    23
Moosumbi 44
mango    32
jackfruit 15
kiwi  60
orange 11
strawberry 67
banana 99
grapes 21
dates 6
Run Code Online (Sandbox Code Playgroud)

f2

apple
mango
kiwi
strawberry
Run Code Online (Sandbox Code Playgroud)

预期结果

papaya   10
Moosumbi 44
jackfruit 15
orange 11
banana 99
grapes 21
dates 6
Run Code Online (Sandbox Code Playgroud)

diff awk grep sed file-comparison

1
推荐指数
1
解决办法
36
查看次数

在批处理脚本中比较两个文件

我试图以这种方式比较两个文件,文件1的每一行将与文件2的每一行进行比较,如果没有找到匹配,则将该行写入单独的文件.

下面是我写的代码,但它没有按预期工作,

@echo on
cd path
for /f %%a in (file1.txt) do (
for /f %%b in (file2.txt) do (
if %%a==%%b
(
echo lines are same
) else (
echo %%a >> file3.txt
)
)
)
Run Code Online (Sandbox Code Playgroud)

我收到一个错误说,命令的语法不正确.请帮我解决一下这个.

batch-file file-comparison

0
推荐指数
1
解决办法
1万
查看次数

用于逐行比较2个文件的脚本

我有两个文本文件:

FILE1.TXT

dadads 434 43 {"4fsdf":"66db1" fdf1:"5834"}
gsgss 45 0 {"gsdg":"8853" sgdfg:"4631"}
fdf 767 4643 {"klhf":"3455" kgs:"4566"}
.  
.
Run Code Online (Sandbox Code Playgroud)

FILE2.TXT

8853
6437437567
36265
4566
.
.
Run Code Online (Sandbox Code Playgroud)

输出可以是两个文件

Match.txt

gsgss 45 0 {"gsdg":"8853" sgdfg:"4631"}
fdf 767 4643 {"klhf":"3455" kgs:"4566"}
Run Code Online (Sandbox Code Playgroud)

Non_Match.txt

dadads 434 43 {"4fsdf":"66db1" fdf1:"5834"}
Run Code Online (Sandbox Code Playgroud)

有人可以帮我写这个bash脚本吗?

如果它有帮助,我想我在这里有逻辑:

 for (rows in File1.txt) {
   bool found = false;
    for (id in File2.txt) {
      if (row contains id) {
      found = true;
      echo row >> Match.txt
      break;
     }
    }
   if (!found) {
      echo row …
Run Code Online (Sandbox Code Playgroud)

linux bash shell file file-comparison

0
推荐指数
1
解决办法
417
查看次数