Saya memiliki bashjendela terminal tempat saya mengeksekusi satu perintah secara eksklusiffoo . Karena itu saya ingin setiap baris (setelah prompt tentu saja) dimulai dengan "foo" sehingga saya hanya perlu mengetikkan opsi dan argumen fungsi, tetapi bukan nama fungsi berulang. Tentu saja akan menyenangkan untuk dapat mengubah string yang dimasukkan secara otomatis juga, tetapi itu tidak penting bagi saya.
Contoh
Ketika saya membuka terminal, tanpa mengetik apa pun yang ingin saya lihat adalah:
user@host:~/ $ foo
Kemudian saya mengetik --option argumentdan ketika saya menekan Enterfungsi foodipanggil dengan yang diberikan --optiondan argument.
Apa yang saya coba
Saya mencoba untuk bermain-main dengan $PS1dan $PROMPT_COMMANDmenggunakan xdotool type "foo "dan mengherankan yang benar-benar berfungsi, tetapi sayangnya itu juga mencetak "foo" sebelum prompt, yang cukup jelek:
user@host:~/ $ PROMPT_COMMAND='xdotool type "foo "'
foo user@host:~/ $ foo
Saya juga menemukan dan mencoba preexecfungsi dari script bash-preexec Ryan Caloras , tetapi memiliki masalah yang persis sama.
Bagaimana cara menggaungkan (a (executable-) string) ke prompt, sehingga kursor berkedip di akhir baris? terkait, tetapi jawaban di sana tidak memungkinkan untuk menambahkan sesuatu ( --option argument) ke perintah yang akan dieksekusi. Tapi saya tidak menguji zsh- harus ada bashsolusi untuk hal sederhana seperti itu, bukan begitu?
expect, tetapi tidak memasukkan teks pada setiap prompt, tetapi hanya pada yang pertama. Sementara itu ingin di pertanyaan terkait, tujuan saya berbeda.