Скрипт Bash, который проверяет между 2 CSV-файлами, старыми и новыми. Чтобы проверить, что в новом файле количество строк содержит содержимое, которое составляет x% от старых файлов? - PullRequest
0 голосов
/ 27 октября 2019

На данный момент я пишу скрипт для подсчета количества строк для двух файлов.

Затем я ставлю это условие, если оно больше старого.

Тем не менее, я не уверен, как сравнить его на основе процентного содержания старых файлов.

У меня есть лучший способ разработать сценарий.

#!/bin/bash

declare -i new=$(< "$(ls -t file name*.csv | head -n 1)" wc -l)
declare -i old=$(< "$(ls -t file name*.csv | head -n 2)" wc -l)

echo $new
echo $old

if [ $new -gt $old ];
then
echo "okay";
else
echo "fail";

1 Ответ

0 голосов
/ 27 октября 2019

Если вам нужно проверить x diff max line, вы можете посчитать количество строк <в выводе diff. Напомним, что diff будет выглядеть так: </p>

+ diff node001.html node002.html
2,3c2,3
< 4
< 7
---
> 2
> 3

Так что код будет выглядеть так:

old=$(wc -l < file1)
diff1=$(diff file1 file2 | grep -c '^<')
pct=$((diff1*100/(old-1)))
   # Check Percent
if [ "$pct" -gt 60 ] ; then
   ...
fi
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...