Как искать рекурсивно в каталоге для различных файлов?

Да, что-то должно запустить утилиту LVM (как вы говорите, vgchange-y или аналогичный) в какой-то момент. Там нет магии, которая заставляет ядро ​​рисуться тем сама собой.

В initramfs это обычно делается скриптом / init (прямо или косвенно). Некоторые системы также сканируют для VG / LV всякий раз, когда UDEV рассказывает о новом диске, но с DevTMPFS у вас тоже нет этой опции.

Итак, да, конечно, просто сделайте скрипт init для LVM и имейте каким-то образом систему INIT INING.

0
12.04.2015, 21:43
2 ответа

Это может работать для вас:

#!/bin/bash
#
cd /a || exit

find . -type f |
    while read FILE
    do
        TARGET="/app/$FILE"
        test -f "$TARGET" && cp -fp "$TARGET" "$TARGET.bak"
        mv "$FILE" "$TARGET"
    done
0
28.01.2020, 04:57

Вы можете попробовать это:

#!/usr/bin/env ksh
a_files=( $(find /path/to/a/ -type f) )

for file in "${a_files[@]}"; do
        mv "/path/to/app${file##*a}" "/path/to/app${file##*a}.bak"
        mv "$file" "/path/to/app${file##*a}"
done

, если A / A / и в том же каталоге E.g. / Home / user / {a, приложение} , то:

#!/usr/bin/env ksh
a_files=( $(find /home/user/a/ -type f) )

for file in "${a_files[@]}"; do
        mv "${file%%a/*}app${file##*/a}" "${file%%a/*}app${file##*/a}.bak"
        mv "$file" "${file%%a/*}app${file##*/a}"
done

Это сначала возьмет резервную копию файлов / Home / user / app / как .Bak Расширение, а затем замените исходные файлы файлами из / Home / user / A .

0
28.01.2020, 04:57

Теги

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