Oracle 스크립트에서 mount_point 세부 정보를 전달하려고 합니다.
다음 코드를 사용하여 정수 변수를 전달할 수 있지만 oracle 스크립트에서 마운트 지점 세부 정보를 보낼 수 없습니다.
sed "s/@@pqr@@/$space/g" tablespace_extend.sql |
sqlplus -s "/ as sysdba"
BEGIN
space:="@@pqr@@";
dbms_output.put_line(space);
END;
/
동일한 코드를 사용하여 마운트 지점 세부 정보를 전달하면 작동하지 않습니다. 다음 오류 메시지가 반환됩니다.
sed: -e expression #1, char 13: unknown option to `s', mount_point = /u08/dbname/
답변1
/
변수에 sed 명령을 중단시키는 구분 기호로 사용되는 특수 문자가 포함되어 있다고 가정하므로 다음을 시도해 보십시오.
$ space="/u08/dbname/"
$ sed "s:@@pqr@@:$space:g" tablespace_extend.sql
BEGIN
space:="/u08/dbname/";
dbms_output.put_line(space);
END;
방금 sed 구분 기호를 :
문자로 전환했습니다.
더 많은 정보를 원하시면 여기를 클릭하세요:https://stackoverflow.com/questions/16790793/how-to-insert-strings-포함-slashes-with-sed