పవర్‌షెల్ 7.1 మొదటి చూపులో భారీ మార్పులను కలిగి ఉన్నట్లు అనిపించకపోవచ్చు, కానీ మీరు might హించిన దానికంటే చాలా ఎక్కువ హుడ్ కింద ఉంది. మీ స్క్రిప్టింగ్‌ను మెరుగుపరచడానికి మరియు మరింత మెరుగైన స్క్రిప్ట్‌లను అభివృద్ధి చేయడంలో మీకు సహాయపడే చాలా ఉపయోగకరమైన లక్షణాలు మరియు సాధనాలు కూడా ఉన్నాయి. పవర్‌షెల్ 7.1 11/11/2020 న విడుదలైంది మరియు ఐటి సమాజంలో చాలా మంది దీనిని వేగంగా స్వీకరిస్తున్నారు. ఈ వ్యాసంలో అనేక మెరుగుదలలు మరియు మెరుగుదలలు ఉన్నాయి, అయితే ఇది అన్ని మెరుగుదలల యొక్క పూర్తి సంకలనం కాదు.

నిర్మాణ మార్పులు

కొత్తగా విడుదలైన నెట్ 5 పై నిర్మించిన పవర్‌షెల్ 7.1 అతిపెద్ద మెరుగుదల. సాంప్రదాయ .NET మరియు .NET కోర్లతో .NET తీసుకున్న ఏకీకరణ ప్రయాణాన్ని కొనసాగించే ప్రధాన విడుదల ఇది. .NET 5 తో, ఏకీకృత కోర్ వైపు మొదటి దశలు చేయబడతాయి. పవర్‌షెల్ 7.1 అనేక పనితీరు మరియు భాషా మెరుగుదలలను సద్వినియోగం చేస్తుంది.

కోర్ మాడ్యూల్స్ నవీకరించబడ్డాయి మరియు మెరుగుదలలను అప్‌లోడ్ చేయండి

పవర్‌షెల్ 7.1 ప్రధాన మాడ్యూల్‌కు అనేక నవీకరణలను కలిగి ఉంది. ముఖ్యంగా, PSReadLine 2.1.0 లో ప్రిడిక్టివ్ ఇంటెల్లిసెన్స్ ఉంది, ఇది ఫిష్ షెల్ లాంటి సింటాక్స్ ప్రిడిక్షన్ ఇంజిన్. అదనంగా, vi మోడ్‌కు అనేక పరిష్కారాలు చేయబడ్డాయి మరియు పొడిగింపును సెట్ చేసే అదనపు సామర్థ్యం MaximumHistoryCount వినియోగదారు ప్రొఫైల్ నుండి.

మెరుగు WinCompat మాడ్యూల్ లోడింగ్, పవర్‌షెల్ 7 మాడ్యూల్స్ ఇప్పుడు అధిక ప్రాధాన్యతతో చికిత్స పొందుతాయి. ఇది ఉపయోగిస్తున్నప్పుడు ప్రధాన రూపాల యొక్క అనుకోకుండా ఓవర్రైట్ చేయడాన్ని నిరోధిస్తుంది WinCompat పవర్‌షెల్ యొక్క నవీకరించబడిన సంస్కరణతో పనిచేయడానికి స్థానికేతర పవర్‌షెల్ 7 మాడ్యూళ్ళను ఎలా అనుమతించాలి.

కొత్త ఇంజిన్ లక్షణాలు

కోర్సు యొక్క, చాలా ఉపయోగకరమైన కొత్త కోర్ లక్షణాలు ఉన్నాయి. మూడు ప్రధానమైనవి:

  • PSNullConditionalOperators
  • PSUnixStat
  • TLS 1.3 మద్దతు

