Приводя примеры команд оболочки, люди часто ставят перед каждой строкой префикс $
, чтобы проиллюстрировать, что она должна быть запущена в терминале. Совсем недавно я столкнулся с этим на этой странице Github .
$ sudo apt-get install curl netcat-openbsd bc pv
$ wget https://raw.githubusercontent.com/neutronth/speedtest-lite/master/speedtest-lite
Когда эти строки трижды щелкают, знак доллара (будучи частью этой линии), конечно, является частью выбора. Есть ли способ настроить мой терминал (я использую терминатор), чтобы, если $
является первым символом команды, игнорировать его?
Я намеревался отвечать на этот вопрос, и это оказалось немного более включенным затем, я думал. С небольшим волшебством удара:
cat file | while read x; do OUTPUT=$(echo $x | sed 's/^.//'); eval $OUTPUT; done
то, Что это делает, является файлом печати к стандартному выводу, читает каждую строку, удаляет первый символ, и хранит результат в $OUTPUT, затем выполняет строку в $OUTPUT как команда с оценкой Быть осторожным при использовании оценки, этот сценарий будет петлять как команды.