Giriş
Bazı değişken isimleri BASH_XYZ şeklinde isimlendirilmiş. Bunlar tamamen bash'e mahsus.
BASHPID değişkeni
Açıklaması şöyle
Şöyle yaparız
Açıklaması şöyle.
Şöyle yaparız.
BASH_VERSINFO Değişkeni yazısına taşıdım.
SECONDS değişkeni
Açıklaması şöyle.
Şöyle yaparız
Bazı değişken isimleri BASH_XYZ şeklinde isimlendirilmiş. Bunlar tamamen bash'e mahsus.
BASHPID değişkeni
Açıklaması şöyle
Expands to the process ID of the current bash process. This differs from $$ under certain circumstances, such as subshells that do not require bash to be re-initialized. Assignments to BASHPID have no effect. If BASHPID is unset, it loses its special properties, even if it is subsequently reset.Örnek
Şöyle yaparız
printf '%s\n' "$BASHPID"
true | while true; do
eval 'printf "%s\n" "$BASHPID"'
break
done
BASH_SUBSHELL değişkeniAçıklaması şöyle.
ÖrnekBASH_SUBSHELL
Incremented by one within each subshell or subshell environment when the shell
begins executing in that environment. The initial value is 0.
Şöyle yaparız.
$ echo $BASH_SUBSHELL
0
$ (echo $BASH_SUBSHELL)
1
BASH_VERSINFO değişkeniBASH_VERSINFO Değişkeni yazısına taşıdım.
SECONDS değişkeni
Açıklaması şöyle.
ÖrnekSECONDS
Each time this parameter is referenced, the number of seconds since shell invocation is returned.
Şöyle yaparız
bash -c 'a=$SECONDS; sleep 5; b=$SECONDS; printf "%d seconds passed\n" "$((b-a))"'
Örnek
Bu değişkeni kendimiz değer atarsak beklenilen sonuç elde edilmez.Şu kod yanlış.
Bu değişkeni kendimiz değer atarsak beklenilen sonuç elde edilmez.Şu kod yanlış.
#!/bin/bash
SECONDS=5
i=1
while true
do
echo "`date`: Loop $i"
i=$(( $i+1 ))
sleep $SECONDS
done
Hiç yorum yok:
Yorum Gönder