శూన్య షరతులతో కూడిన ఆపరేటర్లు వాస్తవానికి పవర్‌షెల్ 7 లో తిరిగి ప్రవేశపెట్టబడ్డారు కాని ప్రయోగాత్మక లక్షణంగా. ఈ కార్యాచరణ ఇప్పుడు ప్రధాన స్రవంతిగా మార్చబడింది మరియు డిఫాల్ట్‌గా పవర్‌షెల్ 7.1 లో చేర్చబడింది. ఇద్దరు కొత్త వ్యాపారులు ఉన్నారు ?? ఉంది ??=.

# This typically replaces an if null statement and will run the output if the value is null.
$Object ?? '$object contains a $null value'

# When the value of the conditional is null then, assign that object to the value on the right of the conditional.
$Object ??= 'This value is assigned on a $null $object'

తరువాత, మనకు ఫైల్ ఉంది PSUnixStat ఎంపిక, ఈ ఫైల్ ఇప్పుడు ప్రయోగాత్మకంగా తరలించబడిందని సూచిస్తుంది, అయితే ఇప్పటికీ కొన్ని సార్లు ప్రయోగాత్మకంగా కనిపిస్తుంది. ఈ లక్షణం Linux సిస్టమ్స్‌లో మాత్రమే అందుబాటులో ఉంటుంది. మీరు దాని స్థితిని తెలుసుకోవచ్చు మరియు కింది వాటిని చేయడం ద్వారా ఫంక్షన్‌ను సక్రియం చేయవచ్చు.

# Make sure this feature is enabled, will need to restart the PowerShell session
Get-ExperimentalFeature -Name 'PSUnixFileStat' | Enable-ExperimentalFeature

ఈ లక్షణం మీకు క్రొత్తదాన్ని ఇస్తుంది UnixMode యునిక్స్ నుండి సమాచారాన్ని ప్రదర్శించే ఆస్తి stat ఆదేశం. సాంప్రదాయ లైనక్స్ అనుమతులతో పని చేసేవారికి ఇది చాలా ఉపయోగపడుతుంది.

చివరగా, TLS 1.3 మద్దతు ఇప్పుడు వివిధ వెబ్ cmdlets వంటి వాటిలో చేర్చబడింది Invoke-RestMethod ఉంది Invoke-WebRequest. TLS యొక్క ఈ క్రొత్త సంస్కరణలో చేర్చబడిన పనితీరు మరియు భద్రతా మెరుగుదలలను ఉపయోగించాలనుకునేవారికి మరియు అలా చేయగల సామర్థ్యం గల ఎండ్‌పాయింట్‌తో సంకర్షణ చెందడానికి, ఇది చాలా ఉపయోగకరమైన అదనంగా ఉంటుంది. సైట్ TLS 1.3 కు మద్దతు ఇస్తే, క్రొత్త ప్రోటోకాల్ వెర్షన్ ద్వారా కంటెంట్ తిరిగి ఇవ్వబడుతుంది మరియు చర్చించబడుతుంది.

Invoke-RestMethod -Uri '<https://mysite.com>' -SslProtocol Tls13

అదనపు మెరుగుదలలు

