Восстановить файлы после перемещения имен каталогов?

vim --servername TAIL_VIM /tmp/somefile

Теперь, в другой оболочке (как bash), можно сделать:

while true
do
    inotifywait --event modify /tmp/somefile \
    && vim --servername TAIL_VIM --remote-send '<C-\><C-N>:edit!<CR>G';
done

Where < C->< C-N> заставляет vim перейти в нормальный режим, "edit!" говорит vim перезагрузить текущий файл (CR имитирует нажатие клавиши enter), а G переходит в нижнюю часть файла. Удаление (G) облегчает встраивание файла во время входа

.
1
29.07.2014, 23:53
1 ответ

Я не совсем уверен, что вы там делали, но если команда в вашем вопросе та, которую вы выполняли, вы должны просто иметь возможность отменить ее:

for f in *
do echo mv -v "$f" "${f%"#_*"}"
done

Пожалуйста, не удаляйте echo из этой команды, пока не будете уверены, что она работает, но, просто чтобы объяснить, почему я так думаю, вот что я сделал:

for f in $(seq 100)
do echo $f > file$f
done

Это сделало меня 100 файлами типа file1 - file100, и каждый из них содержал свой номер, так что:

$ cat file100
100

Вот так. Потом я сделал ваше дело:

for f in *
do mv -v "$f" "$f#_*"
done

И у меня была куча файлов типа file1#_* - file100#_*. Затем я сделал свою вещь, вставленную в первый кодовый блок здесь, но без эха, и я сделал...

$ cat file100
100
3
27.01.2020, 23:28

Теги

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