iOS پر لینکس کمانڈ لائن لانچ کرنا

iOS پر لینکس کمانڈ لائن لانچ کرنا

کیا آپ جانتے ہیں کہ آپ iOS ڈیوائس پر لینکس کمانڈ لائن چلا سکتے ہیں؟ آپ پوچھ رہے ہوں گے، "میں اپنے آئی فون پر ٹیکسٹنگ ایپس کیوں استعمال کروں؟" منصفانہ سوال۔ لیکن اگر آپ Opensource.com پڑھتے ہیں، تو آپ کو شاید اس کا جواب معلوم ہوگا: لینکس کے صارفین اسے کسی بھی ڈیوائس پر استعمال کرنے کے قابل ہونا چاہتے ہیں اور اسے خود اپنی مرضی کے مطابق بنانا چاہتے ہیں۔

لیکن سب سے زیادہ، وہ پیچیدہ مسائل کو حل کرنے کی خواہش رکھتے ہیں۔

میرے پاس سات سال پرانا آئی پیڈ 2 منی ہے جو اب بھی ای بک پڑھنے اور دیگر کاموں کے لیے کافی اچھا ہے۔ تاہم، میں اسے اپنے پروگراموں اور اسکرپٹس کے سیٹ کے ساتھ ایپلی کیشنز کی کمانڈ لائن تک رسائی کے لیے بھی استعمال کرنا چاہتا ہوں، جس کے بغیر میں کام نہیں کر سکتا۔ مجھے ایک ایسے ماحول کی ضرورت ہے جس کا میں عادی ہوں، نیز میرے معیاری ترقیاتی ماحول۔ اور یہاں یہ ہے کہ میں نے اسے کیسے حاصل کیا

کی بورڈ سے منسلک ہو رہا ہے۔

فون یا ٹیبلیٹ کے آن اسکرین کی بورڈ کے ذریعے پروگرامنگ کے لیے کمانڈ لائن کے ساتھ کام کرنا کافی تکلیف دہ ہے۔ میں ایک بیرونی کی بورڈ کو جوڑنے کی تجویز کرتا ہوں، یا تو بلوٹوتھ کے ذریعے، یا وائرڈ کی بورڈ کو جوڑنے کے لیے کیمرہ کنکشن اڈاپٹر کا استعمال کرتے ہوئے (میں نے بعد کا انتخاب کیا)۔ جب آپ کائنیسس ایڈوانٹیج اسپلٹ کی بورڈ کو آئی فون 6 سے جوڑتے ہیں تو آپ کو ایک عجیب ڈیوائس ملتی ہے جو اس سے ملتی جلتی ہے۔ کارپوریٹ سائبر ڈیک کلاسک سے کردار ادا شیڈورون۔

iOS پر شیل انسٹال کرنا

iOS پر مکمل خصوصیات والا لینکس سسٹم چلانے کے لیے، دو اختیارات ہیں:

  • سیکیور شیل (SSH) لینکس کمپیوٹر سے منسلک ہے۔
  • iSH کے ساتھ الپائن لینکس کا استعمال کرتے ہوئے ایک ورچوئل سسٹم چلانا، جو اوپن سورس ہے لیکن ایپل کی ملکیتی TestFlight ایپلیکیشن کا استعمال کرتے ہوئے انسٹال ہونا ضروری ہے۔

متبادل کے طور پر، دو اوپن سورس ٹرمینل ایمولیٹر ایپلی کیشنز ہیں جو ایک محدود ماحول میں اوپن سورس ٹولز کے ساتھ کام کرنے کی صلاحیت فراہم کرتی ہیں۔ یہ سب سے زیادہ سٹرپڈ ڈاؤن آپشن ہے - درحقیقت، اس طرح آپ لینکس ٹولز چلاتے ہیں، لینکس نہیں۔ ان ایپلی کیشنز کے ساتھ کام کرتے وقت خصوصیت کی شدید حدود ہیں، لیکن آپ کو جزوی کمانڈ لائن فعالیت ملتی ہے۔

پیچیدہ حل کی طرف بڑھنے سے پہلے، میں سب سے آسان طریقہ دیکھوں گا۔

آپشن 1: سینڈ باکس شیل

