Как я получаю содержание текстового файла с 1 строкой в буфер команд удара?

Моя цель состоит в том, чтобы быстро получить сохраненные команды удара и отредактировать команды в буфере команд удара (например, изменяющиеся аргументы, для экспериментирования с долгими сложными командами). То, когда я нажму Enter, команда выполнится, и нажатие Arrow Up, получит меня команда снова для дальнейшего редактирования.

Например, мне назвали текстовый файл textfile, со следующим содержанием: ls -l
Я хочу получить то содержание файла в буфер команд так, чтобы я добрался
user@ubuntu:~$ ls -l
Поскольку теперь я могу изменить и повторно выполнить его.

Если я добавляю выполнить бит к textfile, Я могу выполнить его, но нажатие Arrow Up, наборы ./textfile команда в буфер команд, не содержание.

Так же, если я вхожу $(<textfile) это также выполняет команду, но нажатие Arrow Up, просто дает мне $(<textfile) команда, не ее содержание

Единственное решение, о котором я могу думать, состоит в том, чтобы сделать cat textfile и затем копия / вставляет содержание в окно терминала. Ну, я мог также отредактировать файл, сохранить его и выполнить его, но это - стычка, чтобы сделать каждый раз. Так, есть ли прием для получения содержания файла в буфер команд, не вводя или вставляя?

1
задан 9 August 2017 в 15:42

1 ответ

Буфер команд, к которому Вы обращаетесь, является файлом истории удара... история команд удара. Буфер истории записан в ~/.bash_history, когда Вы выходите из терминала. Это загружается в буфер, когда Вы входите в систему.

можно получить строку, которую Вы хотите в свой буфер истории удара путем добавления строки к ~/.bash_history файл, затем вручную перезагрузки файла истории удара в буфер с эти history -r команда.

Это - пример:

$ echo "command wanted" >> ~/.bash_history && history -r

Теперь при ударе стрелки вверх, Вы будете видеть "команду, требуемую" в Вашем "буфере команд".

С этой командной строкой Вы будете видеть содержание Вашего textfile при ударе стрелки вверх:

$ echo $(<textfile) && cat textfile >> ~/.bash_history && history -r

убедиться завершить Ваш textfile с новой строкой.

1
ответ дан 7 December 2019 в 15:31

Другие вопросы по тегам:

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