Facebook
From Paweł Ciążyński, 3 Years ago, written in Bash.
Embed
Download Paste or View Raw
Hits: 168
  1. #!/bin/bash
  2. delay_time=2
  3. system_info_file="SystemInfo.txt"
  4. userid=$(id -u)
  5. line ="-----------------------------------------------------------------------------"
  6.  
  7.  
  8. #Funkcja, Która tworzymy nam plik z informacjami o systemi Linux
  9. system_file()
  10. {
  11. if [ -f $system_info_file ]; then
  12.         rm $system_info_file
  13.         echo "Usuwam istniejący plik $system_info_file"
  14.         touch $system_info_file
  15.         echo "Został utworzony nowy plik $system_info_file "
  16. else
  17.         touch "$system_info_file"
  18.         echo "został utworzony nowy plik $system_info_file"
  19. sleep $delay_time
  20. fi
  21. }
  22.  
  23. #Funkcja, która zbiera i zapisuje dane do pliku
  24. display_info()
  25. {
  26. echo "*************************** INFORMACJE O SYSTEMI LINUX ***************************" >>
  27. $system_info_file
  28. echo -n "Aktualnie zalogowany użytkownik to: "                 >> $system_info_file   
  29. whoami                                                                                                  >> $system_info_file
  30. echo "Katalog domowy to: " $HOME                                                >> $system_info_file   
  31. echo "Informacja o pamięci: "                                                  >> $system_info_file
  32. echo $line                                                                                              >> $system_info_file
  33. free                                                                                                    >> $system_info_file
  34. echo $line                                                                                              >> $system_info_file
  35. echo "Całkowita przestrzeń na dysku twardym: "                        >> $system_info_file
  36. echo $line                                                                                              >> $system_info_file
  37. echo "Przestrzeń katalogu domowego użytkownika: "             >> $system_info_file
  38. du -sh $HOME                                                                                    >> $system_info_file
  39. cat $system_info_file                                                                  
  40. read -p "Wciśni dowolny klawisz aby kontynuować........>"
  41. }
  42. #Funkcja, która tworzy nam nową grupę
  43. grupa_add()
  44. {
  45. if [ $userid = "0" ]; then
  46.         echo m "Podaj nazwę grupy: "
  47.         read group
  48.         if grep -q $group /etc/group
  49.         then
  50.         echo "Istnieje już grupa o podanej nazwie, przerywam działanie funkcji."
  51.         else
  52.         echo "Dodano nową grupę"
  53.         groupadd $group
  54. else
  55.         echo "Nie masz uprawnien administratora, by korzystać z tej funkcji."
  56.         fi
  57.         sleep $delay_time
  58. }
  59.  
  60. #Funkcja, która dodaje użytkowniak i dodaje go do grupy
  61. user_add()
  62. {
  63. id [ $userid = "0"]; then
  64.         echo -n "Podaj nazwę użytkownika: "
  65.         read user
  66.         getent passwd $user > /dev/null
  67.         if [ $? -eq 0 ]; then
  68.         echo "Użytkownik już istnieje!"
  69.         echo -n "Podaj nazwę grupy, do której bedzie przypisany użytkownik."
  70.         read group
  71.         if grep -q $group /etc/group
  72.         then
  73.         echo "Grupa o podanej nazwie już istnieje. Dodaję użytkownika."
  74.         usermod -a -G $group $user
  75.         passwd $user
  76. else
  77.         echo "Grupa o podanej nazwie nie istnieje. Proszę utworzyć grupę za pomocą opc$3"
  78.         useradd $user
  79.         echo "Dodano nowego użytkownika"
  80.         echo -n "Podaj nazwę grupy, do której użytkownika ma być dodany: "
  81.         read group
  82.         if grap -q $group /etc/group
  83.         then
  84.         echo "Grupa o podanej nazwie istnieje. Dodaję użytkowniak"
  85.         usermod -a -G $group $user
  86.         passwd $user
  87. else
  88.         echo "Grupa o podanej nazwie nie istnieje. Utwórz grupę za pomocą opcji nr 3 w menu. "
  89.         fi
  90. fi
  91. else
  92.         echo "Nie masz uprawnień administratora, by korzystać z tej funkcji!!!"
  93. fi
  94. sleep $dela_time
  95. }
  96.  
  97. #Funkcja Któa pobiera i przetwarza plik
  98. get_file()
  99. {
  100. mkdir ~/repository
  101. check=$(ls ~/repository -A | wc -1)
  102.         if [check -gt '0'] ; them
  103.                 echo "W wybranym katalogu znajdują się pliki. CZy chcesz je usunąć (y|n)>"
  104.                 redy answer    
  105.                 if [ $answer = 'y' ] them
  106.                         rm -r ~/repository/*
  107.                         echo "Usuwam Zawartoś katalogu repozytorium"
  108.                         wegt http://corecontro.cba.pl/linuxlab.tar -P ~repository
  109.                         echo "Pobieram plik linuxlab.tar..........>"
  110.                         tar xvf ~/repository/linuxlab.tar ~/repostory
  111.                         echo "Pliki zostały wypakowane do katalogu repozytorium"
  112.                         make_tree
  113.                 else
  114.                         echo "Zawartość katalogu repository została usunięta. Przerywam działąnie$"
  115.                         fi
  116.         else           
  117.                         wegt http://corecontro.cba.pl/linuxlab.tar -P ~repository
  118.                         echo "Pobieram plik linuxlab.tar..........>"
  119.                         tar xvf ~/repository/linuxlab.tar ~/repostory
  120.                         echo "Pliki zostały wypakowane do katalogu repozytorium"
  121.                         make_tree
  122. read -p "Wciśnij dowolny klawisz aby kontynuować....>"
  123.  
  124.  
  125. #Funkcja tworząca drzewo z pliku katalogi.txt
  126. make_tree()
  127. find ~/repository/linuxlab -name katalogi.txt
  128. if [ $? -eq 0 ]; then
  129.         echo "Plik o nazwie katalogi txt."
  130.         if [ -d ~/contetn ] ; them
  131.         echo "$Ścieżka content na podkatalogu istnieje. CZy chcesz usunąc jej zawartość (y|n)"
  132.         read answer
  133.         if [ $answer = "y"] ; then
  134.                 rm -r ~/content
  135.         mkdir ~/countent
  136.         echo "Usuwan zawartość katalogu content......"
  137.         xargs -I {} mkdir -p ~/countent/{} < ~/repository/linuxlab/katalogi.txr
  138.         echo "Drzewo podkatalogu zostało utworzone. Przerywam działanie funkcji!!!"
  139.         else
  140.         echo "Zawartośćkatalogu content nie zostanie usunięta. Przerywam działanie funkcji"
  141.         fi
  142. else
  143.         echo "Plik katalogi.txt nie istnieje. Przerywam działanie funkcji"
  144. fi
  145. sleep $delay_time
  146. }
  147.  
  148. #Funkcja, która wyszukuje wprowadzone słowo w plikach tekstowych z pobranego katalogu
  149.  
  150. echo "c.d.n"
  151.                

Replies to Linux Zadanie rss

Title Name Language When
Re: Linux Zadanie Paweł Ciążyński bash 3 Years ago.