Сравните содержимое двух каталогов на Mac с помощью diff
Если вы хотите увидеть разницу между двумя папками на Mac или сравнить содержимое двух каталогов, вы можете легко сделать это с помощью мощной команды diff.
Это руководство покажет вам, как сравнить два каталога и содержимое этих каталогов с помощью Терминала. При таком подходе командной строки будет выведен файл, содержащий точные различия, показанные между двумя целевыми папками.
Чтобы выполнить это сравнение, мы будем использовать инструмент командной строки ‘diff’, diff доступен на всех Mac, вместе с Linux и другими операционными системами unix, так что это эффективное кроссплатформенное решение для сравнения каталогов. Diff довольно просто использовать для сравнения содержимого любых двух каталогов, просто используйте синтаксис, описанный ниже.
Как сравнить содержимое двух каталогов с помощью diff
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Для начала запустите Терминал в Mac OS (находится в / Applications / Utilities /), а затем используйте следующий синтаксис команды:
diff -rq directory1 directory2
Нажмите return, когда вы указали соответствующие каталоги для сравнения. При этом выполняется команда diff, сравнивающая каталог1 и каталог2 (если у вас есть папка с пробелом в имени файла, просто заключите ее в кавычки, например: «первая папка»). Мы используем флаг -rq, потому что -r означает, что включение подкаталогов рекурсивно, а -q упрощает вывод команды только для показанных различий.
Пример вывода команды может выглядеть следующим образом:
$diff -rq directory1 directory2
Только в directory1: example221.txt
Только в directory1: SuperSecretDifferentFile.rtf
Только в каталоге2: AmazingScript.py
Только в каталоге2: MyFavoriteSong.mp3
Только в каталоге2: MyFavoriteSpecialMovie.mp4
Вы также можете пойти еще дальше и перенаправить вывод этой команды в файл, скажем, с именем sizes.txt:
diff -rq directory1 directory2 >> differences.txt
Вот пример и то, как будет выглядеть фактическая распечатка. Предположим, мы сравниваем папки с именами «старая музыка» и «новая музыка», и мы хотим, чтобы выходные данные команды отображали разницу между этими двумя каталогами в файле с именем «musicfolders.txt», тогда будет использоваться следующий синтаксис команды:
diff -rq "old music" "new music" >> musicfolders.txt
Теперь поищите в текущем рабочем каталоге файл, который вы только что создали путем вывода команды diff, в данном случае это файл musicfolders.txt, а его содержимое можно просмотреть в любом текстовом редакторе, командной строке или иным образом. Открыв текстовый файл, вы увидите что-то вроде этого:
Only in old music: song1.mp3
Only in old music: song2.mp3
Only in old music: song3.mp3
Only in new music: instrumental1.mp3
Only in new music: instrumental1.mp3
Если вы хотите просмотреть файл из командной строки, попробуйте:
more musicfolders.txt
В противном случае просто перейдите в каталог, содержащий его, и откройте его в своем любимом текстовом редакторе.
Если вы не хотите создавать текстовый файл с изменениями, просто отключите перенаправление вывода команды. Возможно, вы захотите направить вывод во что-то вроде ‘more’, чтобы упростить сканирование:
diff -rq "old music" "new music" | more
Команда diff довольно мощная, и с ней доступно множество других опций. Используйте команду man diff, чтобы получить полную информацию о том, как использовать diff, а также о бесчисленных доступных функциях.
Стоит еще раз упомянуть, что эта команда будет работать в Mac OS X – всех версиях – а также в большинстве ОС на базе Unix.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)