انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: 🇬🇧بریتانیای کبیر🇬🇧 در 07 تیر 1403، 09:41 قظ
-
درود.
دستوراتی مثل cat, uniq, head و ... رو اگه بدون آرگومنت(مثلا etc/passwd/) بزنیم وارد محیطی میشیم که میشه ورودی هارو برای اون دستورات تایپ کرد. بعد تا ctrl+d نزنیم از این محیط خارج نمیشیم. تقریبا شبیه EOF>>
مثلا بزنید cat
به این حالت چی میگیم؟ وارد خط فرمان cat شدم؟ وارد محیط cat شدم؟ وارد محیط خط فرمان cat شدم؟ وارد دستور cat شدم؟ چی کار کردم؟ وارد کجا شدم؟ اسم این اصطلاحش چیه؟
-
وقتی cat رو خالی بزنی فکر نکنم وارد محیط خاصی بشی. فقط یه چیزی میشه شبیه echo که هر چی مینویسی همون رو برمیگردونه. دقیقا از این حالت چه استفادهای میکنی؟ :D
-
اکثر دستورات یونیکسی، ورودی شون رو از «ورودی استاندارد» می گیرن.تو ممکنه ورودی استاندارد رو با استفاده از پایپ ( | ) از یه دستور دیگه دستور بعدی پایپ کنی. ممکنه با > از طریق یه فایل اونو به دستورت بدی یا موقع اجرای دستور بهش ورودی استاندارد معرفی نکنی. در حالت آخر، دستور چون می خواد ورودی بخونه، ورودی استاندارد (که در این حالت کیبرد تو است) رو باز می کنه و ورودی مورد نظرش رو می خونه.
-
اینا یه سری نرم افزار هستن در واقع و اون ورودی ها در متد 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 اجرا میشن و برنامه شروع به کار میکنه و مثلا میبینه هیچی وارد نکردید و ازتون میخاد مثلا پسورد رو وارد کنید.