> Добрый день!
> есть переменная a, в которой предполагается хранить команды shell любой сложности
> для последующей записи этой команды в БД. Для этого мне нужно проблема как вы очевидно понимаете, в том что вы задаете переменную в самом теле скрипта, и уже на момент ее определения - интерпретатор выполняет все необходимые подстановки.
если вы будете брать строки из файла- то в момент чтения такой строки в переменную- спец-символы будут просто символами и их можно экранировать регекспом.
> экранировать все спецсимволы $, чтобы bash не обрабатывал конструкцию $(..), которая
вы уверены что в БД нужно хранить именно строки "как есть" с экранированием? ведь можно сразу, ничего не экранируя закодировать строку в base64 и хранить в базе строки base64...