جستجو برای:
سبد خرید 0
  • صفحه اصلی
  • دوره‌های آموزشی
  • وبلاگ
  • درباره ما
  • قوانین و مقررات
  • همکاری با ما
  • تماس با ما
محتوای باز
ورود
[suncode_otp_login_form]
گذرواژه خود را فراموش کرده اید؟
عضویت
[suncode_otp_registration_form]
  • خانه
  • کتاب آنلاین
  • درباره سایت
  • درباره لوگو
  • تماس با ما
محتوای باز
  • صفحه اصلی
  • دوره‌های آموزشی
  • وبلاگ
  • درباره ما
  • قوانین و مقررات
  • همکاری با ما
  • تماس با ما
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0
[wcas-search-form]

استفاده از تاریخچه (History) در خط فرمان لینوکس

23 تیر 1399
ارسال شده توسط فرشید نوتاش حقیقت
خط فرمان، گنو/لینوکس
تاریخچه (History)

همانطوری که در درس‌های ابتدایی یاد گرفتیم، بش (Bash) تاریخچه (History) از فرمان‌هایی است که وارد کرده‌ایم را حفظ و نگهداری می‌کند. این لیست فرمان‌های در داخل پوشه home در داخل فایلی با نام bash_history نگهداری می‌شوند.

تسهیلات تاریخچه منبعی مفید است که به شما کمک می‌کند تا کمتر تایپ کنید. به‌ویژه زمانی که با ویرایش فرمان ترکیب شوند شما می‌توانید فرمان قبلی تایپ شده را با تغییرات جزیی به فرمانی جدید تبدیل نمایید.

جستجو در تاریخچه (History) خط فرمان

هر زمانی، ما می‌توانیم محتوای لیست تاریخچه فرمان‌ها را مشاهده کنیم:

[me@linuxbox ~]$ history | less

به‌طور پیش‌فرض، بش (Bash) آخرین ۵۰۰ فرمان وارد شده توسط شما را در حافظه خود ذخیره می‌کند. در آینده خواهیم آموخت که چگونه این مقدار را تغییر دهیم. به‌عنوان مثال می‌خواهیم فرمان‌هایی که برای لیست کردن /usr/bin استفاده شده‌اند را پیدا کنیم. این یک راه برای رسیدن به این هدف است:

[me@linuxbox ~]$ history | grep /usr/bin

حال در بین فرمان‌های خود به یک فرمان جذاب مثل این رسیدیم:

88 ls -l /usr/bin > ls-output.txt

عدد ۸۸ شماره خطی است که فرمان در لیست تاریخچه فرمان‌ها به خود اختصاص داده است. یک نوع دیگر بسط وجود دارد به نام بسط تاریخچه (History Expansion). برای استفاده از فرمان خط ۸۸ از علامت تعجب (!) قبل از شماره خط استفاده می‌کنیم، به‌صورت زیر:

[me@linuxbox ~]$ !88

علاوه بر این بش (Bash) توانایی جستجوی فزاینده در تاریخچه فرمان را برای ما فراهم آورده است. به این معنا که می‌توانیم به بش (Bash) بگوییم تاریخچه فرمان را زمانی که کاراکتری را وارد می‌کنیم به‌صورت فزاینده جستجو کن که در این صورت هر کاراکتری که اضافه می‌کنیم جستجوی ما را پالایش و تصحیح می‌کند.

برای شروع یک جستجوی فزایند، Ctrl+R را فشار دهید و در دنباله آن متن مورد نظر را وارد نمایید. وقتی که فرمان را پیدا کردید می‌توانید Enter را فشار دهید تا فرمان اجرا شود یا Ctrl+J را بفشارید تا فرمان از خط تاریخچه به فرمان اخیر خط فرمان کپی شود.

برای یافتن پیدایش متن بعدی (حرکت به بالا در لیست تاریخچه)، کلید Ctrl+R را دوباره فشار دهید و برای خروج از حالت جستجو نیز می‌توانید Ctrl+G و یا Ctrl+C را فشار دهید. ابتدا Ctrl+R را فشار دهید:

(reverse-i-search)`':

مشاهده می‌شود که وضعیت خط فرمان تغییر کرده تا نشان دهد که ما در حال انجام یک جستجوی فزاینده برعکس هستیم. چرا برعکس؟ زیرا ما داریم از زمان حال (اکنون) به فرمان‌های گذشته جستجو می‌کنیم. سپس شروع به نوشتن متن جستجو می‌کنیم. (به‌عنوان مثال /usr/bin)

(reverse-i-search)`/usr/bin': ls -l /usr/bin > ls-output.txt

