Мы можем разбить
и отфильтровать файл...
split -l 20 --filter='command' input_file
Пример: разделить на части по 20 строк и выбрать одну случайную строку из каждой части (shuf -n 1
)
split -l 20 --filter='shuf -n 1' input_file
Команда sama (split) может использоваться для создания файла для каждого фрагмента:
split -l 20 input-file input-file-chunk-
создание входного-файла-чанка-aa
nput-файла-чанка-ab
и т. д.
Вы можете использовать:
grep -vFf file2 file1
Помните, что он по-прежнему удаляет строки, хотя он соответствует после запятой.
Простой трюк sed
может сделать это.
IFS='
' # If whitespaces exist in file 2
cat file2.txt | while read i; do
sed -i '/^'"$i"',/d' file1.txt
done