స్క్రిప్ట్ యొక్క సామర్థ్యాలను మరియు నిర్మాణాన్ని మెరుగుపరచడంలో సహాయపడే కొన్ని అదనపు లక్షణాలు మరియు మెరుగుదలలు ఉన్నాయి.

  • విండోస్ వాతావరణంలో, Start-Process ఇప్పుడు, అప్రమేయంగా, ఇది ప్రస్తుత సెషన్ యొక్క అన్ని ఎన్విరాన్మెంట్ వేరియబుల్స్ను కలిగి ఉంటుంది. ఉపయోగిస్తున్నప్పుడు మాత్రమే UseNewEnvironment పారామితి కొత్త ప్రాసెస్ వేరియబుల్స్‌తో వాతావరణాన్ని సృష్టిస్తుంది.
  • ది ForEach-Object -Parallel ఆదేశం ఇప్పుడు అమలు స్థలాలను తిరిగి ఉపయోగిస్తుంది. ఇది మెమరీ మరియు పనితీరు వినియోగాన్ని మెరుగుపరుస్తుంది. గరిష్ట అమలు స్థలం వేరుచేయడం సాధ్యం కాదని ఆందోళన చెందుతున్నవారికి, ది UseNewRunspace ప్రతి పైప్‌లైన్ మళ్ళా కోసం కొత్త అమలు స్థలాన్ని సృష్టించడానికి ఇప్పుడు చేర్చబడింది.
  • ది Get-Random ఆదేశం ఇప్పుడు Shuffle పరామితి. దీనికి తెలియజేయబడిన సేకరణ అవసరం Get-Random లేదా ద్వారా InputObject మరియు అదే సేకరణను తిరిగి ఇవ్వండి కాని క్రమంలో కలపాలి.
  • పరామితిని జోడించండి AsUTC కు Get-Date ఆదేశం. ఇది వంటి సంప్రదాయ మార్పిడి యుటిలిటీలను సులభతరం చేస్తుంది [DateTime] వస్తువు.
  • అమలు చేయండి Stop-Computer Linux మరియు macOS వ్యవస్థల కొరకు cmdlet. ఇది బైనరీపై ఆధారపడి ఉంటుంది /sbin/shutdown అందుబాటులో ఉండండి. ఆపరేటింగ్ సిస్టమ్ లైనక్స్ అయితే, ఆమోదించిన వాదన now మరియు ఆపరేటింగ్ సిస్టమ్ మాకోస్ అయితే, దాటిన వాదన -P now.
  • ఒకేలా Stop-Computer, Restart-Computer ఇది ఇప్పుడు Linux మరియు macOS వ్యవస్థల కొరకు అమలు చేయబడింది. ఇది బైనరీని ఉపయోగిస్తుంది /sbin/shutdown మరియు వాదనను పాస్ చేయండి -r now.

నిర్ణయాత్మక మార్పులు

చివరగా, గణనీయమైన మార్పులు ఉన్నాయి. ఎక్కువ జాబితా చేయబడినవి ఉన్నాయి, కానీ ఈ రెండు స్క్రిప్ట్‌లను ఇతరులకన్నా ఎక్కువగా ప్రభావితం చేస్తాయి.

  • యొక్క పేరు మార్చడం FromUnixTime కోసం UnixTimeSecondsGet-Date యునిక్స్ టైమ్ ఇన్‌పుట్‌ను అనుమతించే cmdlet ఈ కార్యాచరణను ఉపయోగించే స్క్రిప్ట్‌లను ప్రభావితం చేస్తుంది మరియు నవీకరించబడాలి.
  • తిరిగి వచ్చే ఫలితాన్ని మూసివేయవద్దు PSObject స్క్రిప్ట్‌బ్లాక్‌ను ప్రతినిధి రకాలుగా మార్చేటప్పుడు. మీరు స్క్రిప్ట్‌బ్లాక్‌ను ప్రసారం చేస్తున్నప్పుడు ఇది అంచు పరిస్థితి మరియు రిటర్న్ రకం అసలు వస్తువుగా ఉండాలని మీరు కోరుకుంటారు మరియు PSObject కు ప్రసారం చేయకూడదు.

ముగింపు

పవర్‌షెల్ 7.1 భారీ కొత్త ఫీచర్లను ప్రవేశపెట్టినట్లు అనిపించకపోవచ్చు, కానీ బ్యాకెండ్ ఇంజిన్‌కు అనేక మెరుగుదలలు మరియు ప్రధాన మెరుగుదలలు ఉన్నాయి. పవర్‌షెల్ పర్యావరణ వ్యవస్థ మరియు భాష ప్రతి పునరావృతంతో మెరుగుపరుస్తూనే ఉన్నాయి మరియు ప్రపంచవ్యాప్తంగా సిస్టమ్ నిర్వాహకులకు వేగంగా ప్రాచుర్యం పొందిన మరియు ప్రాథమిక భాషగా మారుతున్నాయి.

Source link