بلافاصله جستجو نتیجه را به ما برمی‌گرداند. اکنون می‌توانیم فرمان را با فشردن کلید Enter اجرا کنیم و یا با استفاده از Ctrl+J آن را به داخل فرمان‌های اخیر کپی کنیم. حال Ctrl+J را فشار می‌دهیم:

[me@linuxbox ~]$ ls -l /usr/bin > ls-output.txt

شل (Shell) برمی‌گردد و خط فرمان برای اجرا آماده می‌شود.

جدول زیر لیست برخی از کلمات کلیدی به‌منظور دستکاری لیست تاریخچه را نشان می‌دهد:

کلیدشرح عملکرد
Ctrl+Pجابجایی به ورودی قبلی تاریخچه، درست همان کاری که کلید جهت بالا در صفحه‌کلید می‌کند.
Ctrl+Nجابجایی به ورودی بعدی تاریخچه، درست همان کاری که کلید جهت پایین در صفحه‌کلید می‌کند.
Alt+<جابجایی به ابتدا (بالای) لیست تاریخچه
Alt+>جابجایی به انتها (پایین) لیست تاریخچه. برای مثال فرمان اخیر
Ctrl+Rبرعکس کردن جستجوی افزایشی، جستجوهای بصورت افزایشی از فرمان اخیر لیست تاریخچه را مرتب می‌کنند.
Alt+Pبرعکس کردن جستجوی غیرافزایشی، با این کلید، رشته جستجو را تایپ کنید و قبل از انجام جستجو کلید Enter را فشار دهید.
Alt+Nجستجو رو به جلو، غیرافزایشی
Ctrl+Oاجرای آیتم در لیست تاریخچه و پیش روی به مورد بعدی. این زمانی به کار می‌آید که شما می‌خواهید یک تاولی از فرمان‌های موجود در لیست تاریخچه را دوباره اجرا کنید.

بسط تاریخچه (History Expansion)

شل (Shell) نوع ویژه‌ای از بسط برای آیتم‌هایی که در لیست تاریخچه استفاده می‌شوند را با استفاده از کاراکتر علامت تعجب (!) عرضه می‌کند.

همانطور که دیدیم علامت تعجب سبب شد تا شماره خط فرمان ذخیره شده در لیست تاریخچه را پیدا کنیم. ویژگی‌های دیگری از نوع بسط در جدول زیر وجود دارد:

توالیعملکرد
!!تکرار آخرین فرمان. احتمالا این آسان‌تر است تا کلید جهت بالا و سپس Enter را فشار دهید.
!numberتکرار شماره آیتم لیست تاریخچه
!stringتکرار آخرین آیتم لیست تاریخچه که با رشته خاص شروع می‌شود.
!?stringتکرار آخرین آیتم لیست تاریخچه که حاوی رشته‌ای خاص است.

توجه: از بسط تاریخچه استفاده نکنید مگر آن که کاملاً از محتوای فرمان در تاریخچه مطمئن باشید.

منبع: لینوکس‌سیزن نوشته فرشید نوتاش حقیقت

برچسب ها: CLICommand Lineخط فرمانخط فرمان لینوکس
درباره فرشید نوتاش حقیقت

همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرم‌افزارهای آزاد/ متن‌باز و سیستم‌عامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.

نوشته‌های بیشتر از فرشید نوتاش حقیقت
قبلی تکمیل خودکار فرمان در لینوکس (Completion)
بعدی مجوزهای دسترسی (Permissions) در خط فرمان لینوکس

دیدگاهتان را بنویسید لغو پاسخ

این سایت از اکیسمت برای کاهش جفنگ استفاده می‌کند. درباره چگونگی پردازش داده‌های دیدگاه خود بیشتر بدانید.

جستجو
جستجو برای:
دسته‌بندی موضوعی مقالات
  • برنامه‌نویسی
    • پایتون
    • دواپس
  • پایگاه‌داده
    • MariaDB
    • MySQL
  • تجارت الکترونیک
    • بازاریابی اینترنتی
    • دیجیتال مارکتینگ
    • شبکه‌های اجتماعی
  • جامعه کاربری
    • لاگ
  • دسته‌بندی نشده
  • شبکه و امنیت
  • طراحی وب
    • سئو
    • سیستم مدیریت محتوا
      • وردپرس
  • فناوری‌های نوظهور
    • اینترنت اشیاء
    • رایانش ابری
      • OpenStack
    • کلان‌داده‌ها
  • گنو/لینوکس
    • توزیع
      • CentOS
      • اوبونتو
      • دبیان
      • فدورا
    • چیست
    • خط فرمان
  • مهاجرت به آزاد/متن‌باز
  • نرم‌افزار
    • اداری
      • لیبره آفیس
        • ایمپرس
        • بیس
        • دراو
        • رایتر
        • کالک
    • کاربردی
    • گرافیک و انیمیشن
      • بلندر
      • گیمپ