سب سے آسان طریقوں میں سے ایک iOS ایپ کو انسٹال کرنا ہے۔ LibTerm. یہ آزاد مصدر سینڈ باکسڈ کمانڈ شیل صفر ڈالر میں 80 سے زیادہ کمانڈز کے لیے سپورٹ کے ساتھ۔ یہ Python 2.7، Python 3.7، Lua، C، Clang اور بہت کچھ کے ساتھ بنڈل آتا ہے۔

تقریباً ایک جیسی فعالیت ہے۔ جہنم کے طور پر، جسے ڈویلپرز نے "اسکرین ان پٹ پلیٹ فارم کے لیے ایک ٹیسٹ یوزر انٹرفیس" کے طور پر بیان کیا ہے۔ a-Shell ذرائع پوسٹ کیے گئے ہیں۔ اوپن سورس، یہ فعال ترقی میں ہے، فائل سسٹم تک رسائی فراہم کرتا ہے، اور Lua، Python، Tex، Vim، JavaScript، C اور C++ کے ساتھ ساتھ Clang اور Clang++ کے ساتھ آتا ہے۔ یہاں تک کہ یہ آپ کو پائتھون پیکیجز کو انسٹال کرنے کی اجازت دیتا ہے۔

آپشن 2: SSH

ایپ ڈاؤن لوڈ کرنے سے ایک اور قدم ایک SSH کلائنٹ کو ترتیب دینا ہے۔ اب ایک طویل عرصے سے، ہم iOS کے لیے بہت سے SSH کلائنٹ ایپس میں سے کسی کو بھی لینکس یا BSD چلانے والے سرور سے منسلک کرنے کے لیے استعمال کر رہے ہیں۔ SSH استعمال کرنے کا فائدہ یہ ہے کہ سرور کسی بھی سافٹ ویئر کے ساتھ کسی بھی تقسیم کو چلا سکتا ہے۔ آپ دور سے کام کرتے ہیں اور آپ کے کام کے نتائج آسانی سے آپ کے iOS ڈیوائس پر ٹرمینل ایمولیٹر میں منتقل ہو جاتے ہیں۔

پلک جھپکنے والا خول میں ایک مشہور ادا شدہ SSH ایپلی کیشن ہے۔ اوپن سورس. اگر آپ ڈیوائس کی چھوٹی اسکرین کو نظر انداز کرتے ہیں، تو اس سافٹ ویئر کو استعمال کرنا کسی دوسری کمانڈ لائن کے ذریعے سرور سے منسلک ہونے کے مترادف ہے۔ بلنک ٹرمینل بہت اچھا لگ رہا ہے، اس میں بہت سے ریڈی میڈ تھیمز ہیں اور اپنی مرضی کے مطابق بنانے اور نئے فونٹس شامل کرنے کی صلاحیت سمیت اپنی تخلیق کرنے کی صلاحیت ہے۔

آپشن 3: لینکس لانچ کریں۔

لینکس سرور سے جڑنے کے لیے SSH کا استعمال کمانڈ لائن تک رسائی کا بہترین طریقہ ہے، لیکن اس کے لیے ایک بیرونی سرور اور نیٹ ورک کنکشن کی ضرورت ہے۔ یہ سب سے بڑی رکاوٹ نہیں ہے، لیکن اسے مکمل طور پر نظر انداز نہیں کیا جا سکتا، اس لیے آپ کو بغیر سرور کے لینکس چلانے کی ضرورت پڑ سکتی ہے۔

اگر یہ آپ کا معاملہ ہے، تو آپ کو اسے ایک قدم آگے لے جانے کی ضرورت ہوگی۔ TestFlight ایپل ایپ اسٹور میں شائع ہونے سے پہلے ہی تیار کردہ ایپلیکیشنز کو انسٹال کرنے کے لیے ایک ملکیتی خدمت ہے۔ آپ App Store سے TestFlight ایپ انسٹال کر سکتے ہیں اور پھر ٹیسٹ ایپس استعمال کر سکتے ہیں۔ TestFlight میں ایپس ایک محدود تعداد میں بیٹا ٹیسٹرز (عام طور پر 10 تک) کو ان کے ساتھ محدود وقت کے لیے کام کرنے کی اجازت دیتی ہیں۔ ٹیسٹ ایپلیکیشن ڈاؤن لوڈ کرنے کے لیے، آپ کو اپنے آلے سے اس لنک پر جانا ہوگا جو عام طور پر ٹیسٹ ایپلیکیشن ڈویلپر کی ویب سائٹ پر موجود ہوتا ہے۔

