انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: تایپ یک کلمه بصورت اتومات (حل شد)  (دفعات بازدید: 1626 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 784
  • جنسیت : پسر
  • Debian + Mate
تایپ یک کلمه بصورت اتومات (حل شد)
« : 17 خرداد 1401، 10:51 ب‌ظ »
با سلام و احترام،

می خواهم در هنگام لاگین کاربر ، یک text editor یا Terminal Emulators باز شود و در آن عبارت " hello " به ترتیب حروف بصورت اتومات نوشته شود.
این طرحی است که مدتی به ذهنم افتاده ولی هیچ ایده ای در موردش ندارم. چطور می شود بدون آنکه اپراتور چیزی تایپ کند ، این کلمه بصورت حرف به حرف تایپ بشود؟
« آخرین ویرایش: 27 خرداد 1401، 07:36 ب‌ظ توسط norouzi90 »

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #1 : 18 خرداد 1401، 12:10 ق‌ظ »
با Gnome Tweaks میتونی پایانه رو تنظیم کنی پس از بالا اومدن سامانه اجرا بشه ، بعد توی .bashrc بگی اگه بار نخست بود که اجرا کن فلان اسکریپتو و مثلا یه پرونده بسازه تو /tmp که اگه بعدا باز کردی پایانه رو ، بررسی کنه اگه اون پرونده وجود داره ادامه نده ، چه کاریو ؟ اجرای اسکریپی که برنامه figlet رو اجرا کنه بنویسه h ، پس از نیم ثانیه پاک کنه بنویسه he و ... تا کامل برسه به hello
این ایده منه : )
« آخرین ویرایش: 18 خرداد 1401، 12:45 ق‌ظ توسط ㅤSudoㅤ »
آرچ و گنوم!

آفلاین Dr.Code

  • High Hero Member
  • *
  • ارسال: 1446
  • جنسیت : پسر
  • Dr.Code
    • My website
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #2 : 18 خرداد 1401، 01:22 ق‌ظ »
با Gnome Tweaks میتونی پایانه رو تنظیم کنی پس از بالا اومدن سامانه اجرا بشه ، بعد توی .bashrc بگی اگه بار نخست بود که اجرا کن فلان اسکریپتو و مثلا یه پرونده بسازه تو /tmp که اگه بعدا باز کردی پایانه رو ، بررسی کنه اگه اون پرونده وجود داره ادامه نده ، چه کاریو ؟ اجرای اسکریپی که برنامه figlet رو اجرا کنه بنویسه h ، پس از نیم ثانیه پاک کنه بنویسه he و ... تا کامل برسه به hello
این ایده منه : )
فکر کنم این تو ذهنته
figlet h
Clear
Figlet hi
تمیز در نمیاد
باید براش انیمیشن طراحی بشه

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 784
  • جنسیت : پسر
  • Debian + Mate
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #3 : 18 خرداد 1401، 03:01 ب‌ظ »
یک چیزی نوشتم که بشه روش کار بکنم و با کمک شما بهترش کنم .
چکار بکنم حروفی که چاپ می شوند ، عوض اینکه هر کدامشان در یک سطر جدید چاپ بشوند ، پشت سرهم فقط در یک سطر چاپ بشوند؟


#!/bin/bash

sleep 2 &
wait -n
echo  "h"
sleep 2 &
wait -n
echo  "e"
sleep 2 &
wait -n
echo  "l"
sleep 2 &
wait -n
echo  "l"
sleep 2 &
wait -n
echo  "o"

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #4 : 18 خرداد 1401، 03:42 ب‌ظ »
فکر کنم این تو ذهنته
نه !
figlet h
sleep 0.5
clear
figlet he
...
یک چیزی نوشتم که بشه روش کار بکنم و با کمک شما بهترش کنم .
چکار بکنم حروفی که چاپ می شوند ، عوض اینکه هر کدامشان در یک سطر جدید چاپ بشوند ، پشت سرهم فقط در یک سطر چاپ بشوند؟
بالا گذاشتم ، بسته figlet اگه نخواستی نصب نکن و با همون اکو پیش برو
آرچ و گنوم!

آفلاین آرگون

  • Sr. Member
  • *
  • ارسال: 263
  • جنسیت : پسر
  • 我是氩
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #5 : 18 خرداد 1401، 03:46 ب‌ظ »
شاید این کمک کنه :

#!/bin/bash
sleep 0.5 &
wait -n
echo "h"
sleep 0.5 &
wait -n
clear
echo "he"
sleep 0.5 &
wait -n
clear
echo "hel"
sleep 0.5 &
wait -n
clear
echo "hell"
sleep 0.5 &
wait -n
clear
echo "hello"
« آخرین ویرایش: 18 خرداد 1401، 04:03 ب‌ظ توسط Argon »
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. انجمن دکمه تشکر نداره

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #6 : 18 خرداد 1401، 03:49 ب‌ظ »
کنده و چیزای اضاف زیاد داره این ، همونی که نوشتم بهتره
آرچ و گنوم!

