script de shell (2)

Ahora sé lo que hace el caparazón. Después de experimentarlo por un tiempo, echemos un vistazo a la composición del caparazón, como la composición de Java.

 

1. Variables

Una variable en un script de shell puede ser un valor, un comando o una ruta . El formato para definir una variable es: nombre de la variable = valor de la variable, el símbolo $ debe agregarse al hacer referencia a la variable en el script

El siguiente ejemplo agregará variables

  #!/bin/bash
## In this script we will use variables.
## Writen by homey 2019-11-13

    d=`date +%H:%M:%S`				#反引号的作用是将引号内的字符串当成shell命令执行,返回命令的执行结果
    echo "The script begin at $d." #引用变量前面要加$
    echo "Now we'll sleep 2 seconds."
    sleep 2 #睡2秒再执行下面
    d1=`date +%H:%M:%S`
    echo "The script end at $d1."

Corre y compruébalo por ti mismo.

 

2. Operaciones numéricas

El siguiente ejemplo agregará operaciones

#! /bin/bash 
## For get the sum of two numbers.
## Writen by homey 2019-11-13

a=1
b=2
sum=$[$a+$b]  #数学计算要用[]括起来,并且前面要加上符号$。
echo "$a+$b=$sum"

Dirigido por mí mismo

 

3. Interactuar con el usuario

#!/bin/bash
## Using 'read' in shell script.
## Writen by homey 2019-11-13

    read -p "Please input a number:" x
    read -p "Please input another number:" y
            sum=$[$x+$y]
    echo "The sum of two numbers is:$sum"

Ejecútalo tú mismo para experimentarlo.

 

4. Variables preestablecidas de script de Shell

#!/bin/bash
## 测试预设变量
## Writen by homey 2019-11-13

    sum=$[$1+$2]
    echo "sum=$sum"

El resultado es

cosun@cosun:/usr/local/sbin$ ./test4.sh 5 46
sum=51

$1Representa el primer parámetro del $2script , representa el segundo parámetro del script , y así sucesivamente .

No hay límite para el número de variables preestablecidas en un script $0, además , representa el nombre del script en sí .

 

5. Juicio lógico en el script de Shell

Este script de shell todavía es diferente de nuestro java, por favor vea abajo

#!/bin/bash 

read -p "Please input you score: " a
if ((a<60));then
        echo "You didn't pass the exam."
elif ((a>=60)) && ((a<90));then				# elif相对if,再做一次判断
        echo "Good!You passed the exam."
else
        echo "Very good!Your score is very high."
fi

El análisis de tamaño numérico además se puede utilizar(( )) fuera de la forma, también se puede usar [], pero no >, <, =un símbolo tal, y al uso de -lt(menor que), -gt(mayor que), -le(o menos), -ge(mayor que o igual a), -eq(igual a), -ne(No es igual a) . Mira lo que te gusta usar.

Además de if, también puedes usar case

#!/bin/bash

read -p "Input a number: " n
a=$[n%2]
case $a in
1)
        echo "The number is odd."				# odd:奇数
        ;;
0)
        echo "The number is even."				# even:偶数
        ;;
*)
        echo "It's not a number!"
esac

caseLas secuencias de comandos a menudo se utilizan para escribir secuencias de comandos de inicio para los servicios del sistema .

6. Bucles en el caparazón

#!/bin/bash 

for i in `seq 1 5`; do				# seq 1 5 表示从1到5的一个序列
        echo $i
done

O mientras bucle

#!/bin/bash 

a=6
while [ $a -ge 1]
do
        echo $a
        a=$[$a-1]
done

7. Funciones en shell

#!/bin/bash

function sum()
{
        sum=$[$1+$2]
        echo $sum
}
sum $1 $2				#预设变量$1 $2

Todos pueden jugar libremente, luego unirse a un descanso o continuar o incluso salir del shell

De hecho, al igual que nuestro lenguaje de programación JAVA actual, el shell es solo una entrada aquí, puede profundizar si lo desea.

Finalmente, gracias de nuevo:

https://blog.csdn.net/miss1181248983/article/details/81278937

Básicamente sigo su blog para practicar.

51 artículos originales publicados · Me gusta 4 · Visitante 7897

Supongo que te gusta

Origin blog.csdn.net/u012174809/article/details/103044542
Recomendado
Clasificación