У меня проблема с запуском SQL * Plus в bash.
Вот мой код
#!/bin/bash
curl http://192.168.168.165:8080/api_test/xsql/f_exp_order_1016.xsql > script.sql
sqlplus /nolog << ENDL
connect user/password
set sqlblanklines on
start script.sql
exit
<<ENDL
Я загружаю операторы вставки из нашей интрасети, помещаю их в файл sql и запускаю через SQL * Plus. Это работает нормально. Единственная проблема заключается в том, что кодировка файла script.sql выглядит следующим образом application/x-empty; charset=binary
(определяется через файл -bi). Таким образом, это вызывает вставку неправильных символов в мою базу данных, что я действительно не хочу.
Итак, не могли бы вы сказать мне, как мне изменить кодировку файла без потери каких-либо данных? А также приветствуются любые советы, касающиеся моего сценария, я новичок в сценариях Linux: -)
Я также пытался изменить кодировку с iconv
, но это не помогло.
UPDATE
Не знаю, почему, но я удалил файл, несколько раз запустил скрипт, и кодировка неожиданно UTF-8
, но символы все еще разбиты как в файле, так и в БД, поэтому ничего не решалось