Поскольку вы хотите сравнить их по контенту, использование хэшей, кажется, способ сделать это.
Вы можете использовать команду find
, чтобы получить список путей файлов каталога. Опция -Type F
оставит все каталоги и только выходные пути к регулярным файлам. Опция -EXECEC MD5SUM {} \;
будет принимать найденные пути и дает им команду md5sum
, чтобы превратиться в список hash md5 + их filepaths (md5_hash / путь / к /файл').
Мы проводят этот список в команду Cut
. Первый вариант -F 1
говорит об этом только для первого столбца (хэши). Второй -D ''
-D ''
говорит ему использовать пространственный символ в качестве разделителя между столбцами. По умолчанию это вкладка.
Мы проводят этот список хэшей в команду сортировки, чтобы облегчить diff
.
Оператор называется Подстановка процесса . Он принимает вывод команды и превращает его в псевдо-файл для команд, которые требуют их в качестве ввода (для менее простого объяснения, следуйте по ссылке). Таким образом, он выглядит
diff
, как если бы мы хотим сравнить два файла.
:~$ diff <(find folder1/ -type f -exec md5sum {} \; | cut -f 1 -d ' ' | sort) \
<(find folder2/ -type f -exec md5sum {} \; | cut -f 1 -d ' ' | sort)
Примечание: не забудьте заменить папку1 / и папку2 / с вашими фактическими папками.
Это даст вам список хэси MD5 файлов, которые являются только в одном или иной.
Если вы хотите знать, какие файлы на самом деле отсутствуют, вы можете сделать:
:~$ find folder1/ -type f -exec md5sum {} \; | sort | grep my_md5_hash
Если у вас есть много файлов, чтобы проверить, было бы разумно сохранить результаты двух Команды и сравните их как:
:~$ diff list1.txt list2.txt
:~$ cat list1.txt | grep my_md5_hash
Нельзя указывать тип d
, если не требуется переименовать только каталоги. Чтобы изменить расширения .jpg
на .jpeg
, попробуйте
find . -maxdepth 2 -mindepth 2 -name '*.jpg' -exec sh -c 'echo mv -- "$0" "${0%%.jpg}.jpeg"' {} \;
Удалить эхо
, если вам нравится то, что вы видите на экране.
Можно использовать find
:
find /bin -ls > file.txt
Поскольку каталоги в /bin
почти наверняка не содержат мест или странных символов, простой ls
, перенаправленный в файл, также должен работать:
ls -l /bin > file.txt
В отличие от find
выше, это не будет показывать подкаталоги или скрытые файлы. Для их получения также можно воспользоваться:
ls -Ral /bin > file.txt
-121--201020- По пути Системные настройки - > Дисплей и монитор - > Блокировщик экрана можно выбрать время блокировки и время блокировки с паролем. Кроме того, здесь можно установить заставку, поэтому это может быть предупреждением о том, что сеанс вскоре будет заблокирован паролем.
Если этого недостаточно, вы всегда можете установить gnome-screensaver, но он может установить некоторые gtk-gnome зависимости, так что будьте в курсе.