Unix-Oracle 编程开发使用技巧

  既然现在做BI了,所以需要经常和Unix,oracle  ,甚至informatica等打交道了。当然了,遇到了很多的问题,还好一一都得到了解决。现在,我把其中的一些实用技巧总结出来,以供大家参考。大家有更好的方法,不妨指点一下,谢谢!

 
 Unix 方面:                                                       
创建一个空文件:>newfilename
查看系统信息:uname -a
复制文件夹,主要是含有子文件夹的情况:cp –rf src_dir dest_dir
删除文件夹,主要是文件夹不为空的情况:rm –r mydir
从某个字符串中删除某个字符左边内容:
从某个字符串中删除某个字符右边内容:
remove the left context of ‘_’ from a string : ##*_
remove the right context of ‘.’ from string:%%.*
eg:
vf =”abc.log”
echo ${vf%%.*}_`date +%Y%m%d`.${vf##*.}
    abc_20071009.log                   
 cp $vf ${vf%%.*}_`date +%Y%m%d`_bak.${vf##*.}
   abc_20071009_bak.log
VI的使用:
常用快捷健:
    M         移至视窗的中间那列
         L          移至视窗的最后一列
         G          移至该档案的最后一列
         nG         移至该档案的第n列
         n+         移至游标所在位置之后的第n列
         n-        移至游标所在位置之前的第n列
         <ctrl><g>   显示该行之行号、档案名称、档案中最末之行号、游标所在行号占
                    总行号之百分比
7.1       如何设置vim自动显示行号?
在每个用户的主目录下,都有一个 vi 的配置文件".vimrc"或".exrc"
用户可以编辑它,使这些设置在每次启动 vi 时,都有效.
例如,加入如下设置行:
set nu 显示行号
set nonu 不显示行号             
set ic 查找时不考虑大小写
set noic 查找时考虑大小写
 
8          脚本中使用位置参数,只是显示文件名:
$pg param1
#!/bin/bash
echo “This is $0 calling”
echo “This is `basename $0` calling”
9          使用数组:
a=(a bb ccc)
echo ${#a[*]} #print size of array a
echo ${a[*]} #print all the elements of a
echo ${a[1]} #print the 2nd element
echo $[#a[1]] #print the length of the 2nd element
 
10      操作进程:
暂停一个进程:<ctrl> + z        
查看所有job: jobs
把某个暂停的进程放到后台继续运行:bg 1
把某个后台运行的进程放到前台运行:fg 1
11      正则表达式:
11.1   /<,/> 正则表达式中的单词边界.如:
bash$grep '/<the/>' textfile
12      字符替换:
tsgsd00175:/afs/ae.ge.com/informatica/ardw/dev/bin/test# echo "hello"|tr 'a-z' 'A-Z'
HELLO
13      。。
 
Oracle 方面:
1          函数
1.1       Date 函数:
pl/sql 中, trunc 函数返回由指定测量单位截取的时间值。
trunc
函数的语法如下:
      trunc(date, [format])
date
就是要被截取的时间值。
format
是用于截取的测量单位。如果省略的话 date 将被截取到 day 的精度。
format
参数表:
   unit                                          valid format parameters
   Year                              SYYY,YYYY,YEAR,SYEAR,YYY,YY,Y
   ISO YEAR                                       IYYY,IY,I
   Quarter                                                      Q
   Month                                       MONTH,MON,MM,RM
   Week                                                      WW
   IW                                                            IW
   W                                                             W
   Day                                                      DDD,DD,J
   Start day of week                                 DAY,DY,D
   Hour                                                HH,HH12,HH24
   Minute                                                    MI
例子:
trunc(to_date("22-AUG-03"), "YEAR")      
返回 ‘01-JAN-03’
trunc(to_date("22-AUG-03"), "Q")      
返回 ‘01-JUL-03’
trunc(to_date("22-AUG-03"), "MONTH")      
返回 ‘01-AUG-03’
trunc(to_date("22-AUG-03"), "DDD")      
返回 ‘22-AUG-03’
trunc(to_date("22-AUG-03"), "DAY")      
返回 ‘17-AUG-03’
SELECT trunc(SYSDATE)FROM dual;
1.2       ..
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值