Удалять файлы изображений RAW, не имеющие аналога JPG

Нажмите CTL+ALT+ENTER, чтобы выйти из полноэкранного -режима. Затем вы можете выбрать главное окно на панели задач или свернуть окно rdesktop. Пока окно rdesktopне имеет фокуса, оно не будет захватывать события клавиатуры.

К сожалению, похоже, что это не просто освобождает клавиатуру, как right-ctrlв Remmina или VirtualBox.

1
17.07.2020, 21:45
2 ответа

Поскольку файлы находятся в одном каталоге, давайте не будем усложнять.

#!/bin/sh
for file in *.CR3; do
    noext=${file%.CR3}
    [ -f "$noext.JPG" ] || rm -- "$file"
done

Сценарий перебирает все .CR3файлы в текущем каталоге. Он удаляет расширение из имени файла с помощью noext=${file%.CR3}. Если аналог .JPGне существует, файл .CR3удаляется ([ -f "$noext.JPG" ] || rm -- "$file).

Вы можете добавить echoмежду ||и rm, чтобы проверить правильность операции перед фактическим выполнением сценария.

1
18.03.2021, 23:19

Если ваши файлы такие, как вы написали, вы можете найти все нужные вам файлы по

\ls -1 *.JPG *.CR3 | cut -d. -f1 | uniq -c | sed '/\<2\>/d
s/^[^I]*\(.*\)/\1.CR3/'

и удалите их. Полная команда будет

rm $(\ls -1 | cut -d. -f1 | uniq -c | sed '/\<2\>/d
s/^[^I]*\(.*\)/\1.CR3/')

По сути, вы получаете базовое имя каждого файла с помощью cut, отправляете его через uniq -cдля подсчета, удаляете все файлы, имеющие 2 экземпляра, удаляете 1 и добавляете расширение CR3.

0
18.03.2021, 23:19

Теги

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