Strona główna Ubuntu C++ Hardware HTML i javascript Java Software SQL

Bash – pobieranie automatyczne skryptów z serwera oraz tworzenie aliasów do nich.

Dodano: 2012-07-27

Dzisiaj większość informacji i programów jest zgromadzonych na serwerach FTP. Pracując w systemie użytkownika zdarza się, że potrzebujemy pobrać skrypty z serwera zewnętrznego oraz utworzyć alias. Na pewno wiele osób samych będzie w stanie szybko to wykonać wykorzystując wget i komendę alias.

Można stworzyć również skrypt, który wykona tę operację korzystając z dwóch parametrów i zapisujący pliki w danej lokalizacji np. /home/[id -un]/bash_script (możesz dowolnie zmodyfikować domyślną lokalizację). Skrypt poniżej przyjmuje dwa parametry pierwszy jest konieczny i jest to ścieżka do pliku na serwerze, drugi to opcjonalny i jest to nazwa aliasu. Jeżeli nie zostanie podany drugi parametr zostanie tylko pobrany plik.

Zakładając że skrypt będzie się nazywał następująco alias_wget.bash, można go użyć:

alias_wget.bash [linkToFile] [(optional) nameAlias]

Poniżej skrypt:

#!/bin/bash

echo "The script download file with bash command and creates an alias to it.";
echo "";

PATH_="/home/"`id -un`"/bash_script";

if [ ! -d $PATH_ ]; then
	echo "Creating folder '"$PATH_"'...";
	mkdir $PATH_
	if [ "$?" -ne "0" ]; then
		echo "Can not create folder!!!"
		exit 240;
	fi
fi

if [ "$1" = "" ]; then
	echo "";
	echo "The link is not specified!!!";
	exit 102;
fi

NAME_FILE=`basename $1`;

wget -O $PATH_/$NAME_FILE $1
if [ "$?" -eq "0" ]; then
       	echo "Download file is ended.";
else 
        echo "Can not download file '"$1"'!!!";
       	exit 44;
fi

chmod 755 $PATH_/$NAME_FILE

if [ "$2" != "" ]; then
echo "Creating alias...";
sudo sh -c "echo alias $2=\'$PATH_/$NAME_FILE\' >> ~/.bash_aliases"
source ~/.bashrc
fi

echo "End script.";

exit 0;