Как автоматически добавлять символы в пользовательский ввод перед выполнением команды

266
ExceptionInTheRye

Я люблю читать на терминале - он фокусирует мое внимание и позволяет мне читать вдвое больше, чем я читал в браузерах и т. Д.

Я написал скрипт, использующий псевдоним для bash.bashrc, который меняет рабочий каталог на каталог, в котором я храню файлы .html, а также отображает содержимое этого каталога:

alias la='ls -a'  alias books=' printf "\nA twilit bookshelf, somewhere\n\n" cd data/data/com.termux/files/home/documents/books && la printf "\n"' 

И, наконец, я хотел бы добавить 'lynx 'после приглашения, чтобы я мог просто ввести имя файла и прочитать его в lynx.

Я подумал о следующей презентации:

A twilit bookself, somewhere  . kinglear.html .. invisiblecities.html  admin@lib:/$ lynx [filename here] 

Как я могу добавить «рысь» после подсказки?

Спасибо!

0
На самом деле это не ответ на ваш вопрос, но более простое решение - установите `mc`, запустите его и` cd` в каталог вашей книги и добавьте его в `hotlist` (Ctrl + \ A). Отныне вы можете нажать «Ctrl + \», находясь в «mc», выбрать запомненный каталог, который вы хотите перепрыгнуть, выбрать «html» файл, который вы хотите прочитать, и нажать «F3», он автоматически запустит «lynx» для вас. Alex 5 лет назад 0

1 ответ на вопрос

0
anders

Я просто сделаю пошаговую инструкцию для быстрого скрипта bash, который я сделал.

cd ~/.local/bin cat > searchlynx (or use nano,vi,gedit or whatever you prefer) 

Вставьте следующий скрипт с помощью Ctrl + Shift + V

#!/bin/bash printf "\nA twilit bookshelf, somewhere\n\n" cd /home/a/Downloads && ls -a printf '\n' echo 'Input filename:' read -e FileName FileFindTest="$(find ~/Downloads/"$FileName")" ## quoted echo "$FileFindTest" echo 'Open with what program?' read command $command $FileName 

Затем нажмите Enter и выйдите с помощью Ctrl + C. Затем вам нужно будет изменить разрешения для файла.

chmod u+x searchlynx 

Использование:

searchlynx 

Каталог будет в списке, вкладка Auto Complete работает с файлами в папке. Вам нужно будет вручную ввести lynx, xdg-open или любой другой после выбора, какой файл открыть. Я устал, и я думаю, что последнюю часть (завершение программы запуска программы) можно оставить вам в качестве упражнения, пока у меня не останется больше времени. (надеюсь, вы узнаете, как это сделать, взглянув на то, что я сделал для вас здесь и сейчас :) Я заинтересован в том, чтобы помочь вам решить проблему, но может пройти неделя или больше, пока у меня не будет времени снова взглянуть на это.

Пожалуйста, примите в качестве ответа, если он достаточно хорош для вас.
Это, по крайней мере, побудит меня помочь вам решить вашу последнюю проблему с завершением вкладок названий программ.

Справка: Могу ли я реализовать автозаполнение вкладок в bash-скрипте?

Спасибо за подробную инструкцию! Я стремился сделать командную строку доступной, чтобы, если бы я выбрал любую другую программу для чтения заданного файла (например, файл .pdf), я мог удалить автоматически добавленный 'lynx' из приглашения и написать команду для другой. программа. Таким образом, я также мог нажать TAB для автоматического заполнения длинных имен файлов. ExceptionInTheRye 5 лет назад 0
Занят прямо сейчас, отвечу позже сегодня anders 5 лет назад 0
Пожалуйста, объясните лучше, у меня есть небольшие проблемы с пониманием того, что вы имеете в виду anders 5 лет назад 0
Я имею в виду, что пользователь должен видеть список файлов каталога, и для него в приглашении уже написано «lynx». Она решит просто написать любое имя файла, существующее в каталоге, чтобы просмотреть его через lynx - или удалить дополнение 'lynx' и написать, например, команду 'vim kinglear.html', чтобы проверить реальный HTML-скрипт. Спасибо. ExceptionInTheRye 5 лет назад 0
Ну, я не вижу необходимости заполнять рысь по умолчанию. Если люди собираются использовать другие программы для открытия файлов, будет сложнее удалить lynx, если они собираются использовать vim, xdg-open и т. Д. Разместит обновленный скрипт как можно скорее. anders 5 лет назад 0
Пожалуйста, примите ответ, я вернусь и помогу вам с автозаполнением вкладки lynx, xdg-open и т. Д., Если вы это сделаете. Это нехорошее чувство - пытаться помочь, когда люди не хотят вознаграждать людей, отдающих свое свободное время. anders 5 лет назад 0
Привет! Извините за опоздание, как это сработало для вас? Вам нужна дополнительная помощь? anders 5 лет назад 0

Похожие вопросы