Сравните содержимое двух каталогов на Mac с помощью diff

Оглавление:

Anonim

Если вы хотите увидеть разницу между двумя папками на Mac или сравнить содержимое двух каталогов, вы можете легко сделать это с помощью мощной команды diff.

Это руководство покажет вам, как сравнить два каталога и содержимое этих каталогов с помощью терминала. Этот подход командной строки выведет файл, содержащий точные различия, показанные между двумя целевыми папками.

Для этого сравнения мы будем использовать инструмент командной строки 'diff', diff доступен на всех компьютерах Mac, а также в Linux и других операционных системах Unix, так что это фактически кросс-платформенное решение. для сравнения каталогов. Diff довольно прост в использовании для легкого сравнения содержимого любых двух каталогов, просто следуйте инструкциям, используя синтаксис, описанный ниже.

Как сравнить содержимое двух каталогов с помощью diff

Чтобы начать, запустите Терминал в Mac OS (находится в /Applications/Utilities/), а затем используйте следующий синтаксис команды:

diff -rq каталог1 каталог2

Нажмите return, когда вы укажете подходящие каталоги для сравнения. Это выполняет команду diff, сравнивающую каталог1 и каталог2 (если у вас есть папка с пробелом в имени файла, просто поместите его в кавычки, например: «папка один»). Мы используем флаг -rq, потому что -r означает, что включение подкаталогов является рекурсивным, а -q упрощает вывод команды только для показанных различий.

Пример вывода команды может выглядеть следующим образом:

$diff -rq каталог1 каталог2

Только в каталоге 1: example221.txt

Только в каталоге 1: SuperSecretDifferentFile.rtf

Только в каталоге 2: AmazingScript.py

Только в каталоге 2: MyFavoriteSong.mp3

Только в каталоге 2: MyFavoriteSpecialMovie.mp4

Вы также можете пойти еще дальше и перенаправить вывод этой команды в файл, скажем, с именем разности.txt:

diff -rq каталог1 каталог2 >> различия.txt

Вот пример того, как будет выглядеть реальная распечатка. Допустим, мы сравниваем папки с именами «старая музыка» и «новая музыка», и мы хотим, чтобы выходные данные команды показывали разницу между этими двумя каталогами в файле с именем «musicfolders.txt», то будет использоваться следующий синтаксис команды:

"

diff -rq old music>> musicfolders.txt"

Теперь найдите в текущем рабочем каталоге файл, который вы только что создали, введя команду diff, в данном случае это файл musicfolders.txt, и его содержимое можно просмотреть в любом текстовом редакторе, командной строке или в противном случае. Открыв текстовый файл, вы увидите что-то вроде этого:

Только в старой музыке: song1.mp3 Только в старой музыке: song2.mp3 Только в старой музыке: song3.mp3 Только в новой музыке: toolsal1.mp3 Только в новая музыка: инструментал1.mp3

Если вы хотите просмотреть файл из командной строки, попробуйте:

more musicfolders.txt

В противном случае просто перейдите в содержащую папку и откройте ее в своем любимом текстовом редакторе.

Если вы не хотите создавать текстовый файл с изменениями, просто отключите перенаправление вывода команды. Возможно, вы захотите передать вывод чему-то вроде «больше», чтобы упростить сканирование:

"

diff -rq старая музыка>"

Команда diff довольно мощная, и с ней доступно много других опций, используйте команду man diff, чтобы получить полную информацию о том, как использовать diff, а также о множестве доступных функций.

Стоит еще раз отметить, что эта команда будет работать в Mac OS X (все версии), а также в большинстве ОС на базе Unix.

Сравните содержимое двух каталогов на Mac с помощью diff