当前位置:  技术问答>linux和unix

关于shell编程中取字节数的问题,在线等请高手指点。

    来源: 互联网  发布时间:2017-02-08

    本文导语:  本帖最后由 zhang_yugang 于 2012-03-05 09:42:47 编辑 我在做SEHLL编程时,遇到了一个非常棘手的问题,就是字符串(任意字符全角半角都会有,数字也有,符号也有)前面补足 16位,不足16位的补空格。这样我就必须先知道我的字符...

本帖最后由 zhang_yugang 于 2012-03-05 09:42:47 编辑
我在做SEHLL编程时,遇到了一个非常棘手的问题,就是字符串(任意字符全角半角都会有,数字也有,符号也有)前面补足

16位,不足16位的补空格。这样我就必须先知道我的字符串的字节数。LINUX中也没有一个合理的求字节的函数。类似于

windows系统中,全角两个字节,半角一个字节。最终采用了下面的方式。


我用awk处理一个文件,求文件中的某一列的字节长度(不是字符个数,也不是单纯的字节长度,而是全角算2位,半角算1

位)。因为字符编码要转换为SJIS-WIN,这里的处理要传给shell通过wc -c来解决,不能用awk内置的函数length来求字符长

度,否则求的长度不准确。

代码如下:

cmd="echo ""$11 NR"" | iconv -t SJIS-WIN |wc -c"; cmd| getline lena;a=sprintf("%-"16-lena"s","");

最终在处理时,一列中没有重复的或者重复的在一起没有问题,但是一列中重复与重复的之间有别的字符就会错误。第二个重

复的会参照它紧挨得上面的字符的长度。

测试用例:

我是菜鸟求帮助  ,
我是菜鸟求帮助  ,
帮助           ,
我是菜鸟求帮助            ,

上面数据中最后一列很明显补的长度参照了他紧挨着的上面的长度16-4=12。最终被错误的补了12个空格。

|
lz举例说明吧

什么文本?最终要什么输出效果?

|
awk '{printf "%-16s,n", $0}' yourfile

    
 
 

您可能感兴趣的文章:

  • 控制shell脚本输出的字节数
  • 请朋友们指点一下我买什么shell书好?
  • 高手指点一下吧,shell里老多出一个'
  • 求shell大牛指点
  • .net/c#/asp.net iis7站长之家
  • shell问题,求高手指点
  • 求高手指点shell字符串变量赋值问题!
  • 求高手指点shell导入.dat文件到ORACLE数据库
  • linux shell tar 打包问题?求指点(新手)
  • linux 中用shell编写程序时遇到的一个问题,请高手指点!!!!
  • ubuntu下 .自己写shell,想 实现命令回溯功能 ,望 高手指点 ...
  • 初次写shell,,高手进来指点
  • 新手学shell,求指点
  • 求一个生成学生名单的shell脚本 ,请大家指点一下
  • 我写的shell编程出来的结果不是我想要的,请高手指点
  • 新人 求解两个SHELL语句!请指点
  • shell进程退出,其子进程怎样才能不死,交给init进程管,谢谢,请指点下我写的程序
  • 跪求shell脚本高手指点--sed grep 命令
  • 我想通过shell,定时去连接IE网址,不知道这个能不能做?请高手指点
  • 请大仙们指点---关于linux shell中括号的一点疑问。
  • 本人新手想写个shell脚本 其中一段内容想替换某文件中某一行文字为变量但用sed未能成功请大家指点。
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • 请问什么是shell编程?一般都用shell编程实现什么?
  • 请教一个shell编程的问题,就是如何在shell编程中读一个文件的内容?谢谢啦!
  • Linux下的编程指的就是Shell编程吗?
  • 那里有《shell编程》和关于curses编程的教程可以下载,请帮忙?
  • C编程与shell编程有什么区别,两者有没有从属关系?
  • Linux C编程一站式学习,高级shell Bash脚本编程指南,
  • shell 编程 执行shell新建多个终端 并执行程序
  • Linux命令、编辑器与Shell编程 和 UNIX SHELL范例精解(第4版) 区别大么?
  • Shell编程的,可以在shell中访问多行的属性吗?如:
  • 刚学Shell编程,问个关于Shell中if语句的问题
  • 如何学UNIX的SHELL编程
  • 请推荐基本shell编程书籍
  • 请大家推荐一本shell编程方面的书
  • 给我推荐点shell编程的学习资料。
  • 谁有linux shell编程方面比较好的语法资料哦?
  • 关于Shell编程???
  • 学好SHELL编程能从事什么职业?
  • 关于shell脚本编程
  • 关于shell编程的小问题
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • shell变量和子shell的问题请教
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 请问“当前shell”和“子shell”的区别?
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3