iSH کے ساتھ الپائن لینکس چلانا

آئی ایس ایچ ایک اوپن سورس ٹیسٹ فلائٹ ایپلی کیشن ہے جو تیار شدہ تقسیم کے ساتھ ایک ورچوئل مشین لانچ کرتی ہے۔ الپائن لینکس (تھوڑی سی کوشش کے ساتھ، آپ دوسری تقسیم چلا سکتے ہیں)۔

اہم خصوصیت: تجرباتی درخواست. چونکہ iSH فی الحال ایک ٹیسٹ ایپلی کیشن ہے، اس لیے مستقل اور قابل اعتماد آپریشن کی توقع نہ کریں۔ TestFlight ایپلی کیشنز کا وقت محدود ہے۔ میری موجودہ تعمیر صرف 60 دن تک چلے گی۔ اس کا مطلب یہ ہے کہ 60 دنوں کے بعد مجھے ختم کر دیا جائے گا اور مجھے iSH ٹیسٹنگ کے اگلے دور میں دوبارہ شامل ہونا پڑے گا۔ مزید برآں، میں اپنی تمام فائلوں کو کھو دوں گا جب تک کہ میں انہیں iOS پر فائلز کا استعمال کرکے ایکسپورٹ نہ کروں یا انہیں گٹ ہوسٹ میں کاپی کروں یا SSH کے ذریعے. دوسرے الفاظ میں: یہ توقع نہ کریں کہ یہ کام کرتا رہے گا! سسٹم میں آپ کے لیے کوئی اہم چیز نہ ڈالیں! ایک علیحدہ مقام پر بیک اپ کریں!

iSH انسٹال کرنا

تنصیب کے ساتھ شروع کریں TestFlight ایپ اسٹور سے۔ پھر iSH انسٹال کریں، انسٹالیشن کا لنک موصول ہوا۔ درخواست کی ویب سائٹ سے۔ AltStore کا استعمال کرتے ہوئے ایک اور تنصیب کا طریقہ ہے، لیکن میں نے اسے آزمایا نہیں ہے. یا، اگر آپ کے پاس بامعاوضہ ڈویلپر اکاؤنٹ ہے، تو آپ GitHub سے iSH ریپوزٹری ڈاؤن لوڈ کر کے خود انسٹال کر سکتے ہیں۔

لنک کا استعمال کرتے ہوئے، TestFlight آپ کے آلے پر iSH ایپلیکیشن انسٹال کرے گی۔ کسی دوسرے ایپلیکیشن کی طرح، اسکرین پر ایک آئیکن ظاہر ہوگا۔

پیکیج مینجمنٹ

iSH الپائن لینکس کے ساتھ ایک x86 ایمولیٹر چلاتا ہے۔ الپائن ایک چھوٹا سا ڈسٹرو ہے، جس کا سائز 5MB سے کم ہے۔ الپائن کے ساتھ کام کرنے کا یہ میرا پہلا موقع تھا، اس لیے میں نے سوچا کہ minimalism پریشان کن ہو گا، لیکن مجھے واقعتاً یہ پسند آیا۔

iOS پر لینکس کمانڈ لائن لانچ کرنا
الپائن ایک پیکیج مینیجر کا استعمال کرتا ہے۔ APK، جو کہ apt یا pacman سے بھی آسان ہے۔

پیکیج کو انسٹال کرنے کا طریقہ:

apk add package

پیکیج کو کیسے ہٹایا جائے:

apk del package

دیگر احکامات اور معلومات کیسے تلاش کریں:

apk --help

پیکیج مینیجر کی تازہ کاری:

apk update
apk upgrade

ٹیکسٹ ایڈیٹر انسٹال کرنا

الپائن کا ڈیفالٹ ٹیکسٹ ایڈیٹر Vi ہے، لیکن میں Vim کو ترجیح دیتا ہوں، اس لیے میں نے اسے انسٹال کیا:

apk add vim

اگر چاہیں تو آپ نینو یا ایماکس انسٹال کر سکتے ہیں۔

شیل کی تبدیلی

