Что такое команда unix для поиска файлов, которые в одном напрямую покупают, а не в другом каталоге? Я забочусь только об именах файлов.
Благодарю.
Что такое команда unix для поиска файлов, которые в одном напрямую покупают, а не в другом каталоге? Я забочусь только об именах файлов.
Благодарю.
Я предполагаю, что вы хотите сделать этот поиск из каталога более высокого уровня. Если это так, вы можете использовать опцию -path
с find
.
Например, учитывая структуру каталогов ниже
+---dir1/test1.txt
|
|--dir2/test1.txt
найти файлы, соответствующие 'test *' в dir1 use
find -path '*dir1*' -iname 'test*'
Для сравнения двух каталогов вы можете использовать это:
diff <(cd "$dir1"; find | sort) <(cd "$dir2"; find | sort)
Чтобы сделать это только одним способом и создать список файлов, попробуйте это:
diff <(cd "$dir1"; find | sort) <(cd "$dir2"; find | sort) \
| grep '< ./' | sed "s,< ./,$dir1/,"
Чтобы это работало должным образом, ни $ dir1, ни $ dir2 не должны содержать завершающий слеш.