`

shell EOF

阅读更多
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与 &lt;&lt; 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。 示例 &lt;&lt;EOF&gt; test.text &gt; test 1234 &gt; 5678 &gt; EOF [root@www ~]# ca

    hbase-shell批量命令执行脚本的方法

    批量执行hbase shell 命令 #!/bin/bash source /etc/profile exec $HBASE_HOME/bin/hbase shell &lt;&lt;EOF truncate 'tracker_total_apk_fact_zyt' major_compact('t_abc') disable 't_abc' drop 't_abc' create...

    linux下一键安装mysql,通过运行shell文件,解压安装mysql,创建用户,修改密码,运行本地的sql文件初始化数据库

    linux下一键安装mysql,通过运行shell文件,解压mysql,创建用户,修改密码,运行本地的sql文件初始化数据库,附带mysql依赖库的第三方库

    shell脚本开发

    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 &lt;&lt;EOF (进入hive) USE...

    从数据库中取变量传递给shell,生成环境变量

    #Sqlplus user/pwd@ip @myshellpara.sql &lt;&lt; EOF $&gt; /dev/null Sqlplus user/pwd@ip @myshellpara.sql $&gt; /dev/null chmod 777 myshellvar_export.sh #注意.这里的技巧,变相执行 myshellvar_export.sh,生成linux 系统...

    ADB_Shell:用于在 Android 设备上执行命令的独立二进制包,带有方便的 shell 和最流行的 ADB 命令的速记

    亚行外壳用于在 Android 设备上执行命令的独立二进制包,带有方便的 shell 和大多数流行命令的速记。 二进制文件取自 Android SDK。用法运行adbshell.bat并输入您的命令。 您可以使用流行命令的简写。 通过执行adb...

    shweb:使用Shell编写网页

    编写Web服务器使用shell。 我为什么要这样做。 Shell非常容易做日常工作。 我认为也可以将shell编写简单的简单服务器用于沉浸式或实验性使用。 如何使用 $ go get -v github.com/codeskyblue/shweb $ cat &gt; ...

    shell简单处理mysql查询结果的方法

    今天小编就为大家分享一篇shell简单处理mysql查询结果的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    Linux/Unix shell sql 之间传递变量

    灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考。  Linux/Unix 下调用SQL,RAMN 请...EOF SET PAGESIZE

    Spark-shell批量命令执行脚本的方法

    批量执行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

    shell中如何批量注释和取消注释

    #!/bin/bash echo 1 echo 2 echo 3 echo 4 echo 5 echo 6 上面这段shell会依次打印1~6 假设我们想只打印5和6,想将1-4注释掉,除了正常的做法,每行前面加#进行注释外 ...&lt;EOF&gt; data.log 等同于 cat /dev/null &gt; data.

    rssh:通过SSH反向Shell

    rssh 该程序是基于SSH的简单反向Shell。 本质上,它通过SSH打开与远程计算机的连接,开始侦听远程计算机上的端口,并且在与该端口建立... 请注意, -c标志很重要,以确保EOF可以通过网络连接正确地传播到远程主机。

    【精品小工具】利用shell写了一个查看当前Wi-Fi密码,并记录Wi-Fi密码历史的脚本

    【精品小工具】利用shell写了一个查看当前Wi-Fi密码,并记录Wi-Fi密码历史的脚本 ...各个问题点的处理办法:一、使用EOF语法;二、找一篇合适的文档;三、先创建空密码本再做if判断。 使用方式及源码 粘贴到你的终端里

    Shell脚本实现自动修改IP地址

    作为一名Linux SA,日常运维中很多地方都会用到脚本,而服务器的ip一般采用静态ip或者MAC绑定,当然后者比较操作起来相对... EOF ++++++++自动修改ip和主机名等相关信息+++++++++ ETHCONF=/etc/sysconfig/network-scri

    数值运算shell脚本

    这次的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 ...

    把mysql查询结果保存到文件的shell脚本

    该脚本是先删除已经存在的文件,然后后台执行SQL语句将其执行结果以一定的格式写入文件 ...EOFuse home;select YongHuID,XueYuanID into outfile ‘./hell.txt’ fields terminated by ‘|’ lines ter

    PHP EOF(heredoc) 使用说明

    PHP EOF(heredoc)是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字符串的方法。 使用概述: 1. 必须后接分号,否则编译通不过。 2. EOF 可以用...

    利用Shell脚本实现远程MySQL自动查询

    下面这个脚本是一个简单用来执行远程数据库查询的命令,相信大家都能看得懂,这对于有些...exitEOF`echo $QUERY例如把这个脚本改成一个用来安全删除mysql二进程日志的脚本,Mysql主从同步的数据库二进制日志往往很大,

    simple_shell:我们的基本shell版本

    0x16。 C-简单外壳项目 ... 什么是EOF /“文件结束”? :check_mark: 一般要求 允许的编辑器:vi,vim或emacs 所有文件均在Ubuntu 14.04 LTS上编译 使用gcc 4.8.4使用-Wall -Werror -Wextra和-peda

    shell中嵌套执行expect命令实例

    一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小...-EOF set time 30 spawn ssh -p18330 root@192.168.10.22 expect { “*yes/no” { send “yes\r”; exp_continue }

Global site tag (gtag.js) - Google Analytics