ونڊوز، پاور شيل، ۽ ڊگھا رستا

ونڊوز، پاور شيل، ۽ ڊگھا رستا

منهنجو خيال آهي ته توهان، مون وانگر، هڪ کان وڌيڪ ڀيرا اهڙا رستا ڏٺا آهن !!! اھم_____نئون_____!!! ڊليٽ نه ڪريو!!! آرڊر نمبر 98819-649-B تاريخ 30 فيبروري 1985 Ivan Aleksandrovich Kozlov جي مقرري تي ڊپارٽمينٽ جي عارضي سرپرست سربراه جي طور تي ڪارپوريٽ VIP ڪلائنٽ جي مدد ڪرڻ ۽ sidelines.doc تي ڪاروباري گڏجاڻين کي منظم ڪرڻ لاء.

۽ اڪثر توهان اهڙي دستاويز کي ونڊوز ۾ کولڻ جي قابل نه هوندا. ڪجهه ماڻهو ڊسڪ ميپنگ جي صورت ۾ ڪم ڪار جي مشق ڪندا آهن، ٻيا استعمال ڪندا آهن فائل مئنيجر جيڪي ڊگھي رستن سان ڪم ڪري سگهن ٿا: پري مئنيجر، ڪل ڪمانڊر ۽ جهڙوڪ. ۽ گھڻا وڌيڪ اداسيءَ سان ڏسندا ھئا جيئن پي ايس اسڪرپٽ انھن ٺاھيو، جنھن ۾ تمام گھڻو ڪم لڳايو ويو ھو ۽ جنھن امتحان واري ماحول ۾ ڌمڪي سان ڪم ڪيو، پيداواري ماحول ۾ لاچاريءَ سان ھڪ ناممڪن ڪم جي شڪايت ڪئي: بيان ڪيل رستو، فائل جو نالو، يا ٻئي تمام وڏا آھن. مڪمل طور تي لائق فائل جو نالو 260 اکرن کان گھٽ ھجڻ گھرجي، ۽ ڊاريڪٽري جو نالو 248 اکرن کان گھٽ ھجڻ گھرجي.
جيئن ته اهو نڪتو، 260 اکر ڪافي آهن "نه صرف هر ڪنهن لاء." جيڪڏھن توھان چاھيو ٿا ته حدن کان ٻاھر وڃڻ جي اجازت ڏنل آھي، مھرباني ڪري ٻلي ڏانھن رجوع ڪريو.

هتي صرف فائل جي رستي جي ڊيگهه کي محدود ڪرڻ جا ڪجهه بدقسمتي جا نتيجا آهن:

موضوع کان ٿورو ڦيرو ڪندي، مون نوٽ ڪيو ته ڊي ايف ايس جي نقل لاءِ مضمون ۾ بحث ٿيل مسئلو خوفناڪ نه آهي ۽ ڊگهن نالن سان فائلون ڪاميابيءَ سان سرور کان سرور تائين سفر ڪن ٿيون (جيڪڏهن، يقيناً، باقي سڀ ڪجهه آهي. صحيح ڪيو).

مان پڻ توهان جو ڌيان هڪ تمام مفيد افاديت ڏانهن ڇڪائڻ چاهيان ٿو جنهن منهنجي مدد ڪئي آهي هڪ کان وڌيڪ ڀيرا ڦٽو. هوء پڻ ڊگھي رستن کان ڊپ نه آهي، ۽ هوء گهڻو ڪري سگهي ٿي. تنهن ڪري، جيڪڏهن ڪم فائل ڊيٽا کي نقل ڪرڻ/منتقل ڪرڻ لاءِ هيٺ لهي ٿو، توهان اتي روڪي سگهو ٿا. جيڪڏهن توهان کي فائل سسٽم رسائي ڪنٽرول لسٽن (DACLs) سان چالون کيڏڻ جي ضرورت آهي، پري ڏسو subinacl. ان جي ترقي يافته عمر جي باوجود، اهو شاندار طور تي ونڊوز 2012 R2 تي ڪم ڪيو. تُوت اپليڪيشن جا طريقا سمجهيا وڃن ٿا.

مون کي سکڻ ۾ دلچسپي هئي ته ڊگھي پاور شيل رستن سان ڪيئن ڪم ڪجي. هن سان گڏ اهو لڳ ڀڳ هڪ ڏاڙهي واري مذاق ۾ Ivan Tsarevich ۽ Vasilisa The Beautiful بابت آهي.

تڪڙو رستو

