代码:
#!/bin/sh# 本书中有非常多的方法来解决这种echo问题。其中我最喜欢的方式非常简洁:function echon{ echo "$*" | awk '{printf("%s", $0)}' #注意,原文中,是没有括号的,经测试,我是用的awk版本不支持,所有加上括号,仿C}# 你可能想要避免上面的内部调用awk命令的方法,不过,如果你有一个用户级的printf命令的话# 也可以用它来代替:echon(){ printf "%s" "$*"}# 如果你没有printf命令,也不想调用awk,那么请使用tr命令:echon(){ echo "$*" | tr -d "\n" # 参数请参考手册页}# 这个tr命令的版本是非常有效简单的运行脚本: 使用该脚本时,只需要在调用echo命令时用用echon简单的替换下就行了,这样就不会自动换行了。
#!/bin/sh function echon { echo "$*" | awk '{printf("%s", $0)}' } echon "Enter coordinates for satellite acquisition:" echo "HH" exit 0输出: ./poorEcho.sh Enter coordinates for satellite acquisition:HH