[Bash] Wysyłanie pliku wideo na FTP

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
2szopy
Piegowaty Guziec
Piegowaty Guziec
Posty: 1
Rejestracja: 19 sie 2010, 13:06
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

[Bash] Wysyłanie pliku wideo na FTP

Post autor: 2szopy »

Niedawno przesiadłem się z windy na ubuntu i niestety kilka rzeczy mi bardzo brakuje.
Jedną z takich rzeczy jest program Jing. Pozwala szybko nagrać filmik z określonego obszaru ekranu, wysłać w dowolne miejsce (w moim przypadku FTP) i zachować odpowiedni link w schowku.
Znalazłem program na ubuntu gtk-recordMyDesktop który podobnie nagrywa film, ale brakuje mu funkcji wysyłania na ftp.
Poniżej skromny skrypt uzupełniający tę funkcjonalność. To mój pierwszy skrypt i przyznam że robiłem metodą prób i błędów.

Kod: Zaznacz cały

#!/bin/bash
FTP_HOST="host"
FTP_USER="uzytkownik"
FTP_DIR="/screencast/files/"
LINK="http://domena/"

FTP_PASS=$(zenity --entry --title="Wyslij screencast" --text="Haslo do ftp:" --hide-text)
if [ ! -z "$FTP_PASS" ]
then 
	NOW=$(date +"%Y-%m-%d-%H-%M")
	EXT=${1/*./}
	BASE_FILE=${1/*\//}
	NEW_FILE=$NOW.$EXT

	RESULT=`lftp -d -u $FTP_USER,$FTP_PASS -p 21 -e "cd $FTP_DIR; mput $1; mv $BASE_FILE $NEW_FILE; quit" $FTP_HOST 2>&1`;
		
	if [[ ! $RESULT =~ "530" ]]; then
		# get video width/height
		W=`/usr/share/mplayer/midentify.sh $1 | grep -E -o "WIDTH=(.+)"`;
		H=`/usr/share/mplayer/midentify.sh $1 | grep -E -o "HEIGHT=(.+)"`;


		zenity --entry --entry-text "$LINK?f=$NEW_FILE&w=${W:6}&h=${H:7}" --title "Sukces!" --text "Plik \"$BASE_FILE\" zostal wyslany!" --width=500;
	else
		zenity --error --title "Blad!" -- text "Wystapil blad!";
	fi
else echo "Nie wprowadzono hasla"
fi
Po przesłaniu pliku wyświetlane jest okno z linkiem, a w nim nazwa pliku, szerokość i wysokość. Do pobrania wymiarów filmu wykorzystywany jest skrypt z mplayera.
Po stronie serwera wystarczy zrobić szybki skrypcik wyświetlający film i gotowe.

Mam nadzieję że komuś to się przyda. Jeśli popełniłem jakieś bezsensowne błędy w skrypcie będę wdzięczny za sensowne wyjaśnienie.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości