`

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文件初始化数据库

    在这个过程中,通过运行一个精心编写的shell脚本可以大大简化这一流程。以下是根据标题和描述所涵盖的详细步骤和相关知识点: 1. **依赖库安装**:在Linux上安装MySQL前,需要确保系统已经安装了必要的依赖库。`...

    Linux 下 Shell的工作原理

    用户可以通过`logout`、`exit`命令或发送EOF(Ctrl+D)来结束Shell会话。 在实际操作中,用户可能会遇到错误情况,例如尝试执行一个不存在的命令或提供错误的参数。在这种情况下,Shell会返回错误信息,如"command ...

    非常简单的Shell菜单脚本

    在Linux系统中,Shell脚本是一种强大的自动化工具,可以实现一系列命令的集合,方便用户进行交互式操作。本文介绍的“非常简单的Shell菜单脚本”就是一种基础的Shell脚本应用,它创建了一个简单的菜单系统,使用户...

    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创建MySQL数据表

    在Shell脚本中插入这个SQL语句后,确保以`EOF`结束输入。接着,脚本会连接到MySQL服务器并执行这些命令。完整的`create_table.sh`脚本可能就是这样把创建表的命令包装起来的。 除了Shell脚本,你提供的`create_...

    ftp.rar_FTP SHELL_linux 远程shell_shell

    在这个“ftp.rar_FTP SHELL_linux 远程shell_shell”的压缩包中,我们主要关注的是如何使用FTP在Linux环境中创建一个远程shell,以便进行系统管理或者文件操作。 FTP Shell,即通过FTP协议实现的命令行交互式环境,...

    shell脚本编程入门

    6. **结束标志**:脚本以EOF或右括号`}`结束。 **基本命令和语法** 1. **命令行参数**:脚本可以接收命令行参数,通过$1, $2, ...访问。 2. **输出重定向**:`&gt;`和`&gt;&gt;`分别用于覆盖和追加输出到文件。 3. **管道**...

    shell脚本学习手册

    ### Shell脚本学习手册知识点概览 #### 一、Shell脚本基础 1. **Shell概念** - Shell是一个用C语言编写的程序,它作为用户与Linux系统的桥梁,提供了一个命令行接口来访问操作系统服务。 - Shell既是命令语言也...

    linux shell 查询oracle数据库中的值 并返回

    在Linux环境中,shell脚本是一种强大的工具,可以用于自动化任务执行和系统管理。结合Oracle数据库,我们可以编写shell脚本来查询数据库中的数据,并将结果返回。这个特定的场景中,我们可能想要从Oracle数据库中...

    SQLPLUS在Bash_shell的使用

    【SQLPLUS在Bash_shell的使用】 SQLPLUS是Oracle数据库管理系统提供的一款强大的SQL命令行工具,它允许用户在命令行界面执行SQL语句、PL/SQL块以及进行数据库管理任务。在Bash Shell环境下,我们可以利用Shell脚...

    Shell脚本专家指南.zip

    3. Here文档:用于向命令提供多行输入,如`cat &lt;&lt; EOF`开始,`EOF`结束。 四、正则表达式与模式匹配 1. `grep`命令:用于搜索含有特定模式的行,支持正则表达式。 2. `find`命令:查找文件,可基于名称、大小、...

    shell ftp上传

    shell ftp 上传 shell ftp 上传是使用 shell 脚本实现自动 ftp 上传文件的方法...这是因为 shell 脚本的结束符号 `EOF` 让脚本正常结束,从而返回值为 0。因此,需要在脚本中添加判断逻辑,以确保自动 FTP 是否成功。

    在linux 系统shell 批量添加用户和密码

    本文将深入解析如何使用Shell脚本来批量创建用户并自动生成密码,这是一个常见的运维任务,特别是在大规模部署服务器或云环境时。 ### 核心知识点:Shell批量添加用户和密码 #### 1. **Shell脚本基础** Shell脚本...

    shell (用C语言编写的程序)

    ### Shell (用C语言编写的程序) #### 概述 Shell是Linux系统中非常重要的一环,它是连接用户与操作系统内核之间的重要桥梁。Shell不仅具备命令语言的功能,还具有程序设计语言的特点。作为命令语言,它能够解释并...

    Linux网络操作系统基础:shell编程基础.pptx

    内联输入重定向(here document)使用`,如`echo "text" &gt;&gt; file.txt &lt;&lt; EOF`,其中EOF是结束标志,所有在这两者之间的内容都会作为命令输入。 管道(|)是连接命令的工具,它将一个命令的输出作为另一个命令的输入...

    从数据库中取变量传递给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 系统...

Global site tag (gtag.js) - Google Analytics