ubuntu /bin/sh和/bin.bash在echo转义模式上的不同

最近在写操作系统作业时,希望使用echo命令输出后不换行

查询菜鸟教程得知使用echo -e 命令即可开启转义模式,从而实现输出不换行

 但在具体使用时,却出现了如下情况

使用-e选项时,虽未换行,但输出了-e字符,而不使用-e选项时,却自动开启了转义模式

将文件开头的#!/bin/sh换成#!/bin/bash后,得到结果如下

加-e选项后,echo输出不换行,不加-e选项时,\c未被转义,输出结果仍换行

我使用的虚拟机版本为Ubuntu 21.10,但在其他版本虚拟机上运行时,使用/bin/sh的运行结果正常,不加-e就默认不转义,加-e选项则转义

猜测可能我使用的Ubuntu系统中/bin/sh对echo默认开启转义模式,而/bin/bash对echo默认不开启转义模式

不太清楚为什么不同版本/bin/sh会有这种不同,先记录一下,之后若是找到答案了再回来记录。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值