【脚本】UNIX平台orainstRoot.sh脚本作用
我们在使用Oracle Universal Installer(OUI)在UNIX平台上安装Oracle软件的快结束的时候会提示我们要执行orainstRoot.sh脚本。执行这个脚本目的是什么呢?以Linux平台的10g版本Oracle为例我们一起探索一下。[@more@]1.orainstRoot.sh脚本内容[root@secdb ~]# ls -l /oracle/oraInventory/orainstRoot.sh-rwxrwx--- 1 oracle oinstall 1614 Dec 21 2010 /oracle/oraInventory/orainstRoot.sh[root@secdb ~]# cat /oracle/oraInventory/orainstRoot.sh#!/bin/shAWK=/bin/awkCHMOD=/bin/chmodCHGRP=/bin/chgrpCP=/bin/cpECHO=/bin/echoMKD
Linux调整系统时间和时区的方法
1.找到上海时区文件 /usr/share/zoneinfo/Asia/Shanghai替换当前时区文件/etc/localtime即:# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime[@more@]2.修改/etc/sysconfig/clock文件# cat /etc/sysconfig/clockZONE="Asia/Shanghai"UTC=falseARC=false3.设定时间为2009年6月29日(以下多种形式均可)# date -s 06/29/2009# date -s 2009/06/29# date -s 20090629# date -s 2009-06-294.将系统时间设定成14:17:00# date -s 14:17:00(注:若一步到位的修改系统时间为2009年6月29日的14:17:00,可以使用下面的命令操作# d
Senior DBA 之必备vim技能
secoolerhttp://space.itpub.net/519536/viewspace-608647[@more@]Search/wordSearch “word” from top to bottom?wordSearch “word” from bottom to top/jo[ha]nSearch “john” or “joan”/<theSearch “the”, “theatre” or “then”/the>Search “the” or “breathe”/<the>Search “the”/<….>Search all words of 4 letters/<Andy>/Search “Andy” but not “HouAndy” or “AndyHou”/Andy|AnnaSearch “Andy” or “Anna”/<dddd>Search exactly 4 digits/^n{3}Find 3 empty lines:bufdo
【Shell】grep命令在结果集中显示绿色的字符
这是一个比较有趣的尝试这是一个可以提高效率的小尝试1.看一下我操作系统的版本信息:[root@testdb ~]# uname -aLinux testdb 2.6.18-53.el5xen #1 SMP Wed Oct 10 16:48:44 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux[@more@]2.要达到grep命令在结果集中显示绿色的字符的效果,仅仅需要做如下两个环境变量的设置即可export GREP_OPTIONS='--color=always'export GREP_COLOR='1;32'3.解释一下export GREP_OPTIONS='--color=always'效果是:grep到的关键字以默认的红颜色来显示export GREP_COLOR='1;32'此设置即表示颜色为绿色(32表示绿色)
【Shell】【find】使用find命令“完美”删除10天以上未修改的归档日志文件
find /arch/arch*.arc -ctime +10 -exec rm {} ;[@more@]
【LC】locale设置查询及相关环境变量含义及示例
1.查看当前本机的Locale设置情况ora10g@testdb /home/oracle$ localeLANG=zh_CN.GB18030LC_CTYPE="zh_CN.GB18030"LC_NUMERIC="zh_CN.GB18030"LC_TIME="zh_CN.GB18030"[@more@]LC_COLLATE="zh_CN.GB18030"LC_MONETARY="zh_CN.GB18030"LC_MESSAGES="zh_CN.GB18030"LC_PAPER="zh_CN.GB18030"LC_NAME="zh_CN.GB18030"LC_ADDRESS="zh_CN.GB18030"LC_TELEPHONE="zh_CN.GB18030"LC_MEASUREMENT="zh_CN.GB18030"LC_IDENTIFICATIO
【Shell】使用脚本实现数以千计HTML文件中图片名小写转换需求
文件名转为小写:for x in `find . -name "*.html"`do sed 's/images.*gif/L&/' $x | tee $xdone[@more@]
【Shell】使用date,expr,%,if等判断单双周
1.使用date命令的%U参数取得当前是全年的第几周man date中对%U参数的描述%U week number of year, with Sunday as first day of week (00..53)[root@RHEL53 ~]#date +%U09[@more@]2.使用expr的取模运算符%对周数取模2,结果为1表示是单周,结果为0表示是双周[root@RHEL53 ~]# dateTue Mar 3 12:33:20 CST 2009[root@RHEL53 ~]# date +%U09[root@RHEL53 ~]# dateTue Mar 3 12:36:05 CST 2009[root@RHEL53 ~]#ODD_EVEN=$(expr `date +%U` % 2)[root@RHEL53 ~]# echo $ODD_EVEN13.使用if条件语句进行判断,实操:[root@RHEL53 ~]# sh t
【Shell】统计文件里面特定字符串出现次数
secooler:http://space.itpub.net/519536/viewspace-605647下面三个方法都可以完成这个需求1.第一种方法:使用grep命令进行统计grep -o '字符串' file |wc -l[@more@]2.第二种方法:使用awk命令进行统计awk -v RS="@#$j" '{print gsub(/字符串/,"&")}' file3.第三种方法:另一种使用awk命令进行统计的方法awk '{s+=gsub(/字符串/,"&")}END{print s}' file上述方法测试结果如下:$ cat testselect selectselect$ grep -o 'select' test |wc -l3$ awk -v RS="@#$j" '{print gsub(/select/
【概念】【实验】Linux的硬链接(Hard Link)与符号链接(Symbolic Link)
secooler:http://space.itpub.net/519536/viewspace-5911751.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。[@more@]【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防
每一千行UPDATE语句后插入一条COMMIT语句的编辑方法
secooler:http://space.itpub.net/519536/viewspace-665103提问:如何在一个具有几万行update语句的脚本中实现每1000条SQL语句后面输入一个“commit;”语句?[@more@]思考时间……继续思考…………几种方法,抛砖在此,待玉到来。1.如果喜欢使用Vi的朋友可以尝试如下命令:%s/v(.*n){1000}/&commit;r2.如果是喜欢使用UE的朋友可以使用“宏”来完成(当然,Vi也可以使用录制宏的方法来实现)。欢迎大家提供自己的妙招。
sed使用心得-secooler
secoolerhttp://space.itpub.net/519536/viewspace-558364sed 是一种UNIX/LINUX 平台下的轻量级流编辑器,日常一般用于处理文本文件。sed 有许多很好的特性。首先,它相当小巧;其次, sed 可以配合强大的 shell 完成许多复杂的功能。在我看来,sed完全可以看成一个脚本解释器,用类似于编程的手段完成许多事情。[@more@]sed简单示例sed命令的格式是sed [-options] [command] [stdin]比如这个例子$ sed –e ‘d’ ./Mydir/Myfile执行该命令,将得不到任何输出。在该例中,用一个编辑命令 'd' 调用 sed;sed 打开 ./Mydir/Myfile 将一行读入
awk sed grep find sort常用配搭用法
secooler itpubhttp://space.itpub.net/519536/viewspace-557309
vim 必备命令
vi命令,引用了secooler的itpub空间地址: http://space.itpub.net/519536/viewspace-608647
聚焦的力量
我们难以达成理想的一个原因是我们缺少指引,我们从不凝聚我们的力量。大多数人辗转奔波,从没有想过要掌握某种特长。如果你集中精力去实现那些对你来说最重要的目标,排除其他干扰因素,你将会达成理想。问题是干扰因素如此之多。胜利者和失败者的区别就在于胜者可以集中精力完成目标。胜利者主攻专长,他们甚至对大事情忽略不计,因为他们必须完成对他们来说最重要的理想。凝聚是成功的密钥,当我们凝聚了所有的力量用于掌握我们人生中的单一领域之时,大多数的人对这种超能力一无所知。你有干大事的超能力,关键是你若能集中精力,你就
Cannot restore segment prot after reloc:Permission denied
假设文件:/u01/oracle/lib/libclntsh.so.11.1 (这个文件视具体执行文件.)[@more@]1)编辑/etc/selinux/config:SELINUX=enforcing注释掉:#SELINUX=enforcing ,然后新加一行为:SELINUX=disabled2) chcon -t texrel_shlib_t /u01/oracle/lib/libclntsh.so.11.1 ---------------------------------------------------------------------------------
linux下repair filesystem模式修复方法实践
第一种情况:非正常关机引起的磁盘分区问题 不能正常进入系统?用fsck /dev/hdaX后reboot进入,或只用fsck来修复,只管y回车.[@more@]第二种情况:由于/etc/fstab文件编辑错误 而引起的不能正常进入系统?解决方法就是修改/etc/fstab文件成原来正常格式 删除错误的或者是不存在的挂载目录操作:根据提示进入修复模式 Login incorrect.(Repair filesystem) 1 # vim /etc/fstab但是修复模式下(read-only system) 文件是被保护的不能修改 运行下面命令 把系统文件权限改成可读写(rw)(Repair filesystem) 1 # mount -o remount,rw /使根目录
8个DBA最常用的监控Oracle数据库的常用shell脚本--转
一.8个重要的脚本来监控Oracle数据库:1.检查实例的可用性2.检查监听器的可用性3.检查alert日志文件中的错误信息4.在存放log文件的地方满以前清空旧的log文件5.分析table和index以获得更好的性能6.检查表空间的使用情况7.找出无效的对象8.监控用户和事务[@more@]二.DBA需要的Unix基本知识基本的UNIX命令,以下是一些常用的Unix命令:ps--显示进程grep--搜索文件中的某种文本模式mailx--读取或者发送mailcat--连接文件或者显示它们cut--选择显示的列awk--模式匹配语言df--显示剩余的磁盘空间以下是DBA如何使用这些命令的一些例子:1. 显示
CU--Shell编程大赛
ChinaUnix技术实践之四----Shell编程大赛! 问题1:用最简洁的命令列出当前目录下的一级子目录,可以不包含隐藏目录(目录名以.开头的目录)[@more@]--答案:1)tree -d -L 12)ls -d */3)du --max-depth=14)find ./* -maxdepth 0 -type d5)find * -type d -prune -print6)find ! -path . -type d -prune -print 7)ls -F|grep "/"问题2:GNU sed 提供了-i选项,为什么有人说sed -i 并不象 ed 一样真正的编辑文件?(提示:观察文件改变前后的inode)--答案:区别在于交互式,因为sed只适用于非交互式的场合(可以认为这是一种
删除文件中包含指定字符串的行
删除当前目录下,所有文件中包含get_tbms串的行:find . -name "*.*"| xargs -i{} sed -i -e '/get_tbms/d' {} [@more@]