Shell中通常将EOF与 << 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。如下:
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'
sqlplus $USERID @$OUT_FILE << EOF
exit
EOF
当把这段代码放在Shell中时,会在Shell脚本执行完毕后自动退出SQLPLUS的命令提示符状态。
<<EOF
(内容)
EOF
可以把EOF替换成其他东西
意思是把内容当作标准输入传给程序
这里再简要回顾一下< <的用法。当s h e l l看到< <的时候,它就会知道下一个词是一个分界
符。在该分界符以后的内容都被当作输入,直到s h e l l又看到该分界符(位于单独的一行)。这个
分界符可以是你所定义的任何字符串。
方法1.需要,自动登录mysql(root:root,passwd:123456),查询test库,test1表里的user=aa的记录.
#!/bin/sh
mysql -uroot -p123456 <<EOF
use test;
select * from testaa while a=10000; ###1000 not usr single quote mark,because a is int
# type,only char type need single quote mark.
exit
EOF
方法2:用expect脚本
3
1 #!/bin/bash
2 #batch_connect.sh
3
4 #cat /dev/null > batch_file
5 echo "use oss_platform;" > batch_file
6
7 URL_list=`cat url_for_db_final`
8 for URL in $URL_list
9 do
10 echo "update pornURL set count=count+1 where url=\"$URL\";" >> batch_file
11 echo "insert into pornURL (url,count) select \"$URL\",1 from dual where not exists (select * from pornURL where
url=\"$URL\");" >> batch_file
12
13 done
14 echo "exit" >> batch_file
15
16
17 cat /dev/null > url_for_db_final
18 mysql -h localhost -u ******* -p*************< batch_file | more
19
20
21 cat /dev/null > batch_fil
分享到:
相关推荐
Shell中通常将EOF与 << 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。 示例 <<EOF> test.text > test 1234 > 5678 > EOF [root@www ~]# ca
批量执行hbase shell 命令 #!/bin/bash source /etc/profile exec $HBASE_HOME/bin/hbase shell <<EOF truncate 'tracker_total_apk_fact_zyt' major_compact('t_abc') disable 't_abc' drop 't_abc' create...
linux下一键安装mysql,通过运行shell文件,解压mysql,创建用户,修改密码,运行本地的sql文件初始化数据库,附带mysql依赖库的第三方库
2.hive源表:创建hive源表,每个shell脚本对应一个hive源表 #!/bin/bash source /etc/profile CUR_DATE=`date +%Y%m%d` echo "-- CUR_DATE:"$CUR_DATE /opt/cloudera/parcels/CDH/bin/hive <<EOF (进入hive) USE...
#Sqlplus user/pwd@ip @myshellpara.sql << EOF $> /dev/null Sqlplus user/pwd@ip @myshellpara.sql $> /dev/null chmod 777 myshellvar_export.sh #注意.这里的技巧,变相执行 myshellvar_export.sh,生成linux 系统...
亚行外壳用于在 Android 设备上执行命令的独立二进制包,带有方便的 shell 和大多数流行命令的速记。 二进制文件取自 Android SDK。用法运行adbshell.bat并输入您的命令。 您可以使用流行命令的简写。 通过执行adb...
编写Web服务器使用shell。 我为什么要这样做。 Shell非常容易做日常工作。 我认为也可以将shell编写简单的简单服务器用于沉浸式或实验性使用。 如何使用 $ go get -v github.com/codeskyblue/shweb $ cat > ...
今天小编就为大家分享一篇shell简单处理mysql查询结果的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考。 Linux/Unix 下调用SQL,RAMN 请...EOF SET PAGESIZE
批量执行spark-shell命令,并指定提交参数 #!/bin/bash source /etc/profile exec $SPARK_HOME/bin/spark-shell --queue tv --...EOF import org.apache.spark.sql.SaveMode sql(set hive.exec.dynamic.partition=true
#!/bin/bash echo 1 echo 2 echo 3 echo 4 echo 5 echo 6 上面这段shell会依次打印1~6 假设我们想只打印5和6,想将1-4注释掉,除了正常的做法,每行前面加#进行注释外 ...<EOF> data.log 等同于 cat /dev/null > data.
rssh 该程序是基于SSH的简单反向Shell。 本质上,它通过SSH打开与远程计算机的连接,开始侦听远程计算机上的端口,并且在与该端口建立... 请注意, -c标志很重要,以确保EOF可以通过网络连接正确地传播到远程主机。
【精品小工具】利用shell写了一个查看当前Wi-Fi密码,并记录Wi-Fi密码历史的脚本 ...各个问题点的处理办法:一、使用EOF语法;二、找一篇合适的文档;三、先创建空密码本再做if判断。 使用方式及源码 粘贴到你的终端里
作为一名Linux SA,日常运维中很多地方都会用到脚本,而服务器的ip一般采用静态ip或者MAC绑定,当然后者比较操作起来相对... EOF ++++++++自动修改ip和主机名等相关信息+++++++++ ETHCONF=/etc/sysconfig/network-scri
这次的shell案例比较简单,但有其特点。 #!/bin/sh # scriptbc - Wrapper for 'bc' that returns the result of a calculation. if [ $1 = -p ] ; then precision=$2 shift 2 else precision=2 # default fi bc ...
该脚本是先删除已经存在的文件,然后后台执行SQL语句将其执行结果以一定的格式写入文件 ...EOFuse home;select YongHuID,XueYuanID into outfile ‘./hell.txt’ fields terminated by ‘|’ lines ter
PHP EOF(heredoc)是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字符串的方法。 使用概述: 1. 必须后接分号,否则编译通不过。 2. EOF 可以用...
下面这个脚本是一个简单用来执行远程数据库查询的命令,相信大家都能看得懂,这对于有些...exitEOF`echo $QUERY例如把这个脚本改成一个用来安全删除mysql二进程日志的脚本,Mysql主从同步的数据库二进制日志往往很大,
0x16。 C-简单外壳项目 ... 什么是EOF /“文件结束”? :check_mark: 一般要求 允许的编辑器:vi,vim或emacs 所有文件均在Ubuntu 14.04 LTS上编译 使用gcc 4.8.4使用-Wall -Werror -Wextra和-peda
一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小...-EOF set time 30 spawn ssh -p18330 root@192.168.10.22 expect { “*yes/no” { send “yes\r”; exp_continue }