میں آپ کے بارے میں نہیں جانتا، لیکن مجھے ضرورت تھی مچھلی شیل. دوسرے لوگ ترجیح دیتے ہیں۔ بش یا زش. تاہم، الپائن راکھ کا استعمال کرتا ہے! راکھ ڈیش شیل کا ایک کانٹا ہے، جو خود اصل راکھ کا کانٹا ہے، یا Almquist شیل. اس کی ترجیح رفتار ہے۔ میں نے بلٹ میں خودکار تکمیل، رنگوں، Vim کلیدی کنٹرولز، اور نحو کو نمایاں کرنے کے لیے رفتار کی تجارت کرنے کا فیصلہ کیا جو مجھے مچھلی کے خول سے پسند اور جانتے ہیں۔

مچھلی کی تنصیب:

apk add fish

اگر آپ کو باش کی خودکار تکمیل اور مین پیجز کے ساتھ ضرورت ہے تو انہیں انسٹال کریں:

apk add bash bash-doc bash-completion

الپائن کے minimalistic نظریے کا عام طور پر مطلب یہ ہوتا ہے کہ کچھ پروگرام جو دوسری تقسیم میں پیک کیے جاتے ہیں انہیں کئی چھوٹے پیکجوں میں تقسیم کیا جائے گا۔ اس کا مطلب یہ بھی ہے کہ آپ اپنے سسٹم کے سائز کو اپنی مرضی کے مطابق اور کم کر سکتے ہیں جس طرح آپ چاہتے ہیں۔

Bash انسٹال کرنے کے بارے میں مزید معلومات کے لیے دیکھیں یہ سبق.

پہلے سے طے شدہ شیل کو تبدیل کرنا

مچھلی کو انسٹال کرنے کے بعد، آپ داخل کر کے عارضی طور پر اس پر سوئچ کر سکتے ہیں۔ fish اور خول میں جانا. لیکن میں مچھلی کو ڈیفالٹ شیل اور کمانڈ بنانا چاہتا ہوں۔ chsh، جسے میں نے دوسری تقسیم پر استعمال کیا، کام نہیں کیا۔

سب سے پہلے ہم یہ معلوم کرتے ہیں کہ مچھلی کہاں نصب ہے:

which fish

مجھے جو ملا وہ یہ ہے:

/usr/bin/fish

اگلا، لاگ ان شیل کو مچھلی میں تبدیل کریں۔ آپ اپنے لیے کوئی بھی ایڈیٹر استعمال کر سکتے ہیں۔ اگر آپ ابتدائی ہیں، تو نینو انسٹال کریں (کمانڈ کے ساتھ apk add nano) تاکہ آپ کنفیگریشن فائلوں میں ترمیم کر سکیں اور انہیں CTRL+X کے ذریعے محفوظ کر سکیں، تصدیق کریں اور باہر نکلیں۔

لیکن میں نے Vim استعمال کیا:

vim /etc/passwd

میری پہلی لائن اس طرح تھی:

root:x:0:0:root:/root:/bin/ash

مچھلی کو ڈیفالٹ شیل بنانے کے لیے، اس لائن کو درج ذیل میں تبدیل کریں:

root:x:0:0:root:/root:/usr/bin/fish

پھر فائل کو محفوظ کریں اور باہر نکلیں۔

مجھے یقین ہے کہ شیل کا راستہ تبدیل کرنے کا ایک اچھا طریقہ ہے تاکہ اسے فوراً استعمال کیا جا سکے۔ لیکن میں اسے نہیں جانتا، اس لیے میں تجویز کرتا ہوں کہ ایپلیکیشن براؤزر پر واپس جائیں، شیل سے زبردستی باہر نکلیں، اور محفوظ طرف رہنے کے لیے، اپنے آئی پیڈ یا آئی فون کو آف کر کے دوبارہ شروع کریں۔ "الپائن میں خوش آمدید!" پیغام کے علاوہ، بار بار iSH کھولیں۔ اور apk سے لانچ کرنے کے بارے میں معلومات، آپ کو معیاری مچھلی لاگ ان خوش آمدید پیغام نظر آئے گا: مچھلی ، دوستانہ انٹرایکٹو شیل میں آپ کا استقبال ہے. ہورے!

iOS پر لینکس کمانڈ لائن لانچ کرنا

Python اور pip ترتیب دینا

میں نے شامل کرنے کا فیصلہ کیا۔ ازگر (ورژن 3.x)، نہ صرف کوڈ لکھنے کے لیے، بلکہ اس لیے بھی کہ میں متعدد Python پروگرام استعمال کرتا ہوں۔ آئیے اسے انسٹال کریں:

apk add python3

اگرچہ Python 2.x پرانا ہے، آپ اسے انسٹال کر سکتے ہیں:

