专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

SHELL脚本 - 标准输入和参数输入

脚本中需要用sqlplus获取数据库的一行数据,语句很简单,不想传递sql文件,可以使用Here Document重定向查询语句:

sqlplus -s $user/$token@$sid <<EOF
select localtimestamp from dual;
exit;
EOF

但是使用了Here Document后,脚本的缩进格式有点乱了

那么我们把语句放进变量里面吧。

stmt="select localtimestamp from dual;exit;"
sqlplus -s $user/$token@$sid <<EOF
$stmt
EOF

噫,这不还是乱的吗,有啥区别。还不直接用文件当变量。

echo "select localtimestamp from dual;exit;" > stmt.sql
sqlplus -s $user/$token@$sid @stmt.sql

有必要生成这么多中间产物吗?况且这文件名不随机化,以后会搞大系统啊。

能不能直接上管道?

echo "select localtimestamp from dual;exit;" | xargs -I {} .sqlplus -s $user/$token@$sid {}

不行。因为标准输入和参数输入是两个概念。

文章永久链接:https://tech.souyunku.com/19724

未经允许不得转载:搜云库技术团队 » SHELL脚本 - 标准输入和参数输入

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们