لينڪس ڏانهن وڃو ۽ پريشان نه ڪريو Windows 10/2016/2019 ۽ مناسب گروپ پاليسي سيٽنگ کي فعال ڪريو/رجسٽري کي ٽائيڪ ڪريو. مان هن طريقي تي تفصيل سان نه ڳالهائيندس، ڇاڪاڻ ته ... انٽرنيٽ تي هن موضوع تي اڳ ۾ ئي ڪيترائي مضمون آهن، مثال طور، هي.

انهي ڳالهه تي غور ڪندي ته اڪثر ڪمپنيون ڪيتريون ئي آهن، ان کي نرمي سان رکڻ لاء، آپريٽنگ سسٽم جا جديد نسخو نه آهن، اهو طريقو صرف ڪاغذ تي لکڻ لاء جلدي آهي، جيستائين، يقينا، توهان انهن خوش قسمت ماڻهن مان هڪ آهيو جن وٽ ڪجهه ميراثي سسٽم آهن ۽ Windows 10 /2016/2019 اعليٰ حڪمراني ڪري ٿو.

ڊگهو رستو

اچو ته هتي فوري طور تي هڪ رزرويشن ڪريون ته تبديليون ونڊوز ايڪسپلورر جي رويي تي اثرانداز نه ٿينديون، پر PowerShell cmdlets ۾ ڊگھا رستا استعمال ڪرڻ کي ممڪن بڻائينديون، جهڙوڪ Get-Item، Get-ChildItem، Remove-Item، وغيره.

پهرين، اچو ته تازه ڪاري ڪريون PowerShell. اهو هڪ، ٻه، ٽي ڀيرا ڪيو ويو آهي.

  1. اسان .NET فريم ورڪ کي 4.5 کان گھٽ ورزن تائين اپڊيٽ ڪريون ٿا. آپريٽنگ سسٽم گهٽ ۾ گهٽ هجڻ گهرجي Windows 7 SP1/2008 R2. توھان ڊائون لوڊ ڪري سگھوٿا موجوده نسخو هتي، وڌيڪ معلومات پڙهو هتي.
  2. ڊائونلوڊ ٿئي پئي ۽ انسٽال ڪريو ونڊوز مينيجمينٽ فريم ورڪ 5.1
  3. اسان مشين کي ريبوٽ ڪيو.

محنتي ماڻهو مٿي بيان ڪيل مرحلا دستي طور ڪري سگهن ٿا، سست ماڻهو SCCM، پاليسين، اسڪرپٽ ۽ ٻين آٽوميشن اوزارن جي مدد سان ڪري سگهن ٿا.

PowerShell جو موجوده نسخو متغير مان ڳولي سگھجي ٿو $PSVersionTable. تازه ڪاري کان پوء ان کي هن وانگر ڪجهه ڏسڻ گهرجي:

ونڊوز، پاور شيل، ۽ ڊگھا رستا

هاڻي جڏهن cmdlets استعمال ڪري رهيا آهيو حاصل ڪريو ChildItem ۽ معمول جي بدران رستو جي لفظي رستو.

واٽ فارميٽ ٿورو مختلف ٿيندو:

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 جي تازه ڪاري ورزن ۾ حاصل ڪريو ChildItem پيرا ميٽر حاصل ڪيو کوٽائي، جنهن سان توهان ٻيهر ڳولها لاءِ nesting جي کوٽائي مقرر ڪري سگهو ٿا، مون ان کي ٻه ڀيرا استعمال ڪيو ۽ مطمئن ٿيس.

هاڻي توهان کي پريشان ٿيڻ جي ضرورت ناهي ته توهان جي پي ايس اسڪرپٽ ڊگھي ڪنڊي واري رستي سان گمراهه ٿي ويندي ۽ پري فائلن کي ڏسڻ جي قابل نه هوندا. مثال طور، هن طريقي سان مون کي تمام گهڻو مدد ڪئي جڏهن هڪ اسڪرپٽ لکڻ لاء ڊي ايف ايس آر فولڊر ۾ فائلن جي "عارضي" خاصيت کي ري سيٽ ڪرڻ لاء. پر اها ٻي ڪهاڻي آهي، جنهن کي مان ڪنهن ٻئي مضمون ۾ ٻڌائڻ جي ڪوشش ڪندس. مان توهان جي دلچسپ تبصرن جو منتظر آهيان ۽ توهان کي سروي وٺڻ جي صلاح ڏيو.

مددگار ڪڙيون:
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

تبصرو شامل ڪريو