apk add python

آئیے پائتھون پیکیج مینیجر کو انسٹال کرتے ہیں جسے pip اور کہا جاتا ہے۔ سیٹ اپ ٹولز:

python3 -m ensurepip --default-pip

پیکیج مینیجر کو انسٹال اور کنفیگر کرنے میں کچھ وقت لگے گا، اس لیے بس انتظار کریں۔

اس کے بعد آپ نیٹ ورک پر فائلوں کی منتقلی کے لیے ایک ٹول ڈاؤن لوڈ کر سکتے ہیں۔ curl کے:

apk add curl

کتابچے پڑھنا

مچھلی مین صفحات کی بنیاد پر بلٹ میں خودکار تکمیل کا استعمال کرتی ہے۔ دوسرے کمانڈ لائن صارفین کی طرح، میں دستی استعمال کرتا ہوں۔ man، لیکن یہ الپائن میں انسٹال نہیں ہے۔ تو میں نے اسے ٹرمینل پیجر کے ساتھ انسٹال کیا۔ کم:

apk add man man-pages less less-doc

انسان کے علاوہ میں شاندار استعمال کرتا ہوں۔ tldr صفحات پروجیکٹ، جو آسان اور کمیونٹی سے چلنے والے مین پیجز فراہم کرتا ہے۔

میں نے اسے پائپ کا استعمال کرتے ہوئے انسٹال کیا:

pip install tldr

ٹیم tldr جب کسی نئے صفحہ کی درخواست کا سامنا ہوتا ہے تو صفحات کو بازیافت کرنے کے لیے ویب سے منسلک ہوتا ہے۔ اگر آپ کو کمانڈ استعمال کرنے کا طریقہ جاننا ہو تو آپ کچھ ایسا لکھ سکتے ہیں۔ tldr curl اور سادہ انگریزی میں تفصیل اور کمانڈ استعمال کرنے کے طریقے کی اچھی مثالیں حاصل کریں۔

یقینا، یہ تمام تنصیب کا کام خود کار طریقے سے استعمال کیا جا سکتا ہے ڈاٹ فائلز یا انسٹالیشن اسکرپٹ، لیکن درحقیقت یہ الپائن کے نظریے سے مطابقت نہیں رکھتا ہے - اپنی ضروریات کے مطابق کم سے کم انسٹالیشن کو اپنی مرضی کے مطابق بنانا۔ اس کے علاوہ، اس میں اتنا وقت لگا، ہے نا؟

اضافی معلومات

آئی ایس ایچ ویکی کا ایک صفحہ ہے "کیا کام کرتا ہے" ان رپورٹس کے ساتھ جن پر فی الحال پیکیجز چل رہے ہیں۔ ویسے، ایسا لگتا ہے۔ npm ابھی کام نہیں کر رہا ہے۔.

ایک اور ویکی صفحہ وضاحت کرتا ہے کہ کیسے iSH فائلوں تک رسائی حاصل کریں۔ iOS فائلز ایپ سے۔ یہ ان طریقوں میں سے ایک ہے جس سے آپ فائلوں کو منتقل اور کاپی کر سکتے ہیں۔

آپ گٹ بھی انسٹال کر سکتے ہیں (ہاں! apk add git ) اور اپنے کام کو ریموٹ ریپوزٹری میں دھکیلیں یا اسے SSH کے ذریعے سرور پر منتقل کریں۔ اور، یقیناً، آپ GitHub سے اوپن سورس پراجیکٹس کی کسی بھی بڑی تعداد کو ڈاؤن لوڈ اور چلا سکتے ہیں۔

iSH کے بارے میں مزید معلومات ان لنکس پر مل سکتی ہیں:

ایڈورٹائزنگ کے حقوق پر

Vdsina پیش کرتا ہے۔ لینکس پر ورچوئل سرورز یا ونڈوز. ہم خصوصی طور پر استعمال کرتے ہیں۔ برانڈڈ سامان, اس کے اپنے ڈیزائن کا اپنی نوعیت کا بہترین سرور کنٹرول پینل اور روس اور یورپی یونین کے بہترین ڈیٹا سینٹرز میں سے ایک ہے۔ آرڈر کرنے کے لئے جلدی کرو!

iOS پر لینکس کمانڈ لائن لانچ کرنا

ماخذ: www.habr.com

نیا تبصرہ شامل کریں