ونڈوز، پاور شیل، اور طویل راستے

ونڈوز، پاور شیل، اور طویل راستے

مجھے لگتا ہے کہ آپ نے، میری طرح، اس طرح کے راستے ایک سے زیادہ بار دیکھے ہوں گے۔ !!! اہم_____نئی_____!!! حذف نہ کریں!!! آرڈر نمبر 98819-649-B مورخہ 30 فروری 1985 Ivan Aleksandrovich Kozlov کی محکمے کے عارضی قائم مقام سربراہ کے طور پر تقرری پر کارپوریٹ VIP کلائنٹس کی مدد کرنے اور sidelines.doc پر کاروباری میٹنگز کے انعقاد پر.

اور اکثر آپ ونڈوز میں ایسی دستاویز کو فوراً نہیں کھول پائیں گے۔ کچھ لوگ ڈسک میپنگ کی شکل میں کام کرنے کی مشق کرتے ہیں، دوسرے فائل مینیجر استعمال کرتے ہیں جو طویل راستوں کے ساتھ کام کر سکتے ہیں: فار مینیجر، ٹوٹل کمانڈر اور اس طرح کے۔ اور بہت سے لوگوں نے ان کی تخلیق کردہ PS اسکرپٹ کے طور پر اداسی کے ساتھ دیکھا، جس میں بہت زیادہ کام لگایا گیا تھا اور جس نے آزمائشی ماحول میں ایک دھماکے کے ساتھ کام کیا، پیداواری ماحول میں بے بسی سے ایک ناممکن کام کے بارے میں شکایت کی: متعین راستہ، فائل کا نام، یا دونوں بہت لمبے ہیں۔ مکمل طور پر اہل فائل کا نام 260 حروف سے کم ہونا چاہیے، اور ڈائریکٹری کا نام 248 حروف سے کم ہونا چاہیے۔
جیسا کہ یہ پتہ چلتا ہے، 260 حروف کافی ہیں "صرف ہر ایک کے لیے نہیں۔" اگر آپ اجازت شدہ حدود سے باہر جانے میں دلچسپی رکھتے ہیں تو براہ کرم بلی سے رجوع کریں۔

فائل پاتھ کی لمبائی کو محدود کرنے کے چند بدقسمتی کے نتائج یہ ہیں:

موضوع سے قدرے ہٹتے ہوئے، میں نوٹ کرتا ہوں کہ ڈی ایف ایس ریپلیکیشن کے لیے مضمون میں زیر بحث مسئلہ خوفناک نہیں ہے اور لمبے ناموں والی فائلیں کامیابی کے ساتھ سرور سے سرور تک سفر کرتی ہیں (اگر یقیناً، باقی سب کچھ ہے۔ ٹھیک کیا).

میں آپ کی توجہ ایک بہت مفید افادیت کی طرف بھی مبذول کرانا چاہوں گا جس نے ایک سے زیادہ مرتبہ میری مدد کی ہے۔ روبوکوپی. وہ لمبے راستوں سے بھی نہیں ڈرتی، اور وہ بہت کچھ کر سکتی ہے۔ لہذا، اگر کام فائل ڈیٹا کو کاپی کرنے/منتقل کرنے پر ابلتا ہے، تو آپ وہاں روک سکتے ہیں۔ اگر آپ کو فائل سسٹم ایکسیس کنٹرول لسٹ (DACLs) کے ساتھ چالیں چلانے کی ضرورت ہے، تو دور دیکھو subinacl. اپنی ترقی یافتہ عمر کے باوجود، اس نے ونڈوز 2012 R2 پر بہترین کارکردگی کا مظاہرہ کیا۔ یہاں درخواست کے طریقوں پر غور کیا جاتا ہے۔

مجھے یہ سکھانے میں دلچسپی تھی کہ پاور شیل کے طویل راستوں کے ساتھ کیسے کام کیا جائے۔ اس کے ساتھ یہ تقریباً ایسا ہی ہے جیسے ایوان زارویچ اور واسیلیسا دی بیوٹیفل کے بارے میں داڑھی والے مذاق میں۔

تیز راہ

لینکس پر سوئچ کریں اور ونڈوز 10/2016/2019 کے بارے میں فکر نہ کریں اور مناسب گروپ پالیسی سیٹنگ کو فعال کریں/رجسٹری کو موافق بنائیں۔ میں اس طریقہ کار پر تفصیل سے نہیں رہوں گا، کیونکہ... انٹرنیٹ پر اس موضوع پر پہلے ہی بہت سے مضامین موجود ہیں، مثال کے طور پر، اس.

اس بات کو مدنظر رکھتے ہوئے کہ زیادہ تر کمپنیوں کے پاس بہت سی چیزیں ہیں، آپریٹنگ سسٹم کے جدید ترین ورژن نہیں، یہ طریقہ صرف کاغذ پر لکھنے کے لیے فوری ہے، جب تک کہ یقیناً آپ ان خوش نصیبوں میں سے ایک ہیں جن کے پاس میراثی نظام اور ونڈوز 10 بہت کم ہیں۔ /2016/2019 سپریم راج کرتا ہے۔

لمبا راستہ

