chaep

本文介绍了Shell脚本中的不同注释方法,包括使用HereDocuments进行多行注释,以及如何避免注释内的语法错误。此外还展示了如何通过case命令生成菜单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Talk is cheap,show me the code!

 { job;/sbin/halt -p; }

关于shell脚本中提醒用法及参数输入

if [[ $# -ne 1 ]] then

  echo -e "Usage:./$0 arguments-list"

exit 1

fi

把shell多行注释掉,有如下方法:

第一种:基于Here Documents和:实现

如果被注释的内容中有反引号会报错

  1. :<<BLOCK
  2. ....被注释的多行内容
  3. BLOCK


解决注释中有反引号的问题

  1. :<< 'BLOCK
  2. ....被注释的多行内容
  3. BLOCK'

或者干脆只留单引号

  1. :<< '
  2. ....被注释的多行内容
  3. '


第二种:当注释内容中有括号时报语法错误错,但里面有反引号,引号时没有问题

  1. :||{
  2. ....被注释的多行内容
  3. }


第三种:会对注释内容中的括号引号等语法错误报错

  1. if false ; then
  2.  ....被注释的多行内容
  3.  fi



---------------------------------- 华丽的分割线 -------------------------------------


here 文档与重定向输入

    here 文档 为需要输入数据的程序(如 mail sor 或cat) 接收内置文本,
直至用户自定义的休止符。

$ cat << FINISH
> Hello there $LOGNAME
> The time is `data`
> If you want to know who is god, type "echo \$LOGNAME"
> FINISH

here 文档常被shell脚本用来生成 菜单 或 被用来 多行注释



用 here 文档 和 case 命令生成菜单

# file ./profile

echo "select a terminal type: "
cat << ENTER
    1)    vt 120
    2)    wyse50
    3)    sun
ENTER

read choice

case "$choice" in
1)    TERM=vt120
    export TERM
    ;;
2)    TERM=wyse50
    export TERM
    ;;
3)    TERM=sun
    export TERM
    ;;
esac

echo "TERM is $TERM"

posted on 2013-11-03 10:21 秦瑞It行程实录 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/ruiy/p/code.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值