Спасибо за все великие идеи. Я придумал свое собственное решение, отслеживая подраздел в файле TEMP и сложите его все сразу к моей внешней команде. Это очень похоже на то, что предлагается SUPR (но с переменной оболочкой вместо файла TEMP). Кроме того, мне очень нравится идея использования SED, но синтаксис для этого случая кажется немного наверху для меня.
Мое решение:
(я использую NL
NL , как пример фильтра)
#!/usr/bin/bash
while read line
do
if [[ $line == @@inline-code-start* ]]
then
active=true
tmpfile=$(mktemp)
trap "rm -f $tmpfile" EXIT
elif [[ $line == @@inline-code-end* ]]
then
active=false
<$tmpfile nl
rm $tmpfile
elif [[ $active = true ]]
then
echo $line >> $tmpfile
else
echo $line
fi
done
Я бы предпочел не иметь дело с управлением файлами TEMP, но я понимаю, что переменные оболочки могут иметь Довольно низкий размер пределов, и я не знаю ни о какую-либо конструкции Bash, которая будет работать как файл Temp, но автоматически исчезает, когда процесс заканчивается.
Я думаю, что нет проще всего, чем создавать псевдоним, но если вы хотите упростить это, вы можете сделать Ctrl
+ R
и тип Обновление обновление
, то вы сможете увидеть эту строку, выполняемую в определенном времени, затем нажмите RETURN
, чтобы снова выполнить его.
prompt:~$
Ctrl
+ R
(reverse-i-search)`upda': sudo apt-get update; sudo apt-get upgrade
У меня есть как псевдоним в .bashrc
alias update = 'su -c "" apt-get update update && apt-tograde "' ''
и это удалить кэш и зависимости.
ALIAS CLN = 'SU -C "" APT-GET AUTOREMOVE && APT-GET-TOOCLEAN AUTOREMEMOVE APT-CLEAN "' ''