สิ่งนี้ไม่สามารถใช้ได้กับ Wayland หากคุณใช้ Ubuntu 17.10 และไม่เปลี่ยนเป็นการใช้ Xorg เมื่อลงชื่อเข้าใช้โซลูชันนี้ไม่เหมาะสำหรับคุณ
คุณสามารถใช้xdotool
สำหรับการที่ หากการหน่วงเวลาระหว่างการกดแป้นควรสอดคล้องกันมันง่ายพอ ๆ กับที่:
xdotool type --delay 100 something
ประเภทนี้something
มีความล่าช้าเป็น100
มิลลิวินาทีระหว่างการกดแป้นแต่ละครั้ง
หากความล่าช้าระหว่างการกดแป้นควรเป็นแบบสุ่มสมมติว่า 100 ถึง 300 มิลลิวินาทีสิ่งต่าง ๆ จะซับซ้อนกว่านี้เล็กน้อย:
$ text="some text"
for ((i=0;i<${#text};i++));
do
if [[ "${text:i:1}" == " " ]];
then
echo -n "key space";
else
echo -n "key ${text:i:1}";
fi;
[[ $i < $((${#text}-1)) ]] && echo -n " sleep 0.$(((RANDOM%3)+1)) ";
done | xdotool -
นี้for
ห่วงไปผ่านทุกตัวอักษรเดียวของสตริงที่บันทึกไว้ในตัวแปรtext
พิมพ์อย่างใดอย่างหนึ่งkey <letter>
หรือkey space
ในกรณีของพื้นที่ตามด้วยsleep 0.
และจำนวนสุ่มระหว่าง 1 และ 3 ( xdotool
's sleep
ตีความตัวเลขเป็นวินาที) เอาต์พุตทั้งหมดของลูปจะถูกไพพ์ไปxdotool
ที่ซึ่งจะพิมพ์ตัวอักษรโดยมีการหน่วงเวลาแบบสุ่มในระหว่างนั้น หากคุณต้องการที่จะเปลี่ยนความล่าช้าเพียงแค่เปลี่ยนบางส่วนเป็นที่ต่ำกว่าและขีด จำกัด บน - สำหรับ 0.2-0.5 วินาทีมันจะเป็น(RANDOM%x)+y
y
x-1+y
(RANDOM%4)+2
โปรดทราบว่าวิธีการนี้จะไม่พิมพ์ข้อความ แต่ให้พิมพ์แบบเดียวกับที่ผู้ใช้ทำโดยการสังเคราะห์ปุ่มกดเดียว ดังนั้นข้อความจะถูกพิมพ์ลงในหน้าต่างที่โฟกัสอยู่ในขณะนั้น หากคุณเปลี่ยนส่วนโฟกัสของข้อความจะได้รับการพิมพ์ในหน้าต่างโฟกัสใหม่ซึ่งอาจหรืออาจไม่ใช่สิ่งที่คุณต้องการ ในทั้งสองกรณีลองดูคำตอบอื่น ๆ ที่นี่ซึ่งทั้งหมดนั้นยอดเยี่ยม!