Как найти повторяющиеся пути к каталогам, даже если содержимое отличается?

Recomiendo encarecidamente no analizar dfla salida.

Si tiene statde GNU coreutils, puede obtener la cantidad de bloques libres disponibles para no -root por

stat  -f /mountpoint -c '%a'

el tamaño del bloque por

stat -f /mountpoint -c '%S'

y la condición se puede escribir sucintamente como:

[ `stat  -f /mountpoint -c '%a'` -lt 262144 ] && do_your_stuff

(asumiendo que el tamaño del bloque es 4096 y 1 GB es 1073741824 bytes -es decir, 1073741824/4096)

Y en cuanto a la eliminación de archivos (, según la pregunta ), probablemente la forma más segura sería:

find /directory -type f -print0 | xargs -0 -r rm -f

o incluso mejor:

find /directory -type f -delete

Usar rm -f /something/*es solo buscar problemas.

0
18.05.2019, 00:13
1 ответ

Я бы выбрал что-то вроде этого:

  1. список каталогов на стороне idx1:cd idx1/defaultdb; find. -type d > path/to/list.txt

  2. список каталогов на стороне idx2:cd idx2/defaultdb; find. -type d >> path/to/list.txt

  3. найти дубликаты:awk 'seen[$1]++ {print $1}' path/to/list.txt

Примечание:

  • это всего лишь общая концепция. Все еще нуждается в полировке, чтобы стать сценарием;-)
  • обе команды findдолжны будут выполнять запись в один и тот же файл. Выберите его путь соответственно.
1
28.01.2020, 02:40

Теги

Похожие вопросы