Difference between revisions of "Bash:Variables"

From wiki
Jump to navigation Jump to search
Line 1: Line 1:
 
Bash is a *nix shell. Much more is still in [https://unix.antiperfect.org the antiperfect unix site].
 
Bash is a *nix shell. Much more is still in [https://unix.antiperfect.org the antiperfect unix site].
 +
 +
;echo -n <string>
 +
:Print <string> without newline
  
 
To check within a startup script (like .bashrc) whether or not Bash is running interactively. Test if $- has an 'i' in it or if $PS1 (the prompt) exists.
 
To check within a startup script (like .bashrc) whether or not Bash is running interactively. Test if $- has an 'i' in it or if $PS1 (the prompt) exists.

Revision as of 12:37, 16 January 2019

Bash is a *nix shell. Much more is still in the antiperfect unix site.

echo -n <string>
Print <string> without newline

To check within a startup script (like .bashrc) whether or not Bash is running interactively. Test if $- has an 'i' in it or if $PS1 (the prompt) exists.

case "$-" in
*i*)	echo This shell is interactive ;;
*)	echo This shell is not interactive ;;
esac

if [ -z "$PS1" ]; then
        echo This shell is not interactive
else
        echo This shell is interactive

Arithmetics

Bash and ksh only work with integers.

+, -, *, /, %
add, substract, multiply, divide, modulo.
**
For bash, Exponentiation
10#00012
For bash, force the figure (00012) to be interpreted as decimal. Figures starting with 0 are considered octal by default.
expr <expr>
Voer expr uit, bij boolean wordt 1 (onwaar) of 0 (waar) gegeven
((VAR=x+y))
let VAR=x+y
VAR=$((x+y))
VAR=$(expr x + y)
Calculate and assign to VAR
let VAR+=2
Add two to VAR