
linux
ak47jp
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从shell里面取得oracle系统时间
在shell里面通过调用sqlplus取得oracle系统时间并返回shell的一种方法 #!/bin/shtoday=`sqlplus -l -s ${LOGON} << EndOfSQL whenever sqlerror exit 1 ROLLBACK set heading off s...原创 2015-02-05 12:30:35 · 324 阅读 · 0 评论 -
sed 替换固定长文件中的字段
通过sed替换固定长文件中某个位置开始的字符串比如要把从第100个字节开始的8个字符替换成今天的日期,代码应该如下 #!/bin/shin_file=./xxx.inout_file=./xxx.outtoday=20150101sed -e "s/\(^.\{99\}\)[0-9]\{8\}\(.*\)/\1${today}\2/" ${in_file}...原创 2015-02-06 12:31:05 · 403 阅读 · 0 评论 -
把linux环境设置成shift-jis日语编码环境
linux默认语言编码环境是UTF8,要设置成shift-jis日语环境要做以下处理。 1. 追加sjis的locale # localedef -f SHIFT_JIS -i ja_JP /usr/lib/locale/ja_JP.SJIS 2. 确认是否追加成功 # locale -a |grep ja应出以下结果ja_JPja_JP.SJIS...原创 2015-02-09 12:21:55 · 3854 阅读 · 1 评论 -
Linux平台上编译proc*c 代码用的Makefile
自用的用来编译pro*c 代码的makefile, 包括2个部分,一个是common.mak, 定义一些共通属性,一个则是用来编译main程序。 1. common.mak.SUFFIXES: .pc .cvpath %.h ../incvpath %.tbl ../tblCC = gccPROC = procLD = ldRM = rm -fDE...原创 2015-02-12 12:06:55 · 796 阅读 · 0 评论 -
linux平台上用C读取csv文件
linux平台上用C读取csv文件一种方法, 但是对NULL项目无效,比如两个连续逗号的项目。 fscanf和scanf的格式里面,可以用%[^...]来指定读取除括号以外的文字。 比如有如下csv文件test01,10,11,1.0,1.1test02,20,21,2.0,2.1test03,30,31,3.0,3.1 那么读取CSV文件的代码如下#...原创 2015-02-12 12:33:13 · 2018 阅读 · 0 评论 -
使用shell按行读取文件
在shell里面,按行读取文件得注意设置环境变量IFS,否则无法正确读入。具体例子如下 OLDIFS=$IFSIFS=$'\n'xxx_file=/home/xx/xxx.txtin_file=/home/xxx/xxx.infor pattern in $(cat ${xxx_file})do grep -v -e $pattern ${in_...原创 2015-02-16 12:24:08 · 356 阅读 · 0 评论 -
awk 对固定长度文件的操作
在shell里面,需要对输入文件进行一些比较复杂的逻辑判断的时候,就有可能用到awk了。例如,如果某固定长文件,第86列开始的4个字节是年份,只抽出年份>2014的行的时候,代码如下 #!/bin/shin_file=/home/xxx/xxx.inout_file=/home/xxx/xxx.outyear=2014cat ${in_file} |...原创 2015-02-18 12:26:33 · 851 阅读 · 0 评论 -
shell里面用tee写log时return code问题
shell里面,常出现程序执行结果既要往终端输出,又要往log文件输出的情况,这时候一般都使用tee。例如:#!/bin/shcommand | tee -a out.txtST=$? 但是现在变量ST里设置的返回值是tee命令的返回值,而不是command的返回值, 所以出现即使command执行结果出错,可变量ST的值仍是正常0的情况。 解决办法...原创 2015-02-19 12:45:09 · 943 阅读 · 0 评论