#!/bin/bash
delay_time=2
system_info_file="SystemInfo.txt"
userid=$(id -u)
line ="-----------------------------------------------------------------------------"
#Funkcja, Która tworzymy nam plik z informacjami o systemi Linux
system_file()
{
if [ -f $system_info_file ]; then
rm $system_info_file
echo "Usuwam istniejący plik $system_info_file"
touch $system_info_file
echo "Został utworzony nowy plik $system_info_file "
else
touch "$system_info_file"
echo "został utworzony nowy plik $system_info_file"
sleep $delay_time
fi
}
#Funkcja, która zbiera i zapisuje dane do pliku
display_info()
{
echo "*************************** INFORMACJE O SYSTEMI LINUX ***************************" >>
$system_info_file
echo -n "Aktualnie zalogowany użytkownik to: " >> $system_info_file
whoami >> $system_info_file
echo "Katalog domowy to: " $HOME >> $system_info_file
echo "Informacja o pamięci: " >> $system_info_file
echo $line >> $system_info_file
free >> $system_info_file
echo $line >> $system_info_file
echo "Całkowita przestrzeń na dysku twardym: " >> $system_info_file
echo $line >> $system_info_file
echo "Przestrzeń katalogu domowego użytkownika: " >> $system_info_file
du -sh $HOME >> $system_info_file
cat $system_info_file
read -p "Wciśni dowolny klawisz aby kontynuować........>"
}
#Funkcja, która tworzy nam nową grupę
grupa_add()
{
if [ $userid = "0" ]; then
echo m "Podaj nazwę grupy: "
read group
if grep -q $group /etc/group
then
echo "Istnieje już grupa o podanej nazwie, przerywam działanie funkcji."
else
echo "Dodano nową grupę"
groupadd $group
else
echo "Nie masz uprawnien administratora, by korzystać z tej funkcji."
fi
sleep $delay_time
}
#Funkcja, która dodaje użytkowniak i dodaje go do grupy
user_add()
{
id [ $userid = "0"]; then
echo -n "Podaj nazwę użytkownika: "
read user
getent passwd $user > /dev/null
if [ $? -eq 0 ]; then
echo "Użytkownik już istnieje!"
echo -n "Podaj nazwę grupy, do której bedzie przypisany użytkownik."
read group
if grep -q $group /etc/group
then
echo "Grupa o podanej nazwie już istnieje. Dodaję użytkownika."
usermod -a -G $group $user
passwd $user
else
echo "Grupa o podanej nazwie nie istnieje. Proszę utworzyć grupę za pomocą opc$3"
useradd $user
echo "Dodano nowego użytkownika"
echo -n "Podaj nazwę grupy, do której użytkownika ma być dodany: "
read group
if grap -q $group /etc/group
then
echo "Grupa o podanej nazwie istnieje. Dodaję użytkowniak"
usermod -a -G $group $user
passwd $user
else
echo "Grupa o podanej nazwie nie istnieje. Utwórz grupę za pomocą opcji nr 3 w menu. "
fi
fi
else
echo "Nie masz uprawnień administratora, by korzystać z tej funkcji!!!"
fi
sleep $dela_time
}
#Funkcja Któa pobiera i przetwarza plik
get_file()
{
mkdir ~/repository
check=$(ls ~/repository -A | wc -1)
if [check -gt '0'] ; them
echo "W wybranym katalogu znajdują się pliki. CZy chcesz je usunąć (y|n)>"
redy answer
if [ $answer = 'y' ] them
rm -r ~/repository/*
echo "Usuwam Zawartoś katalogu repozytorium"
wegt http://corecontro.cba.pl/linuxlab.tar -P ~repository
echo "Pobieram plik linuxlab.tar..........>"
tar xvf ~/repository/linuxlab.tar ~/repostory
echo "Pliki zostały wypakowane do katalogu repozytorium"
make_tree
else
echo "Zawartość katalogu repository została usunięta. Przerywam działąnie$"
fi
else
wegt http://corecontro.cba.pl/linuxlab.tar -P ~repository
echo "Pobieram plik linuxlab.tar..........>"
tar xvf ~/repository/linuxlab.tar ~/repostory
echo "Pliki zostały wypakowane do katalogu repozytorium"
make_tree
read -p "Wciśnij dowolny klawisz aby kontynuować....>"
#Funkcja tworząca drzewo z pliku katalogi.txt
make_tree()
find ~/repository/linuxlab -name katalogi.txt
if [ $? -eq 0 ]; then
echo "Plik o nazwie katalogi txt."
if [ -d ~/contetn ] ; them
echo "$Ścieżka content na podkatalogu istnieje. CZy chcesz usunąc jej zawartość (y|n)"
read answer
if [ $answer = "y"] ; then
rm -r ~/content
mkdir ~/countent
echo "Usuwan zawartość katalogu content......"
xargs -I {} mkdir -p ~/countent/{} < ~/repository/linuxlab/katalogi.txr
echo "Drzewo podkatalogu zostało utworzone. Przerywam działanie funkcji!!!"
else
echo "Zawartośćkatalogu content nie zostanie usunięta. Przerywam działanie funkcji"
fi
else
echo "Plik katalogi.txt nie istnieje. Przerywam działanie funkcji"
fi
sleep $delay_time
}
#Funkcja, która wyszukuje wprowadzone słowo w plikach tekstowych z pobranego katalogu
echo "c.d.n"