Как мне написать скрипт, который будет перемещать все .png .svg .gif
файлы из /home/eric/Desktop
в /usr/share/icons
?
bash может легко с этим справиться:
mv /home/eric/Desktop/*.{png,svg,gif} /usr/share/icons
Используйте sudo mv ...
, если у вас нет разрешения на запись в /usr/share/icons.
Почему бы не использовать find
? Это сработало для меня:
find ./ -maxdepth 1 \( -iname "*.png" -o -iname "*.gif" -o -iname "*.svg" \) -ok cp {} /tmp/ \;
Вы хотите mv
не cp
, и ваш пункт назначения - /usr/share/icons
, а не /tmp
, но вы можете запустить это из командной строки или сценария оболочки.
-iname
нечувствителен к регистру, -name
чувствителен к регистру. Настройте -maxdepth
по своему вкусу и / или потяните предложение -ok
, чтобы просто увидеть, с чем оно идет.
Как следует
#!/bin/sh
gksu mv /home/eric/Desktop/*.png /usr/share/icons & mv /home/eric/Desktop/*.svg /usr/share/icons & mv /home/eric/Desktop/*.gif /usr/share/icons & exit
Я не эксперт по bash - но это должно сработать , если нет, то с моим ответом нет гарантии: P