BASH
Z Wikibooks, biblioteki wolnych podręczników.
Spis treści |
[edytuj] Sposoby pracy
[edytuj] Ręczne wpisywanie poleceń
W konsoli wpisujemy :
which bash
otrzymujemy odpowiedź gdzie jest program obsługujacy wiersz poleceń naszej powłoki :
/bin/bash
Sprawdzamy wersję BASH'a :
/bin/bash --version GNU bash, version 4.2.8(1)-release (x86_64-pc-linux-gnu) Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
[edytuj] Skrypty
Polecenia możemy
- zapisać do pliku tekstowego (rozpoczynającego się od magicznych znaków [1]) zwanego skryptem , np. g
- nadać mu atrybut wykonywalnosci :
chmod +x g
- uruchomić plik znajdujący się w aktualnym katalogu :
./g
[edytuj] Tworzenie animowanego gifa
Przykładowy skrypt uruchamiający komendy z biblioteki ImageMagic tworzące z plików pgm animowany gif :
#!/bin/bash # script file for BASH # which bash # save this file as g # chmod +x g # ./g i=0 # for all pgm files in this directory for file in *.pgm ; do # b is name of file without extension b=$(basename $file .pgm) # change file name to integers and count files ((i= i+1)) # convert from pgm to gif and add text ( level ) using ImageMagic convert $file -pointsize 50 -annotate +10+100 $b ${i}.gif echo $file done echo convert all gif files to one animated gif_file convert -delay 50 -loop 1 %d.gif[1-$i] aa${i}.gif # convert -delay 50 -loop 0 %d.gif[1-$i] b${i}.mpg # it needs ffmpeg # ffmpeg2theora %d.gif --framerate 12 --videoquality 9 -o output129.ogv echo b${i} OK # end
[edytuj] Zmiana nazwy plików
Możemy wykorzystać komendy :
lub skrypt :
#!/bin/bash # script file for BASH # which bash # save this file as r # chmod +x r # ./r # for all pgm files in this directory # for all pgm files in this directory for file in *.pgm ; do # remove first 3 chars from old file name newfile=${file:3} # change name of file mv $file $newfile echo $newfile done echo OK # end
[edytuj] Skróty klawiaturowe
| Polecenia BASH'a | Skrót klawiszowy | Opis polecenia |
|---|---|---|
| SIGTSTP | Ctrl-Z | zatrzymuje ( kończy) proces |
| SIGINT | Ctrl-C | zawiesza proces ( pauza) |
[edytuj] Zmienne środowiskowe
Opis w wikipedii [2]
[edytuj] PATH
Wyświetlamy wartość zmiennej PATH:
echo $PATH
Zmieniamy czasowo wartość zmiennej PATH :
PATH="$HOME/.cabal/bin:$PATH"
W celu stałej zmiany warości zmiennej PATH dla danego użytkownika należy powyższą instrukcję dodać do swojego pliku
~/.profile
lub
~/.bash_profile
lub
~/.bash_login
Edycja pliku jest możliwa po otwarciu go w trybie administratora.
| Klasa użytkowników | plik |
|---|---|
| aktualny | $HOME/.bash_profile |
| wszyscy oprócz su | /etc/profile |
| su (root) | /root/.bash_profile |
[edytuj] System
Informacje o procesorze :
cat /proc/cpuinfo