[英]How to "read" in bash without pressing enter
我已經完成了一個 shell (bash) 腳本,該腳本將預定義的規則應用於放入終端的文件。
它工作得很好,但是因為它使用“讀取”,所以一旦文件被拖放到術語窗口,就需要按 Enter
這是當前代碼的一部分
while true ; do
echo "Drop file(s) here then press [ENTER]:"
echo "( x,q or exit,quit )"
read -p "> " read_file
while read dropped_file ;do
if [ -e ${dropped_file} ] ; then
...bunch of code here...
else
[[ "${dropped_file}" == *[xXqQ]* ]] && exit 1
fi
done <<< $(echo ${read_file} | tr " " "\n")
clear
done
我想在每次刪除文件時省略按 Enter 鍵,我想知道是否有一些魔法可以避免與鍵盤交互,除非我想退出腳本
任何幫助,將不勝感激
提前致謝
編輯
我已經解決了這個
while true ; do
read -sn1 read_file
while read splitted_filename; do
dropped_file="${dropped_file}${splitted_filename}"
done <<< $(echo ${read_file})
functionAction
[[ "${dropped_file}" == [xXqQ] ]] && exit 1
done
我認為您可以使用 yes、printf 或 expect 命令並使用\\n
鍵,它應該能夠執行您要查找的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.