Debian12的#!bash #!/bin/bash #!/bin/env bash #!/usr/bin/bash #!/usr/bin/env bash

bash脚本开头可写成 #!/bin/bash , #!/bin/env bash , #!/usr/bin/bash , #!/usr/bin/env bash

  • #!/bin/bash , #!/usr/bin/bash
  • #!/bin/env bash , #!/usr/bin/env bash

Debian12的 /bin/usr/bin 的软链接, /sbin/usr/sbin 的软链接, (Debian12默认没有ll命令,用的ls -l

root@88:~# ls -l /bin
lrwxrwxrwx 1 root root 7 Nov  1  2023 /bin -> usr/bin
root@88:~# ls -l /sbin
lrwxrwxrwx 1 root root 8 Nov  1  2023 /sbin -> usr/sbin

所以

  • #!/bin/bash#!/usr/bin/bash 是等价的,
  • #!/bin/env bash#!/usr/bin/env bash 是等价的

那么 #!/bin/bash#!/bin/env bash 有什么不同呢?

#!/bin/bash 是直接调用 bash 命令

#!/bin/env bash 是调用 env 命令, 且 bash 作为参数, 从而调用 bash

执行以下命令的效果一样, 都相当于执行了 bash 命令, 新开子bash

bash
/bin/bash
/usr/bin/bash
/bin/env bash
/usr/bin/env bash
  • 使用 env 调用 bash 提供了灵活性, 可以变化bash的位置或多版本,只要写到环境变量PATH就行。但也降低了安全性,比如将恶意的命名为bash的程序放入环境变量PATH并靠前 .

  • 直接调用 bash 则更加安全?(好像也牵强)

另外, 既然可以写成 #!/usr/bin/env bash 这样执行命令的形式,
那也可以写成 #!bash 这样的形式

可以写成这样

在这里插入图片描述

相关推荐

  1. debian12 使用技巧

    2024-06-18 07:40:03       41 阅读
  2. debian 12 配置VNC

    2024-06-18 07:40:03       12 阅读
  3. debian 12 安装 浏览器 Epiphany

    2024-06-18 07:40:03       37 阅读
  4. 【Vmware】 debian 12 安装教程

    2024-06-18 07:40:03       22 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 07:40:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 07:40:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 07:40:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 07:40:03       20 阅读

热门阅读

  1. AJAX 和 XML:现代 Web 开发的关键技术

    2024-06-18 07:40:03       8 阅读
  2. uniapp中防抖函数debounce的使用

    2024-06-18 07:40:03       6 阅读
  3. Python模拟车站检票系统

    2024-06-18 07:40:03       6 阅读
  4. mysql json查询去除值的引号

    2024-06-18 07:40:03       6 阅读
  5. 策略模式在springboot中的使用

    2024-06-18 07:40:03       7 阅读
  6. 力扣第205题“同构字符串”

    2024-06-18 07:40:03       5 阅读
  7. 堆排序!!

    2024-06-18 07:40:03       6 阅读
  8. [python学习]-- 类

    2024-06-18 07:40:03       6 阅读
  9. C和C++

    2024-06-18 07:40:03       4 阅读
  10. 【 Python 自动化脚本:高效管理文件和文件夹】

    2024-06-18 07:40:03       8 阅读
  11. Starknet架构之Starknet state、State commitment

    2024-06-18 07:40:03       6 阅读