>我在 bash 脚本中有一个 select 语句,它返回数据库中的最新日期。我运行此查询 4 次,因此我只想定义一次并将文本断言为变量。
#!/bin/bash
linux commands;
database_date=$(sqlplus -s/nolog $USER/$USER@BRMDPP <<END
set pagesize 0 feedback off verify off heading off echo off;
SELECT ...
exit;
END
)
commands that change the database date;
last_date=$(sqlplus -s/nolog $USER/$USER@BRMDPP <<END
set pagesize 0 feedback off verify off heading off echo off;
SELECT ...
exit;
END
)
commands that change the database date;
我怎样才能存储这个大字符串$(sqlplus ...变成一个变量并再次使用它?谢谢
一种方法是使用一个函数:
foo() {
sqlplus -s/nolog $USER/$USER@BRMDPP <<END
set pagesize 0 feedback off verify off heading off echo off;
SELECT ...
exit;
END
}
后来通过说:
value=$(foo)
为了获取函数返回的值,例如echo "$value"
(请注意,引用变量很重要)。