آفلاین آرگون

  • Sr. Member
  • *
  • ارسال: 263
  • جنسیت : پسر
  • 我是氩
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #7 : 18 خرداد 1401، 03:53 ب‌ظ »
کنده و چیزای اضاف زیاد داره این ، همونی که نوشتم بهتره
sleep شمارشش با ثانیه هست؟
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. انجمن دکمه تشکر نداره

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #8 : 18 خرداد 1401، 03:56 ب‌ظ »
اره
آرچ و گنوم!

آفلاین آرگون

  • Sr. Member
  • *
  • ارسال: 263
  • جنسیت : پسر
  • 我是氩
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #9 : 18 خرداد 1401، 04:06 ب‌ظ »
اره
ویرایشش کردم، فک کنم مشکل کندیش کمتر شده باشه
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. انجمن دکمه تشکر نداره

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #10 : 18 خرداد 1401، 04:11 ب‌ظ »
اخه wait -n میخواد چیکار ؟
حتی اون & اخر دستور sleep رو هم نمیخواد
دابل کوت های اکو هم لازم نیس
آرچ و گنوم!

آفلاین سودو.

  • High Hero Member
  • *
  • ارسال: 3095
  • جنسیت : پسر
  • :(){ :|:& };:
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #11 : 18 خرداد 1401، 04:12 ب‌ظ »
اول شروع اسکریپت چرا صبر بکنه اصلا ؟
آرچ و گنوم!

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 784
  • جنسیت : پسر
  • Debian + Mate
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #12 : 18 خرداد 1401، 04:26 ب‌ظ »
ممنون از بزرگواران الان درست شد.

#!/bin/bash

sleep 2 &
wait -n
echo -n "h"
sleep 2 &
wait -n
echo   -n "e"
sleep 2 &
wait -n
echo   -n "l"
sleep 2 &
wait -n
echo   -n "l"
sleep 2 &
wait -n
echo "o"


آیا راهی وجود دارد که سایز و یا رنگ فونت های خروجی را تغییر بدهم؟
آیا از کدهای html  در bash script می توان استفاده کرد؟

آفلاین آرگون

  • Sr. Member
  • *
  • ارسال: 263
  • جنسیت : پسر
  • 我是氩
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #13 : 18 خرداد 1401، 05:06 ب‌ظ »
اخه wait -n میخواد چیکار ؟
حتی اون & اخر دستور sleep رو هم نمیخواد
دابل کوت های اکو هم لازم نیس
نمیدونستم ;D
ولی ممنون که گفتی
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. انجمن دکمه تشکر نداره

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 784
  • جنسیت : پسر
  • Debian + Mate
پاسخ : تایپ یک کلمه بصورت اتومات
« پاسخ #14 : 18 خرداد 1401، 05:30 ب‌ظ »
اخه wait -n میخواد چیکار ؟
بدون wait -n ، اسکریپتی که من نوشتم درست عمل نمی کند یعنی sleep ها اجرا نمی شوند و عوض اینکه حرف به حرف نوشته شود خود کل کلمه بدون هیچ وقفه ای درج می گردد. دلیل علمی قضیه را نمی دانم ، این wait -n را از اینترنت پیدا کردم و چپوندم تو اسکریپت و درست عمل کرد.

حتی اون & اخر دستور sleep رو هم نمیخواد
درست می فرمایید، امتحان کردم نیازی به استفاده از امپرساند نبود ولی نمیدانم در اسکریپت های موجود در اینترنت از این علامت بعد از sleep استفاده می کنند، دلیلش را نمی دانم چیست ، گفتم حتما یک خبری است و من هم استفاده کردم!!!

دابل کوت های اکو هم لازم نیس
درست می فرمایید، امتحان کردم نیازی به استفاده از دابل کوت های اکو نبود ولی نظر شخصی ام این است که در اسکریپت با علایم کوتیشن یا دابل کوتیشن بهتر می توان string ها را تشخیص داد. من هم بدین دلیل ترجیح می دهم استفاده کنم.


اول شروع اسکریپت چرا صبر بکنه اصلا ؟
بنظرم این وقفه ها در اجرای درست دستورات بهتر است باشند. می خواهیم در هنگام لاگین کاربر یک text editor یا Terminal Emulators باز شود و در آن عبارت " hello " به ترتیب حروف بصورت اتومات نوشته شود. این text editor یا ترمینال برای باز شدن در مونیتور کاربر بصورت کامل نیازمند زمان است و ما با وقفه اولی این عمل را انجام می دهیم.