آئیے یہاں فوری طور پر ایک ریزرویشن کرتے ہیں کہ تبدیلیاں ونڈوز ایکسپلورر کے رویے پر اثر انداز نہیں ہوں گی، لیکن پاور شیل cmdlets میں لمبے راستے استعمال کرنا ممکن بنائے گی، جیسے Get-Item، Get-ChildItem، Remove-Item، وغیرہ۔

سب سے پہلے، آئیے پاور شیل کو اپ ڈیٹ کریں۔ یہ ایک، دو، تین بار کیا گیا ہے۔

  1. ہم .NET فریم ورک کو 4.5 سے کم ورژن میں اپ ڈیٹ کرتے ہیں۔ آپریٹنگ سسٹم کم از کم Windows 7 SP1/2008 R2 ہونا چاہیے۔ آپ موجودہ ورژن ڈاؤن لوڈ کر سکتے ہیں۔ یہاں، مزید معلومات پڑھیں یہاں.
  2. ڈاؤن لوڈ ہو رہا ہے اور ونڈوز مینجمنٹ فریم ورک 5.1 انسٹال کریں۔
  3. ہم مشین کو ریبوٹ کرتے ہیں۔

محنتی لوگ اوپر بیان کردہ اقدامات کو دستی طور پر کر سکتے ہیں، سست لوگ اسے SCCM، پالیسیوں، اسکرپٹس اور دیگر آٹومیشن ٹولز کی مدد سے کر سکتے ہیں۔

پاور شیل کا موجودہ ورژن متغیر سے پایا جا سکتا ہے۔ $PSVersionTable. اپ ڈیٹ کے بعد اسے کچھ اس طرح نظر آنا چاہیے:

ونڈوز، پاور شیل، اور طویل راستے

اب cmdlets استعمال کرتے وقت حاصل کریں اور معمول کے بجائے اس طرح راہ использовать использовать لفظی راستہ.

راستے کی شکل قدرے مختلف ہوگی:

Get-ChildItem -LiteralPath "?C:Folder"
Get-ChildItem -LiteralPath "?UNCServerNameShare"
Get-ChildItem -LiteralPath "?UNC192.168.0.10Share"

راستوں کو معمول کے فارمیٹ سے فارمیٹ میں تبدیل کرنے کی سہولت کے لیے لفظی راستہ آپ اس فنکشن کو استعمال کر سکتے ہیں:

Function ConvertTo-LiteralPath 
Param([parameter(Mandatory=$true, Position=0)][String]$Path)
    If ($Path.Substring(0,2) -eq "") {Return ("?UNC" + $Path.Remove(0,1))}
    Else {Return "?$Path"}
}

براہ کرم نوٹ کریں کہ پیرامیٹر ترتیب دیتے وقت لفظی راستہ آپ وائلڈ کارڈ استعمال نہیں کر سکتے ہیں (*, ? اور اسی طرح)

پیرامیٹر کے علاوہ لفظی راستہ، PowerShell cmdlet کے اپ ڈیٹ شدہ ورژن میں حاصل کریں پیرامیٹر ملا گہرائی، جس کے ساتھ آپ تکراری تلاش کے لیے گھونسلے کی گہرائی کو سیٹ کر سکتے ہیں، میں نے اسے ایک دو بار استعمال کیا اور مطمئن ہوا۔

اب آپ کو پریشان ہونے کی ضرورت نہیں ہے کہ آپ کا PS اسکرپٹ لمبے کانٹے دار راستے پر بھٹک جائے گا اور دور کی فائلوں کو نہیں دیکھ سکے گا۔ مثال کے طور پر، DFSR فولڈرز میں فائلوں کے "عارضی" وصف کو دوبارہ ترتیب دینے کے لیے اسکرپٹ لکھتے وقت اس نقطہ نظر نے میری بہت مدد کی۔ لیکن یہ ایک اور کہانی ہے، جسے میں کسی اور مضمون میں سنانے کی کوشش کروں گا۔ میں آپ کے دلچسپ تبصروں کا منتظر ہوں اور آپ کو سروے کرنے کا مشورہ دیتا ہوں۔

کارآمد روابط:
docs.microsoft.com/ru-ru/dotnet/api/microsoft.powershell.commands.contentcommandbase.literalpath?view=powershellsdk-1.1.0
docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-childitem?view=powershell-5.1
stackoverflow.com/questions/46308030/handling-path-too-long-exception-with-new-psdrive/46309524
luisabreu.wordpress.com/2013/02/15/theliteralpath-parameter

سروے میں صرف رجسٹرڈ صارفین ہی حصہ لے سکتے ہیں۔ سائن ان، برائے مہربانی.

کیا طویل راستوں کا مسئلہ آپ سے متعلق ہے؟

  • جی ہاں

  • متعلقہ تھا، لیکن پہلے ہی فیصلہ کیا

  • یہ مداخلت کرتا ہے، لیکن زیادہ نہیں

  • میں نے اس کے بارے میں نہیں سوچا، ایسا لگتا ہے کہ سب کچھ کام کر رہا ہے۔

  • کوئی

  • دیگر (براہ کرم تبصروں میں وضاحت کریں)

155 صارفین نے ووٹ دیا۔ 25 صارفین غیر حاضر رہے۔

ماخذ: www.habr.com

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