linux shell program summary

from:Sep 23 2016


mathematical operation:

floating number,bc calculator:

we can also use bc in shell scripts:


if - then - else

number comparison:

              n1 -eq n2

              n1 -ge n2

              n1 -gt n2

              n1 -le n2

              n1 -lt n2

              n1 -ne n2

if - then - elif, notice that the second elif won't be executed, though it's also right.


strings comarison:

                          str1 = str2

                          str1 != str2

                          str1 < str2

                          str1 /> str2

                          -n str1

                          -z str1


 using file comparisons:

                  -d file    checks if file exists and is a dictory

                       -e file    checks if file exists

                       -f file     checks if file exists and is a file

                       -r file     checks if file exists and is readable

                  -s file     checks if file exists and is not empty

                       -w file    checks if file exists and is writable

                       -x file     checks if file exists and is executable

                       -o file     checks if file exists and is owned by the current user

                       -G file    checks if file exists and the default group is the same as the current user

                        file1 -nt file2   checks if file1 is newer than file2

                        file1 -ot file2   checks if file1 is older than file2


 considering compound testing


working with advanced if-then features

          ((expression))

                   var++

                   var--

                   ++var

                  --var

                  !              logical negation

                 ~              bitwise negation

                 **             exponentiation

                 <<

                 >>

                 &

                 |

                 &&

                  ||

notice the '++' of the screenshot.

it's writen of var++ not $var++


using double brackets

          [[ expression ]]

 the double bracket command provides advanced features for string comparisons---pattern matching.


Considering the case command:

case variable in

pattern1 | pattern2) command1;;

pattern3) command2;;

*) default commands;;

esac


 The for command:


 The while command:


The until command:

猜你喜欢

转载自blog.csdn.net/sonnadolf/article/details/52662285