Skrypty użytkowników

Z Fedora Wiki
Skocz do: nawigacji, wyszukiwania

Spis treści

Tip.png
Proponuję stronkę na skrypty

Jeśli masz skrypt mały lub duży, który mógłby się komuś przydać i nie masz ochoty pisać o nim artykułu na wiki to po prostu wrzuć go tutaj i krótko opisz lub daj link do paczki.

.bashrc

  • nigdy nie ukończony artykuł o pliku ~/.bashrc

fedorachroot

Zrobiłem instalację fedory do chroot, jednak wykonałem to w tak niewdzięczny sposób, że wstydził bym się komuś wmawiać, że tak to się robi. Jednak udało się i system działa już bez zarzutów więc jednak można. Dla zainteresowanych instalacja fedory do chroot najprostszym możliwym sposobem (chyba).

manr

Taki dosyć prościutki skrypt listujący strony man danej paczki rpm/polecenia. Rozbudowany jest tylko po to by pokazać początkującym jak łatwo zrobić obsługę parametrów, funkcje i menu wyboru (bo sam na początku długo tego szukałem).

#!/bin/bash
 
# manr - lista stron man z paczki rpm 
# by borzole
# użycie: manr --help
 
# Nazwa programu
"${0##*/}"
# czcionka normalna
"\e[0m" 
# czcionka bold
"\e[1;38m" 
# jakaś pomoc
"PROGRAM:\n${B}${NAME}${E} - spis stron man wybranej paczki rpm
${B}PARAMETRY:${E}
	${B}<polecenie>${E}
		po wpisaniu dowolnego polecenia wylistuje wszystkie strony man z paczki RPM
	${B}-r, --rpm <paczka>${E}	
		po wpisaniu dowolnej paczki RPM wylistuje z niej wszystkie strony man
	${B}-h, --help${E}
		wypisuje tę pomoc
${B}PRZYKŁADY:${E}
	${B}${NAME} cp${E}
	${B}${NAME} fdisk${E}
	${B}${NAME} -r shadow-utils${E}
	${B}${NAME} -rpm yum-utils${E}
	${B}${NAME} --rpm xorg-x11-server-utils${E}	
	${B}${NAME} --rpm xorg-x11-utils${E}	
	${B}${NAME} --rpm xdg-utils${E}			
 
ps. takie molochy jak GNOME, KDE zazwyczaj nie używają już stron man :)"# rysuje linię
# domyślnie jest "_", ale może rysować linię ze znaku podanego jako parametr
${1:-_}${znak}# gdy parametrem jest polecenie
# z tej paczki poczytamy manuale
# gdy parametrem jest paczka rpm
# z tej paczki poczytamy manuale
# funkcja główna wyświetlająca spis stron man
"Miłego czytania stron man z paczki ${B} $RPM ${E}""Wybierz numer, wyjście: ${B}Ctl+D${E}""bin/" '{printf $2 " "}'# to samo ale wyświetla pełne ścieżki do poleceń
	# select p in `rpm -ql $RPM |grep bin/ `; do man ${p##*/} ; done
}
# ------------------------------------------------------------------------------
# gdy brak parametrów:
# -eq 0 ]; then _help ; fi
# obsługa parametrów
# -gt 0 ]; then
"${1}"# kod wyjścia ostatniego polecenia
 

wikirepo

Najbardziej aktualna wersja tego skryptu jest do pobrania na stronie repo

#!/bin/bash
 
# wikirepo - listuje, ściąga, instaluje paczki RPM prosto z http://wiki.fedora.pl/wiki/repo
# by borzole
 
#parametry
${0}${@}"http://wiki.fedora.pl/index.php?title=repo&action=raw&ctype=text/css"# czcionka: (N)ORMAL i (B)OLD
"\e[0m""\e[1;38m" 
# -------------------------------------------------------------------------------------------------
${URL}${TMP} 
 
	# metoda: 
	#		- sed: każdą spację zamienić na znak nowej linii ( składnia linków na wiki wymusza tę spację)
	#		- grep: wylapać tylko linie kończące się na ".rpm"
	#		- awk: wyłuskać linie zawierające linki i wyłuskać link http
	#		- sort: posortowanie i usunięcie pustych linii
 
	# http://
${TMP}'s/\ \ */\n/g''.rpm$'"http://" '{ print "http://" $2 }'${SRC}
 
	# TODO: o ile to kiedyś będzie potrzebne
		# https://
		# ftp://
}
 
# -------------------------------------------------------------------------------------------------
${1}${URL##*/}${RPM%.fc*}${RPM##*.fc}${VER%.rpm}${VER%%.*}${VER##*.}
 
	# to tak na wyrost do robienia sortowania według tych parametrów
${RPM} ${APPS} ${FC} ${ARCH}${SRC}${BASE}'{}'
}
# -------------------------------------------------------------------------------------------------
${BASE}' '${1}":: RPM = \t$B$RPM$N ::"${RPM} ${SRC}":: co chcesz zrobić? :: 
	-ściągnij paczkę (wget)
	-zainstaluj prosto z linku (rpm)
	-ściągnij i zainstaluj (yum) 
	-Up (Ctrl+D i ENTER)""${cmd}" == "wget"${URL}"${cmd}" == "rpm""root"" sorry, tylko root "${URL}"${cmd}" == "yum""root"" sorry, tylko root "${URL}${RPM}# -------------------------------------------------------------------------------------------------
":: ściągam aktualne linki :: "
	${BASE}":: ${B}wikirepo${N} :: listuje, ściąga, instaluje paczki RPM prosto z http://wiki.fedora.pl/wiki/repo"":: skrypt by ${B}borzole${N}"":: quit: Ctrl+D\n\n"${BASE}${BASE}# uruchomienie funkcji głównej lub z parametru
"$1"${ARGS}# wyjście z przekazaniem kodu wyjścia ostatniego polecenia
 

wgetilla

Michał Bentkowski (mr.ecik) zrobił kiedyś skrypt "wget z powiadomieniem" jednak nie daje rady znaleźć go dzisiaj w google, a skoro był na licencji GPLv2 to pozwolę sobie umieścić tutaj.

#!/bin/bash
 
# wgetilla - wget z powiadomieniem
# równie dobrze to może być prozilla, curl czy aria2
# by Michał Bentkowski (mr.ecik@gmail.com)
# licensed under GPLv2+
# requires: notify-send ( paczka libnotify.rpm )
 
# PRZYKŁAD:
# Jako "download manager" do firefox z wtyczką Flashgot :
# polecenie:
#	/usr/bin/gnome-terminal
# parametry:
# 	-x wgetilla [URL] -P [FOLDER]
# dzięki opcji -P mamy automatyczne sortowanie ściąganych plików
# ICONS: (change if you don't like them ;-))
# PATHS: (change them if it's needed)
#GET=/usr/bin/proz
#GET=/usr/bin/curl
#GET=/usr/bin/aria2c
 
# just run "get" with given parameters
# check whether $DISPLAY exists,
# if not, exit with get's exit code
[ "x$DISPLAY" == "x"# don't notify if "--help" was invoked
"$p" == "--help""x$EXIT" == "x0""Download OK: $*""Download ERROR: $*"

zenity

Skrypty z użyciem graficznych okienek zenity znajdują się w artykule o zenity

Osobiste
Przestrzenie nazw

Warianty
Działania
Wiki
Nawigacja
Inne
Narzędzia