
Ich brauche eine Möglichkeit, nach Abschluss eines Downloads automatisch einen Befehl auszuführen.
Ich möchte, dass automatisch ein Verzeichnis neben der heruntergeladenen Datei erstellt wird, nachdem ich auf den integrierten Download-Button von Firefox geklickt habe. All dies soll automatisch erfolgen.
Antwort1
Wenn Sie die Datei außerhalb von Firefox herunterladen können, können Sie verwenden
filetodownload=file-to-download.ext
wget http://www.example.org/"$filetodownload" -O "$filetodownload"
#"I want to create a directory beside the downloaded file automatically"
#You didn't specify a dir name
mkdir "$filetodownload"
Andernfalls müssen Sie den Download-Fortschritt der Datei überwachen und nach Abschluss das Verzeichnis „neben der heruntergeladenen Datei“ erstellen. Folgendes hat bei mir funktioniert (aber ich konnte kein Verzeichnis mit demselben Namen wie die Datei erstellen). Es werden jedoch alle Dateien durchsucht, auch versteckte. Ändern Sie es nach Bedarf.
#! /bin/bash
while [ 1 ]
do
for files in $(find . -maxdepth 1 -mmin -1 -type f)
do
testbefore=$(ls -l $files | awk '{print $5$6$7$8$9}')
sleep 2
testafter=$(ls -l $files | awk '{print $5$6$7$8$9}')
if [ $testbefore = $testafter ]
then
# echo $testbefore
mkdir $(basename "$files")_
fi
sleep 5
done
done
Antwort2
- MIME-Typ hinzufügen (Sie können für alle
neverAsk.openFile
hinzufügen )about:config
*/*
- Erstellen Sie ein ausführbares Skript, das:
- übernimmt den Dateipfad aus der Argumentenliste (das erste Argument)
- verschiebt es zum Zielort (wohin es heruntergeladen wurde
tmp
) - führt alle gewünschten Befehle aus
- Weisen Sie Firefox an, diesen Dateityp mit Ihrem Skript zu öffnen
Letzteres ist einfach durchzuführen, aber etwas schwieriger, wenn Sie Datensätze manuell zur Datei im Firefox-Profil about:preferences
hinzufügen möchten .mimeTypes.rdf
Antwort3
Firefox lädt eine Datei unter dem temporären Namen „$f.part“ herunter und benennt sie nach Abschluss des Downloads in „$f“ um.
inotifywait
Sie können also mit Tools wie oder nach Verzeichnisänderungen suchen.Uhrenmedo.
inotifywait -m .
...
./ MOVED_FROM file.zip.part
./ MOVED_TO file.zip