نماد الکترونیکی (اینماد)
پرداخت‌یار

محتوای باز؛ مرجع آموزشی نرم‌افزارهای آزاد/ متن‌باز

از اینکه قصد همکاری با رسانه «محتوای باز» را دارید بسیار خرسندیم و این مایه مباهات ماست.

نحوه همکاری با ما چندان پیچیده نیست و شرایط آن در ادامه، ارائه گردیده است.

دستمزد مدرسین

پیش از بیان شرایط ضبط ویدئو شایان ذکر است اشاره‌ای به دستمزد مدرسین سایت داشته باشیم.

شما ممکن است در دو حالت تمایل به نشر ویدئو خود را داشته باشید: یا آن را رایگان در اختیار عموم قرار دهید و یا اینکه در قبال فروش آن از خریدار وجه مربوطه محصول را اخذ نمایید.

صرف نظر از هر حالت ممکنه، می‌بایست شرایطی که در ادامه ذکر شده‌اند را رعایت کرده باشید.

در حالت اول (رایگان) رسانه محتوای باز (Open Content)، نه وجهی از شما برای نشر ویدئو می‌گیرد و نه وجهی به شما پرداخت می‌نماید و دوره آموزشی شما را به رایگان منتشر می‌کند.

اما در حالت بعدی طریقه همکاری به روش درآمد از فروش خواهد بود، به گونه‌ای که 70 درصد از کل مبلغ فروش دوره آموزشی متعلق به مدرس دوره بوده و 30 درصد مابقی به رسانه محتوای باز تعلق می‌گیرد.

شرایط کلی ضبط دوره آموزشی

دوره آموزشی مربوطه، صرف نظر از هر محتوایی که دارد می‌بایست در یکی از توزیعات گنو/لینوکسی ضبط شده باشد. (به‌عنوان مثال دوره دروپال در اوبونتو، دوره آموزشی کار با آردوینو در دبیان و امثالهم). اگر دوره آموزشی شما در محیط ویندوز و یا هر پلتفرم/سیستم‌عامل دیگری ضبط شده باشد از همکاری با شما معذوریم.

پیشنهاد می‌گردد برای ضبط دوره آموزشی در توزیع گنو/لینوکس از ابزار قدرتمند OBS استفاده نمایید. البته این صرفا یک پیشنهاد است و شما می‌توانید از هر ابزار مناسب دیگری برای این کار بهره ببرید.

برای آشنایی یا تسلط بیشتر می‌توانید دوره رایگان آموزش OBS محمد عابدینی را ببینید:

مشاهده دوره آموزش OBS
شرایط کیفی ضبط دوره آموزشی

کیفیت صدا از اهمیت ویژه‌ای برخوردار می‌باشد و می‌بایست فاقد هر گونه نویز یا صدای اضافی دیگری (صدای محیط پیرامون) باشد.

دوره آموزشی تهیه شده صرفا باید برای رسانه محتوای باز تدوین شده باشد و در هیچ سایت مشابه دیگری قرار نگرفته باشد.

از قرار دادن موسیقی متن، در بک‌گراند دوره آموزشی شدیدا پرهیز کنید. این کار موجب حواس‌پرتی مخاطب و ضعیف شدن صدای مدرس می‌گردد.

دوره آموزشی ضبط شده می‌باید فاقد هر گونه لوگو یا آدرس سایت دیگری (در گوشه تصویر یا بک‌گراند صفحه دسکتاپ و هر جای دیگری) باشد.

در حین دوره، مدرس نباید به برند خاصی اشاره کند که جز رقبای ما به‌شمار می‌آیند.

مدرس باید در ابتدا در اواسط و در انتهای دوره به برند ما یعنی رسانه محتوای باز (Open Content) بصورت کلامی اشاره نماید.

مدرس، هنگام تدریس نباید تپق زده، سرفه یا عطسه کند یا صدای قورت دادن بزاقش شنیده شود و بایستی با صدای رسا، دوستانه و پرانرژی به تدریس بپردازد.

قبل از تدوین دوره آموزشی حتما با ما در تماس باشید و یک ویدیوی چنددقیقه‌ای (ترجیحا 5 الی 10 دقیقه)، بصورت نمونه‌کار برای ما بفرستید.

از همکاری با شما سپاسگزاریم.

فراخوان همکاری