Я пытаюсь написать bash-скрипт, который просто действует как эмулятор.Он принимает данные от пользователя и выполняет команду, перенаправляя команду вместе с результатом в файл.Я не могу обрабатывать входы, которые имеют |или> в них.
Единственный вариант, который я смог найти, - это разделение команд на основе |в массив и запускать их по отдельности.Тем не менее, это не позволяет> перенаправления.
Заранее спасибо.
$ cmd - это команда, принимаемая от пользователя
Я использовал команду $ cmd 2> & 1 |tee -a $ flname
, но это не работает, если есть |или> в $ cmd
/ bin / bash -c "$ cmd 2> & 1 | tee -a $ flname" не запускает и не сохраняет команду