コマンド実行前にユーザー入力に文字を自動的に追加する方法

コマンド実行前にユーザー入力に文字を自動的に追加する方法

私は端末で読書するのが大好きです。集中力が高まり、ブラウザなどで読んでいた量の 2 倍の量を読めるからです。

私は、作業ディレクトリを .html ファイルを保存しているディレクトリに変更し、そのディレクトリの内容も表示する、bash.bashrc のエイリアスを使用したスクリプトを作成しました。

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]

プロンプトの後に「lynx」を追加するにはどうすればよいですか?

ありがとう!

答え1

私が作成した簡単な 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

ディレクトリがリストされ、タブの自動補完がフォルダー内のファイルに対して機能します。開くファイルを選択した後、手動で lynx、xdg-open などを入力する必要があります。私は疲れているので、最後の部分 (実行するプログラムのタブ補完) は、もっと時間が取れるまで、皆さんの練習として残しておこうと思います。(ここで私が行ったことを見て、やり方を学んでいただければ幸いです:) 問題解決のお手伝いをしたいのですが、もう一度確認できるまで 1 週間以上かかるかもしれません。

十分であれば、回答として受け入れてください。
少なくとも、プログラム名のタブ補完に関する最後の問題に取り組むお手伝いをしようという意欲が湧きます。

参照: bash スクリプトでタブのオートコンプリートを実装できますか?

関連情報