Я пытаюсь сделать что-то вроде:
diff `ls -1a ./dir1` `ls -1a ./dir2`
Но это не работает по понятным причинам. Есть ли лучший способ добиться этого (в 1 строке), чем этот?
ls -1a ./dir1 > lsdir1
ls -1a ./dir2 > lsdir2
diff lsdir1 lsdir2
Благодарность
используя опцию -r, обойдите целые деревья каталогов, рекурсивно проверяя различия между подкаталогами и файлами, которые встречаются в сопоставимых точках в каждом дереве. Хитрость заключается в том, чтобы использовать опцию -q для подавления построчного сравнения
источник
ls
rsync
с помощью--dry-run
опции), это все равно будет намного быстрее, чемdiff -r
.