shell编程基础

1.编写shell脚本的步骤

1.创建.sh文件,如myscript.sh。第一行中指定脚本应使用的shell。

#! /bin/bash

2.编写shell命令,每个命令占用一行。保存并退出。
3.将脚本文件设置为可执行文件。

chmod +x myscript.sh

4.运行脚本文件。

./myscript.sh

例:

#!/bin/bash
echo "Hello World!"

结果:

Hello World!

2.shell常用命令

2.1echo

在终端中打印文本。

echo "Hello, world!"

2.2read

从终端读取输入,并将其存储在变量中。

示例:提示用户输入其姓名,并将其存储在名为“name”的变量中。

echo "What is your name?"
read name

2.3for

执行一系列命令,针对列表中的每个项目执行一次。

示例:使用for循环在数字1到5之间进行迭代,并在每次迭代中打印数字。

for i in 1 2 3 4 5
do
    echo $i
done

2.4if

执行一系列命令,根据条件是否为真来选择要执行的命令。

示例:使用if语句检查文件是否存在,并在文件存在时打印一条消息。

if [ -e file.txt ]
then
    echo "The file exists."
fi

2.5while

执行一系列命令,只要条件为真就会一直执行。

示例:使用while循环在数字1到5之间进行迭代,并在每次迭代中打印数字。

i=1
while [ $i -le 5 ]
do
    echo $i
    i=$((i+1))
done

2.6case

根据匹配的模式执行一系列命令。

示例:使用case语句检查变量“option”的值,并根据匹配的模式执行不同的命令。

case $option in
    1)
        echo "Option 1 selected."
        ;;
    2)
        echo "Option 2 selected."
        ;;
    *)
        echo "Invalid option selected."
        ;;
esac

3.测试命令

  1. test
    测试条件是否为真。

    示例:使用test命令检查文件是否存在。

    if test -e file.txt
    then
        echo "The file exists."
    fi
    
  2. [
    测试条件是否为真。

    示例:使用[命令检查文件是否存在。

    if [ -e file.txt ]
    then
        echo "The file exists."
    fi
    
  3. [[
    测试条件是否为真。

    示例:使用[[命令检查字符串是否相等。

    if [[ $str1 == $str2 ]]
    then
        echo "The strings are equal."
    fi
    

4.其他命令

1. expr

计算数学表达式。

示例:使用expr命令计算1 + 2的值。

result=$(expr 1 + 2)
echo $result

2. bc

计算数学表达式。

示例:使用bc命令计算1.5 + 2.5的值。

result=$(echo "1.5 + 2.5" | bc)
echo $result

3. grep

在文件中查找匹配的文本。

示例:使用grep命令在名为“file.txt”的文件中查找包含“pattern”的行。

grep pattern file.txt

4. cut

从文本中提取字段。

示例:使用cut命令从名为“file.txt”的文件中提取第二列,并将其打印到终端。

  cut -f 2 file.txt

5. sort

对文本进行排序。

示例:使用sort命令对名为“file.txt”的文件中的行进行排序,并将结果写入名为“output.txt”的文件中。

sort file.txt > output.txt

6. uniq

从文本中删除重复的行。

示例:使用uniq命令从名为“file.txt”的文件中删除重复的行,并将结果写入名为“output.txt”的文件中。

uniq file.txt > output.txt

7. wc

计算文本中的行数、单词数和字符数。

示例:使用wc命令计算名为“file.txt”的文件中的行数、单词数和字符数。

```shell
wc file.txt
```

8. chown

更改文件或目录的所有者和组。
示例:使用chown命令将名为“file.txt”的文件的所有者更改为“user1”。

```shell
chown user1 file.txt
```

9. du

计算文件或目录的大小。

示例:使用du命令计算名为“file.txt”的文件的大小。

```shell
du file.txt
```

你可能感兴趣的:(嵌入式学习之路,linux,bash,服务器)