#!/bin/bash 和 #!/bin/sh 的主要区别在于 #!/bin/bash 指定脚本应该由 Bash shell 执行, #!/bin/sh 指定脚本应该由任何 POSIX 兼容 shell 执行。 #!/bin/bash 将可以访问 Bash shell 的所有功能 #!/bin/sh 只会访问所有 POSIX 兼容 shell 中常见的功能。
一般来说,建议在编写 shell 脚本时使用 #!/bin/bash,因为这样可以确保脚本与最广泛的系统兼容。但是,如果你正在编写一个只在特定系统上使用的脚本,那么你可能希望使用 #!/bin/sh,因为这样会使脚本更具可移植性。
以下是一个使用 #!/bin/bash 的简单 shell 脚本示例:
#!/bin/bash
echo "Hello, world!"
当执行此脚本时,它将在控制台上打印消息 "Hello, world!"。
以下是一个使用 #!/bin/sh 的简单 shell 脚本示例:
#!/bin/sh
echo "Hello, world!"
当执行此脚本时,它也会在控制台上打印消息 "Hello, world!"。但是,它将无法访问 Bash shell 的所有功能,例如 for 循环和 if 语句。