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

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

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

نویسنده موضوع: وقتی وارد محیط دستوراتی مثل cat میشیم چی میگیم؟  (دفعات بازدید: 522 بار)

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

آفلاین 🇬🇧بریتانیای کبیر🇬🇧

  • High Hero Member
  • *
  • ارسال: 2657
  • جنسیت : پسر
  • GOD SAVE THE KING/QUEEN
درود.
دستوراتی مثل cat, uniq, head و ... رو اگه بدون آرگومنت(مثلا etc/passwd/) بزنیم وارد محیطی میشیم که میشه ورودی هارو برای اون دستورات تایپ کرد. بعد تا ctrl+d نزنیم از این محیط خارج نمیشیم. تقریبا شبیه  EOF>>
مثلا بزنید catبه این حالت چی میگیم؟ وارد خط فرمان cat شدم؟ وارد محیط cat شدم؟ وارد محیط خط فرمان cat شدم؟ وارد دستور cat شدم؟  چی کار کردم؟ وارد کجا شدم؟ اسم این اصطلاحش چیه؟
« آخرین ویرایش: 07 تیر 1403، 09:50 ق‌ظ توسط بریتانیای کبیر »
🇬🇧🏴󠁧󠁢󠁥󠁮󠁧󠁿🏴󠁧󠁢󠁷󠁬󠁳󠁿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧

آفلاین abc

  • Full Member
  • *
  • ارسال: 144
  • جنسیت : پسر
وقتی cat رو خالی بزنی فکر نکنم وارد محیط خاصی بشی. فقط یه چیزی می‌شه شبیه echo که هر چی می‌نویسی همون رو برمی‌گردونه. دقیقا از این حالت چه استفاده‌ای می‌کنی؟ :D
~

آفلاین جادی

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1610
    • در دفاع از آزادی بیان
اکثر دستورات یونیکسی، ورودی شون رو از «ورودی استاندارد» می گیرن.تو ممکنه ورودی استاندارد رو با استفاده از پایپ ( | ) از یه دستور دیگه دستور بعدی پایپ کنی. ممکنه با > از طریق یه فایل اونو به دستورت بدی یا موقع اجرای دستور بهش ورودی استاندارد معرفی نکنی. در حالت آخر، دستور چون می خواد ورودی بخونه، ورودی استاندارد (که در این حالت کیبرد تو است) رو باز می کنه و ورودی مورد نظرش رو می خونه.
آزادی کیبورد حق هر انسان است - جادی

آفلاین محمد رضا لامعی

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
  • همیشه در حال یادگیری
    • سایت شخصی
اینا یه سری نرم افزار هستن در واقع و اون ورودی ها در متد main وارد میشن
نمونه c++
#include <iostream>

using namespace std;
int main( int argc,      // Number of strings in array argv
          char *argv[],   // Array of command-line argument strings
          char *envp[] )  // Array of environment variable strings
{
    int count;

    // Display each command-line argument.
    cout << "\nCommand-line arguments:\n";
    for( count = 0; count < argc; count++ )
         cout << "  argv[" << count << "]   "
                << argv[count] << "\n";
}

نمونه سی شارپ

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            if (args[0].ToUpper() == "ls".ToUpper())
            {
                foreach (var c in Directory.GetDirectories(Directory.GetCurrentDirectory()))
                {
                    Console.WriteLine(c);
                }
            }
            else
            {
                Console.WriteLine("invalid command!");
            }
        }
    }
}

دستور اجرا برای نمایش لیست دایرکتوری ها در اپی که با سی شارپ نوشته شده

ConsoleApp1\ConsoleApp1\bin\Debug\net8.0>ConsoleApp1.exe ls

یه برنامه ای نوشتم که وقتی اجرا میشه اگه ورودی مورد نظر رو بدی لیست فولدر هارو چاپ میکنه در غیر این صورت ارور میده.
حالا میتونست ورودی نداشته باشه یا حتی اسمش همون ls باشه!

همین دستور ls رو که یه برنامه هست رو میتونی از مسیر /usr/bin پیدا کنی

اونم حالت خاصی نیست فقط برنامه ls یا cat اجرا میشن و برنامه شروع به کار میکنه و  مثلا میبینه هیچی وارد نکردید و ازتون میخاد مثلا پسورد رو وارد کنید.
« آخرین ویرایش: 07 تیر 1403، 10:00 ب‌ظ توسط محمد رضا لامعی »
a Day Without Learning is a Lost Day