పవర్షెల్లోని వస్తువు నుండి తిరిగి వచ్చిన ఆస్తికి చాలా సార్లు ఆదర్శవంతమైన పేరు ఉండకపోవచ్చు లేదా విలువ అవసరమైన ఆకృతిలో లేదు. ఈ సందర్భాల కోసం, పవర్షెల్ కంప్యూటెడ్ లక్షణాలను నిర్మిస్తుంది. ఈ ఉపయోగకరమైన లక్షణం ఎంపిక కార్యకలాపాల సమయంలో తిరిగి వచ్చే విలువను సులభంగా మార్చడానికి మరియు పైప్లైన్ అవుట్పుట్లో అవసరమైన వాటిని త్వరగా మరియు సులభంగా తిరిగి ఇవ్వడానికి మిమ్మల్ని అనుమతిస్తుంది. ఆచరణలో, ఇది ఎలా ఉంటుంది? తేదీ ఆకృతిని తీసుకొని వేరే ఆకృతికి మారడం ఎలా?
$Object | Select-Object "Name","Date",@{
Name="NewDate"
Expression = { Get-Date $_.Date -Format "MM/dd/yyyy" }
}
మీరు ఇంతకు మునుపు చూడకపోతే, ఫైల్లో ఉంచడానికి ఇది చాలా విచిత్రంగా కనిపించే ఆకృతి కావచ్చు Select-Object
ఆదేశం. ప్రతి భాగం అర్థం ఏమిటో తెలుసుకోవడానికి చదవండి మరియు అవసరమైన విధంగా డేటాను సులభంగా మార్చటానికి ఇది ఎలా ఉపయోగపడుతుంది!
కంప్యూటెడ్ ఆస్తి యొక్క శరీర నిర్మాణ శాస్త్రం
కంప్యూటెడ్ ప్రాపర్టీ, సారాంశం, హాష్ టేబుల్, ఇది ఆస్తి కోసం అవుట్పుట్ ఎలా ఉండాలో నిర్వచిస్తుంది. అవుట్పుట్ను మార్చటానికి మేము నిర్వచించగల అనేక కీలు ఉన్నాయి.
- పేరు / లేబుల్ – తో, తిరిగి వచ్చిన ఆస్తి పేరును పేర్కొంటుంది
label
మారుపేరుగా ఉపయోగించబడుతుంది. - వ్యక్తీకరణ – క్రొత్త ఆస్తి విలువను లెక్కించడానికి ఉపయోగించే స్క్రిప్ట్ బ్లాక్.
- అమరిక – పట్టిక అవుట్పుట్ cmdlet ఉపయోగించినప్పుడు, నిలువు వరుసలో విలువలు ఎలా ప్రదర్శించబడతాయో ఇది నిర్వచిస్తుంది
left
,center
, లేదాright
అనుమతించిన విలువలుగా. - ఫార్మాట్ స్ట్రింగ్ – ఫార్మాట్ స్ట్రింగ్ను పేర్కొంటుంది, ఇది .NET ఫార్మాటింగ్ స్ట్రింగ్.
- వెడల్పు – పట్టిక అవుట్పుట్ కోసం, గరిష్ట కాలమ్ వెడల్పును నిర్వచిస్తుంది, ఇది కంటే ఎక్కువగా ఉండాలి
0
. - లోతు – తో మాత్రమే వాడతారు
Format-Custom
cmdlet, ప్రతి ఆస్తికి గరిష్ట విస్తరణ లోతును తెలుపుతుంది. - ఆరోహణ / అవరోహణ – ఒకటి లేదా అంతకంటే ఎక్కువ లక్షణాల క్రమబద్ధీకరణ క్రమాన్ని పేర్కొంటుంది, ఇవి రెండింటిలో ఒకదానికి సెట్ చేయబడిన బూలియన్ విలువలు
$True
లేదా$False
.
ఆచరణలో ఇది ఎలా ఉంటుంది? కోసం Select-Object
సాధారణంగా మీరు మాత్రమే ఉపయోగిస్తారు Name
ఉంది Expression
. నిర్దిష్ట పట్టిక అవుట్పుట్ను నియంత్రించడానికి, మీరు వివిధ అమరిక, పరిమాణం మరియు వెడల్పు ఎంపికలను ఉపయోగించవచ్చు.
వస్తువు మరియు లెక్కించిన లక్షణాలను ఎంచుకోండి
ఎక్కువ సమయం, Select-Object
ఇది లెక్కించిన లక్షణాలతో ఉపయోగించబడుతుంది, ఎందుకంటే ఇది సోర్స్ డేటాను మార్చకుండా అవుట్పుట్ను త్వరగా మరియు సులభంగా మార్చటానికి మిమ్మల్ని అనుమతిస్తుంది మరియు అవసరమైన ఫార్మాట్లో పైప్లైన్ వెంట డేటాను సౌకర్యవంతంగా పాస్ చేస్తుంది. ఆచరణలో ఎలా ఉందో దానికి క్రింద ఒక ఉదాహరణ ఉంది! మొదట, దిగువ అన్ని ఉదాహరణలను ప్రదర్శించడానికి మేము ఉపయోగించే అదే వస్తువుతో ప్రారంభిస్తాము.
$Object = [PSCustomObject]@{
'Name' = 'Test Object'
'Date' = Get-Date
'Number' = 100
'Enabled' = $True
'Extra' = @('One','Two','Three')
}
$Object
తేదీని చూస్తే, ఇది what హించిన దానితో సరిగ్గా సరిపోలడం లేదు. దాన్ని వేరే ఫార్మాట్కు మారుద్దాం. మీరు ఫైల్ను సవరించవచ్చు Get-Date
ఆబ్జెక్ట్ మీదనే ఆదేశించండి, కానీ కొన్నిసార్లు మీకు అలా చేసే సామర్థ్యం ఉండదు. అందువల్ల మేము ఈ క్రింది విధంగా కంప్యూటెడ్ ప్రాపర్టీని ఉపయోగించి తేదీ ఆకృతిని మార్చవచ్చు. కింది కోడ్తో, మేము తేదీ ఆకృతిని మారుస్తున్నాము MM/dd/yyyy
ఉపయోగించి Format
యొక్క పరామితి Get-Date
.
$Object | Select-Object Name,@{
Name="NewDate"
Expression = { Get-Date $_.Date -Format "MM/dd/yyyy" }
}
మీరు గమనిస్తే, కొత్త ఆస్తి అని NewDate
సృష్టించబడింది మరియు తేదీ ఆకృతి మార్చబడింది! మీరు స్క్రిప్ట్ బ్లాక్ను ఉపయోగిస్తున్నందున, మీరు కంట్రోల్ స్టేట్మెంట్ల వంటి చాలా లాజిక్లను లోపల ఉంచవచ్చు switch
లేదా అవసరమైతే మరింత పరిశోధన. మెరుగైన ఆకృతీకరణతో డేటాను ఎలా ఉత్పత్తి చేయాలో తెలుసుకోవడానికి చదవండి.
పట్టిక ఆకృతి మరియు లెక్కించిన లక్షణాలు
యొక్క డిఫాల్ట్ వీక్షణ Format-Table
కావలసినదాన్ని వదిలివేయవచ్చు. కాబట్టి, పని చేయడం కొంచెం మెరుగ్గా చేయడానికి మనం ఏమి చేయగలమో చూద్దాం. మొదట నిర్వచించిన అదే వస్తువును ఉపయోగించి, అవుట్పుట్ ఎలా ఉంటుంది?
మేము దీన్ని బాగా చేయగలము, ఖచ్చితంగా! అన్నింటిలో మొదటిది, అమరిక అనువైనది కాదు Number
లేదా Enabled
. రెండవది, మనం ఉత్పత్తి చేయాలి Number
రెండు దశాంశ పాయింట్లతో. చివరగా, మేము చేస్తాము Name
విస్తృత, ఇది మారుతుంది Date
మా క్రొత్త ఆకృతికి చేరండి Extra
కామాలతో. క్రింద చూడండి, వీక్షణను మార్చడానికి మేము కంప్యూటెడ్ లక్షణాలను ఎలా ఉపయోగించవచ్చో!
$Object | Format-Table @{
Name="Name"
Expression = { $_.Name }
Width = 20
},
@{
Name="Date"
Expression = { Get-Date $_.Date -Format "MM/dd/yyyy" }
Width = 10
},
@{
Name="Number"
Expression = { $_.Number }
Formatstring = 'N2'
Alignment="Center"
Width = 10
},
@{
Name="Enabled"
Expression = { $_.Enabled }
Alignment="Center"
Width = 10
},
@{
Name="Extra"
Expression = { $_.Extra -Join ", " }
Width = 30
}
మెరుగైన! డేటాను అర్థం చేసుకోవడం చాలా సులభం మరియు ఈ పనిని మెరుగుపరచడంలో లెక్కించడానికి లెక్కించిన లక్షణాలతో విభిన్న అవకాశాలు ఎలా కలిసివచ్చాయో మీరు చూడవచ్చు.
ముగింపు
కంప్యూటెడ్ ప్రాపర్టీస్ అనేది ఒక ప్రత్యేకమైన భాషా నిర్మాణం, ఇది అప్స్ట్రీమ్ కోడ్ను సవరించకుండా పైప్లైన్ అవుట్పుట్ను సవరించడానికి మీకు వేగవంతమైన మరియు సౌకర్యవంతమైన మార్గం అవసరమైనప్పుడు ఉపయోగించబడుతుంది. మీరు డేటాను పైప్లైన్లోకి పంపించేటప్పుడు కన్సోల్ వీక్షణ మరియు డేటా మానిప్యులేషన్ రెండింటికీ అందుబాటులో ఉన్న లక్షణాలతో, లెక్కించిన లక్షణాలు త్వరగా ఏదైనా స్క్రిప్ట్లో కలిసిపోతాయి.