【经验总结】linux命令巧用asc码

linux命令巧用asc码

by katana


    awk是一个大家经常用到的命令,特别是处理字符串的时候,例如生成一个sql文件,这个时候需要输出单引号:

    echo "13800138000"|awk '{print "update table set field=1 where user_num='"$0"';"}'

    执行结果:

    update table set field=1 where user_num=-bash;

    加上转义符:

    echo "13800138000"|awk '{print "update table set field=1 where user_num=/'"$0"/';"}'

    不能执行

    awk如何输出单引号了?可以使用asc码

    echo "13800138000"|awk '{print "update table set field=1 where user_num=/047"$0"/047;"}'

    执行结果:

    update table set field=1 where user_num='13800138000';

    再例如capricorn提到的问题:

    str=`echo "10/Mar/2009" | awk -F// '{print $1"///"$2"///"$3}'` 

    如果使用asc码,就不存在出错的问题了

    str=`echo "10/Mar/2009" | awk -F// '{print $1"/134/057"$2"/134/057"$3}'` 

    echo -e命令可将asc转换为字符

    查看asc码对应的字符,可使用以下语句:

    i=1

    while [ $i -lt 500 ]

    do

       echo -e "$i : //$i"

       i=$(($i+1))

    done

    下面把常用的asc码对应的字符给大家分享一下:

    041:!

    042:"

    043:#

    044:$

    045:%

    046:&

    047:'

    040: (空格)

    077:?

    072::

    073:;

    074:<

    075:=

    076:>

    012:/n(换行)

    011:TAB

    051:)

    052:*

    053:+

    054:,

    055:-

    056:.

    057:/

    100:@

    134:/

    140:`

    174:|


    本文原创自无线技术运营空间: http://wireless.qzone.qq.com 及 http://blog.csdn.net/wireless_tech (专注无线技术运营——无线技术(操作系统/数据库/WEB前端/负载均衡/系统容灾/系统安全/短信接入/WAP接入/3G等)、无线业务运营、无线开放平台、统计分析(用户行为分析/数据挖掘)、CP合作,联系我们:1780551083@qq.com)

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值