как передать несколько команд в sqlite3 в одной команде оболочки liner

Я пытаюсь сохранить содержимое буфера обмена в базу данных sqlite. Созданная база данных и таблицы.

Я не хочу, чтобы он создавал файл journal в каждом изменении буфера обмена, поэтому я попытался передать PRAGMA journal_mode = OFF; флаг. Но сложно передать эти команды в одной команде liner, потому что sqlite принимает только две команды, такие как

 sqlite3 clipboard_archive.db "insert into cb (cb_context) values ('clipboard');" 

оно работает. Я искал сайты Q&A , некоторые рекомендации повторяют команды следующим образом.

 echo "PRAGMA journal_mode = OFF;" | sqlite3 clipboard_archive.db "insert into cb (cb_context) values ('clipboard');" 

Но PRAGMA journal_mode = OFF; не вступает в силу таким образом, хотя он работает в командной строке sqlite3 .

Что случилось с моим однострочным скриптом?

One Solution collect form web for “как передать несколько команд в sqlite3 в одной команде оболочки liner”

Не знаете, почему вы хотите использовать SQLite, если вы не хотите, чтобы журнал (вы считали гораздо более быстрый режим WAL, если скорость беспокоит?), Но вы можете дать несколько команд, разделенных точкой с запятой:

 sqlite3 clipboard_archive.db "PRAGMA journal_mode = OFF; insert into cb (cb_context) values ('clipboard');" 
  • Не удалось выполнить атомарную инициализацию SQLite с ошибкой Subversion на Eclipse
  • Проблемы с unixODBC и SQLite
  • rlwrap-подобный инструмент с автозавершением команды
  • Есть ли (хороший) SQLite GUI для Linux?
  • Ошибка CGI при попытке извлечь из sqlite3
  • Как определить, когда процесс или машина привязаны к IO?
  • Быстрый способ определить, является ли файл базой данных SQLite
  • проверить шаблоны, которых нет в sqlite
  • Установленный sqlite3 v3.8, но Mac-терминал по-прежнему запускает старую версию 3.6 по умолчанию
  • Имя пользователя sqlite3 bash grep
  • Ошибка установки pysqlite на FreeBSD в virtualenv
  • Как открыть файл listchanges.db в Debian?
  • Linux и Unix - лучшая ОС в мире.