mirror of
https://github.com/tanrax/bash-folders.git
synced 2024-11-14 14:35:42 +01:00
Small collection of Bash scripts to launch functionalities in folders when new files appear, such as optimizing videos, converting images or battery management.
dynamic-folders-decompress.sh | ||
dynamic-folders-image-to-webp.sh | ||
dynamic-folders-random-image.sh | ||
dynamic-folders-share-files.sh | ||
dynamic-folders-video-optimizer.sh | ||
LICENSE | ||
README.md |
Dynamic folders
Collection of Bash scripts that execute functionalities in folders.
Video optmizer
Folder that watches when new videos are added and optimizes them.
For security, it only detects files that have been copied! Ignore moved files.
Requirements
inotify-tools
ffmpeg
Example in Debian.
sudo apt install inotify-tools ffmpeg
Install
curl -o dynamic-folders-video-optimizer https://raw.githubusercontent.com/tanrax/dynamic-folders/main/dynamic-folders-video-optimizer.sh && chmod +x dynamic-folders-video-optimizer && sudo mv dynamic-folders-video-optimizer /usr/local/bin && echo "🎉 Successfully installed! 🎉"
Test
dynamic-folders-video-optimizer --help
Run
dynamic-folders-video-optimizer --folder [folder to watch]
Example.
mkdir optmizer
dynamic-folders-video-optimizer --folder optimizer
And leave a video that you want to optimize in the folder optimizer
.
Service
Create a file in /etc/systemd/system/dynamic-folders-video-optimizer.service
with the following content.
[Unit]
Description=Folder that watches when new videos are added and optimizes them.
[Service]
Restart=always
RestartSec=5
User=[user]
ExecStart=dynamic-folders-video-optimizer --folder [folder to watch]
[Install]
WantedBy=multi-user.target
Edit it to your needs.
Recharge services.
sudo systemctl daemon-reload
And activate it.
sudo systemctl enable dynamic-folders-video-optimizer
sudo systemctl start dynamic-folders-video-optimizer
Cron
Open.
crontab -e
Add to document.
@reboot dynamic-folders-video-optimizer >/dev/null 2>&1 &
Development
Check syntax
shellcheck [script]