Oracle 스크립트에서 Linux 변수 전달

Oracle 스크립트에서 Linux 변수 전달

Oracle 코드에서 Linux 변수를 전달하는 방법은 무엇입니까?

다음 형식으로 전달해야 하며 "값 1을 입력하세요."를 묻지 않아야 합니다.

조언해주세요.

mount='/u08/dbname/'
sqlplus -s "/ as sysdba" <<EOF 
set serveroutput on;
set feedback off;
set verify off;
set heading off;
DECLARE
line varchar(100);
BEGIN 
line := '&1';
if (5 > 0)then
dbms_output.put_line(line);
end if;
END;
/
$mount
EOF

답변1

export mount='/u08/dbname/'
sqlplus -s "/ as sysdba" <<EOF 
set serveroutput on;
set feedback off;
set verify off;
set heading off;
DECLARE
line varchar(100);
BEGIN 
line := '$mount';
if (5 > 0) then
dbms_output.put_line(line);
end if;
END;
/
$mount
EOF

Unix/Linux 명령의 출력을 변수에 할당할 수도 있습니다.

export SPACE=$(df --output=avail -m /dev/sda8 | tail -1)

관련 정보