使用模板的ConvertFrom-String无法按预期进行解析

亚当

我正在尝试利用Windows Management Production Preview 5中的新ConvertFrom-String commandlet

$Sample正在尝试从中解析数据的字符串以及$Template正在使用的。

我正在获取要查找的大多数数据,但由于某种原因而无法获取全部。

我已经阅读了许多 有关该主题 博客 文章但在使用ConvertFrom-String Buddy进行解析时遇到了麻烦,但是无法获取它来提取我需要的所有数据。

您能否让我深入了解我可能在做错什么,导致大多数数据被捕获,但不是全部?

预先感谢您的任何帮助或见解。

PowerShell版本:

PS C:\Users\alozano\Desktop> $psversiontable.PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      0      10514  6      

这是正在运行的powershell代码:

$Sample = @"
  JJK072821.12Z1220126.23630-01.S.JABI  
  +20.0               DARKNESS          
  6 IPS               PRINT SPEED       
  +000                TEAR OFF          
  APPLICATOR          PRINT MODE        
  NON-CONTINUOUS      MEDIA TYPE        
  WEB                 SENSOR TYPE       
  DIRECT-THERMAL      PRINT METHOD      
  812                 PRINT WIDTH       
  1874                LABEL LENGTH      
  9.0IN    228MM      MAXIMUM LENGTH    
  DISABLED            SUPPLIES WARNING  
  MAINT. OFF          EARLY WARNING     
  CONNECTED           USB COMM.         
  READY               EXTERNAL 5V       
  BIDIRECTIONAL       PARALLEL COMM.    
  RS232               SERIAL COMM.      
  9600                BAUD              
  8 BITS              DATA BITS         
  NONE                PARITY            
  XON/XOFF            HOST HANDSHAKE    
  NONE                PROTOCOL          
  000                 NETWORK ID        
  NORMAL MODE         COMMUNICATIONS    
  <~>  7EH            CONTROL PREFIX    
  <^>  5EH            FORMAT PREFIX     
  <,>  2CH            DELIMITER CHAR    
  ZPL II              ZPL MODE          
  ACTIVE              COMMAND OVERRIDE  
  NO MOTION           MEDIA POWER UP    
  NO MOTION           HEAD CLOSE        
  OFF                 BACKFEED          
  +080                LABEL TOP         
  +0000               LEFT POSITION     
  OFF                 VERIFIER PORT     
  MODE 1              APPLICATOR PORT   
  ENABLED             ERROR ON PAUSE    
  PULSE MODE          START PRINT SIG   
  FEED MODE           RESYNCH MODE      
  DISABLED            REPRINT MODE      
  048                 WEB S.            
  079                 MEDIA S.          
  065                 RIBBON S.         
  100                 TAKE LABEL        
  050                 MARK S.           
  000                 MARK MED S.       
  002                 TRANS GAIN        
  040                 TRANS BASE        
  086                 TRANS BRIGHT      
  082                 RIBBON GAIN       
  000                 MARK GAIN         
  DPCSWFX.            MODES ENABLED     
  .......M            MODES DISABLED    
   832 8/MM FULL      RESOLUTION        
  V53.17.21Z <-       FIRMWARE          
  1.3                 XML SCHEMA        
  V45 ---------- 19   HARDWARE ID       
  CUSTOMIZED          CONFIGURATION     
  10840k...........R: RAM               
  2048k............E: ONBOARD FLASH     
  NONE                FORMAT CONVERT    
  *** APPLICATOR      P34 INTERFACE     
                      TWINAX/COAX ID    
  FW VERSION          IDLE DISPLAY      
  11/05/15            RTC DATE          
  11:22               RTC TIME          
  DISABLED            ZBI               
  2.1                 ZBI VERSION       
  2,641,289 IN        NONRESET CNTR     
  2,641,289 IN        RESET CNTR1       
  2,641,289 IN        RESET CNTR2       
  6,708,875 CM        NONRESET CNTR     
  6,708,875 CM        RESET CNTR1       
  6,708,875 CM        RESET CNTR2       
  ALL ITEMS           PASSWORD LEVEL
"@

$TemplateThatFails = @"
  {Zebraconfig*:{Serial:JJK072821.12Z1220126.23630-01.S.JABI}  
  {Darkness:+20.0}               DARKNESS          
  {PrintSpeed:6 IPS}               PRINT SPEED       
  {TearOff:+000}                TEAR OFF          
  {Applicator:APPLICATOR}          PRINT MODE        
  {MediaType:NON-CONTINUOUS}      MEDIA TYPE        
  {SensorType:WEB}                 SENSOR TYPE       
  {PrintMethod:DIRECT-THERMAL}      PRINT METHOD      
  {PrintWidth:812}                 PRINT WIDTH       
  {LabelLength:1874}                LABEL LENGTH      
  {MaximumLength:9.0IN    228MM}      MAXIMUM LENGTH    
  {SuppliesWarning:DISABLED}            SUPPLIES WARNING  
  {EarlyWarning:MAINT. OFF}          EARLY WARNING     
  {USBComm:CONNECTED}           USB COMM.         
  {External5v:READY}               EXTERNAL 5V       
  {ParallelComm:BIDIRECTIONAL}       PARALLEL COMM.    
  {SerialComm:RS232}               SERIAL COMM.      
  {Baud:9600}                BAUD              
  {DataBits:8 BITS}              DATA BITS         
  {Parity:NONE}                PARITY            
  {HostHandshake:XON/XOFF}            HOST HANDSHAKE    
  {Protocol:NONE}                PROTOCOL          
  {NetworkID:000}                 NETWORK ID        
  {Communications:NORMAL MODE}         COMMUNICATIONS    
  {ControlPrefix:<~>  7EH}            CONTROL PREFIX    
  {FormatPrefix:<^>  5EH}            FORMAT PREFIX     
  {Delimiter:<,>  2CH}            DELIMITER CHAR    
  {ZPLMode:ZPL II}              ZPL MODE          
  {CommandOverride:ACTIVE}              COMMAND OVERRIDE  
  {MediaPowerUp:NO MOTION}           MEDIA POWER UP    
  {HeadClose:NO MOTION}           HEAD CLOSE        
  {Backfeed:OFF}                 BACKFEED          
  {LabelTop:+080}                LABEL TOP         
  {LeftPosition:+0000}               LEFT POSITION     
  {VerifierPort:OFF}                 VERIFIER PORT     
  {ApplicatorPort:MODE 1}              APPLICATOR PORT   
  {ErrorOnPause:ENABLED}             ERROR ON PAUSE    
  {StartPrintSig:PULSE MODE}          START PRINT SIG   
  {ResynchMode:FEED MODE}           RESYNCH MODE      
  {ReprintMode:DISABLED}            REPRINT MODE      
  {WebSensor:048}                 WEB S.            
  {MediaSensor:079}                 MEDIA S.          
  {RibbonSensor:065}                 RIBBON S.         
  {TakeLabel:100}                 TAKE LABEL        
  {MarkSensor:050}                 MARK S.           
  {MarkMedSensor:000}                 MARK MED S.       
  {TrainsGain:002}                 TRANS GAIN        
  {TransBase:040}                 TRANS BASE        
  {TransBright:086}                 TRANS BRIGHT      
  {RibbonGain:082}                 RIBBON GAIN       
  {MarkGain:000}                 MARK GAIN         
  {ModesEnable:DPCSWFX.}            MODES ENABLED     
  {ModesDisabled:.......M}            MODES DISABLED    
   {Resolution:832 8/MM FULL}      RESOLUTION        
  {Firmware:V53.17.21Z <-}       FIRMWARE          
  {XMLSchema:1.3}                 XML SCHEMA        
  {HardwareID:V45 ---------- 19}   HARDWARE ID       
  {Configuration:CUSTOMIZED}          CONFIGURATION     
  {RAM:10840k...........R:} RAM               
  {OnboardFlash:2048k............E:} ONBOARD FLASH     
  {FormatConvert:NONE}                FORMAT CONVERT    
  {P34Interface:*** APPLICATOR}      P34 INTERFACE     
                      TWINAX/COAX ID    
  {IdleDisplay:FW VERSION}          IDLE DISPLAY      
  {RTCDate:11/05/15}            RTC DATE          
  {RTCTime:11:22}               RTC TIME          
  {ZBI:DISABLED}            ZBI               
  {ZBIVersion:2.1}                 ZBI VERSION       
  {NonResetCNTRin:2,641,289 IN}        NONRESET CNTR     
  {ResetCNTR1in:2,641,289 IN}        RESET CNTR1       
  {ResetCNTR2in:2,641,289 IN}        RESET CNTR2       
  {NonResetCNTRcm:6,708,875 CM}        NONRESET CNTR     
  {ResetCNTR1cm:6,708,875 CM}        RESET CNTR1       
  {ResetCNTR2cm:6,708,875 CM}        RESET CNTR2       
  {PasswordLevel:ALL ITEMS}}           PASSWORD LEVEL    
"@

$TemplateThatPartiallyWorks= @"
  {Zebraconfig*:{Serial:JJK072821.12Z1220126.23630-01.S.JABI}  
  {Darkness:+20.0}               DARKNESS          
  {PrintSpeed:6 IPS}               PRINT SPEED       
  {TearOff:+000}                TEAR OFF          
  {Applicator:APPLICATOR}          PRINT MODE        
  {MediaType:NON-CONTINUOUS}      MEDIA TYPE        
  {SensorType:WEB}                 SENSOR TYPE       
  {PrintMethod:DIRECT-THERMAL}      PRINT METHOD      
  {PrintWidth:812}                 PRINT WIDTH       
  {LabelLength:1874}                LABEL LENGTH      
  {MaximumLength:9.0IN    228MM}      MAXIMUM LENGTH    
  {SuppliesWarning:DISABLED}            SUPPLIES WARNING  
  {EarlyWarning:MAINT. OFF}          EARLY WARNING     
  {USBComm:CONNECTED}           USB COMM.         
  {External5v:READY}               EXTERNAL 5V       
  {ParallelComm:BIDIRECTIONAL}       PARALLEL COMM.    
  {SerialComm:RS232}               SERIAL COMM.      
  {Baud:9600}                BAUD              
  {DataBits:8 BITS}              DATA BITS         
  {Parity:NONE}                PARITY            
  {HostHandshake:XON/XOFF}            HOST HANDSHAKE    
  {Protocol:NONE}                PROTOCOL          
  {NetworkID:000}                 NETWORK ID        
  {Communications:NORMAL MODE}         COMMUNICATIONS    
  {ControlPrefix:<~>  7EH}            CONTROL PREFIX    
  {FormatPrefix:<^>  5EH}            FORMAT PREFIX     
  {Delimiter:<,>  2CH}            DELIMITER CHAR    
  {ZPLMode:ZPL II}              ZPL MODE          
  {CommandOverride:ACTIVE}              COMMAND OVERRIDE  
  {MediaPowerUp:NO MOTION}           MEDIA POWER UP    
  {HeadClose:NO MOTION}           HEAD CLOSE        
  {Backfeed:OFF}                 BACKFEED          
  {LabelTop:+080}                LABEL TOP         
  {LeftPosition:+0000}               LEFT POSITION     
  {VerifierPort:OFF}                 VERIFIER PORT     
  {ApplicatorPort:MODE 1}              APPLICATOR PORT   
  {ErrorOnPause:ENABLED}             ERROR ON PAUSE    
  {StartPrintSig:PULSE MODE}          START PRINT SIG   
  {ResynchMode:FEED MODE}           RESYNCH MODE      
  {ReprintMode:DISABLED}            REPRINT MODE      
  {WebSensor:048}                 WEB S.            
  {MediaSensor:079}                 MEDIA S.          
  {RibbonSensor:065}                 RIBBON S.         
  {TakeLabel:100}                 TAKE LABEL        
  {MarkSensor:050}                 MARK S.           
  {MarkMedSensor:000}                 MARK MED S.       
  {TrainsGain:002}                 TRANS GAIN        
  {TransBase:040}                 TRANS BASE        
  {TransBright:086}                 TRANS BRIGHT      
  {RibbonGain:082}                 RIBBON GAIN       
  {MarkGain:000}                 MARK GAIN         
  {ModesEnable:DPCSWFX.}            MODES ENABLED     
  {ModesDisabled:.......M}            MODES DISABLED    
   {Resolution:832 8/MM FULL}      RESOLUTION        
  {Firmware:V53.17.21Z <-}       FIRMWARE          
  {XMLSchema:1.3}                 XML SCHEMA        
  {HardwareID:V45 ---------- 19}   HARDWARE ID       
  {Configuration:CUSTOMIZED}          CONFIGURATION     
  {RAM:10840k...........R:} RAM               
  {OnboardFlash:2048k............E:} ONBOARD FLASH     
  {FormatConvert:NONE}                FORMAT CONVERT    
  {P34Interface:*** APPLICATOR}      P34 INTERFACE     
                      TWINAX/COAX ID    
  {IdleDisplay:FW VERSION}          IDLE DISPLAY      
  {RTCDate:11/05/15}            RTC DATE          
  {RTCTime:11:22}               RTC TIME          
  {ZBI:DISABLED}            ZBI               
  {ZBIVersion:2.1}}                 ZBI VERSION       
"@

Write-Host "Using ConvertFrom-String with the TemplateThatFails"
$Sample | ConvertFrom-String -TemplateContent $TemplateThatFails | select -ExpandProperty ZebraConfig

Write-Host "Using ConvertFrom-String with the TemplateThatPartiallyWorks"
$Sample | ConvertFrom-String -TemplateContent $TemplateThatPartiallyWorks| select -ExpandProperty ZebraConfig

我得到以下结果:

Using ConvertFrom-String with the TemplateThatFails
ConvertFrom-String : ConvertFrom-String appears to be having trouble parsing your data using the template you've provided. We'd love to take a look at what went wrong, if you'd like to share the data and template used to parse it. We've saved these files to 
C:\Users\alozano\AppData\Local\Temp\usiqowuu.p2u.input.txt and C:\Users\alozano\AppData\Local\Temp\usiqowuu.p2u-0.template.txt - feel free to attach them in a mail to [email protected]. We will review all submissions, although we can't guarantee a response.
At line:231 char:16
+ ... codedHTML | ConvertFrom-String -TemplateContent $TemplateThatFails |  ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidResult: (:) [ConvertFrom-String], ResultNotFoundException
    + FullyQualifiedErrorId : ResultNotFound,Microsoft.PowerShell.Commands.StringManipulation.ConvertFromStringCommand

Using ConvertFrom-String with the TemplateThatPartiallyWorks


Serial          : JJK072821.12Z1220126.23630-01.S.JABI
Darkness        : +20.0
PrintSpeed      : 6 IPS
TearOff         : +000
Applicator      : APPLICATOR
MediaType       : NON-CONTINUOUS
SensorType      : WEB
PrintMethod     : DIRECT-THERMAL
PrintWidth      : 812
LabelLength     : 1874
MaximumLength   : 9.0IN    228MM
SuppliesWarning : DISABLED
EarlyWarning    : MAINT. OFF
USBComm         : CONNECTED
External5v      : READY
ParallelComm    : BIDIRECTIONAL
SerialComm      : RS232
Baud            : 9600
DataBits        : 8 BITS
Parity          : NONE
HostHandshake   : XON/XOFF
Protocol        : NONE
NetworkID       : 000
Communications  : NORMAL MODE
ControlPrefix   : <~>  7EH
FormatPrefix    : <^>  5EH
Delimiter       : <,>  2CH
ZPLMode         : ZPL II
CommandOverride : ACTIVE
MediaPowerUp    : NO MOTION
HeadClose       : NO MOTION
Backfeed        : OFF
LabelTop        : +080
LeftPosition    : +0000
VerifierPort    : OFF
ApplicatorPort  : MODE 1
ErrorOnPause    : ENABLED
StartPrintSig   : PULSE MODE
ResynchMode     : FEED MODE
ReprintMode     : DISABLED
WebSensor       : 048
MediaSensor     : 079
RibbonSensor    : 065
TakeLabel       : 100
MarkSensor      : 050
MarkMedSensor   : 000
TrainsGain      : 002
TransBase       : 040
TransBright     : 086
RibbonGain      : 082
MarkGain        : 000
ModesEnable     : DPCSWFX.
ModesDisabled   : .......M
Resolution      : 832 8/MM FULL
Firmware        : V53.17.21Z <-
XMLSchema       : 1.3
HardwareID      : V45 ---------- 19
Configuration   : CUSTOMIZED
RAM             : 10840k...........R:
OnboardFlash    : 2048k............E:
FormatConvert   : NONE
P34Interface    : *** APPLICATOR
IdleDisplay     : FW VERSION
RTCDate         : 11/05/15
RTCTime         : 11:22
ZBI             : DISABLED
ZBIVersion      : 2.1

这些是结尾处的7行$TemplateThatFails,我已将其排除在外$TemplateThatPartiallyWorks

{NonResetCNTRin:2,641,289 IN}        NONRESET CNTR     
{ResetCNTR1in:2,641,289 IN}        RESET CNTR1       
{ResetCNTR2in:2,641,289 IN}        RESET CNTR2       
{NonResetCNTRcm:6,708,875 CM}        NONRESET CNTR     
{ResetCNTR1cm:6,708,875 CM}        RESET CNTR1       
{ResetCNTR2cm:6,708,875 CM}        RESET CNTR2       
{PasswordLevel:ALL ITEMS}}           PASSWORD LEVEL     

系统信息:

Operating System: Windows 8.1 Enterprise 64-bit (6.3, Build 9600) (9600.winblue_r9.150322-1500)
Language: English (Regional Setting: English)
System Manufacturer: Dell Inc.
System Model: Latitude E7450
BIOS: BIOS Date: 12/29/14 05:36:41 Ver: A02.00 
Processor: Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz (4 CPUs), ~2.3GHz
Memory: 8192MB RAM
Available OS Memory: 8082MB RAM 
苏打柳

我的设置非常相同(i5 / 16Gb / Win8.1 64bit / PS 5.0.10514.6)。

这有点疯狂; 只有最后一行是一个问题。

1-如果将其完全隔离,并使它成为模板和样本中的唯一行,则它将起作用。

代码 :

$Sample = @"  
  ALL ITEMS           PASSWORD LEVEL
"@

$TemplateThatFails = @"
  {Zebraconfig*:{PasswordLevel:ALL ITEMS}}           PASSWORD LEVEL    
"@

Write-Host "Using ConvertFrom-String with the TemplateThatFails"
$startTime = Get-Date
$Sample | ConvertFrom-String -TemplateContent $TemplateThatFails | select -ExpandProperty ZebraConfig
$endTime = Get-Date
$elapsed = "{0:N2}" -f (New-TimeSpan $startTime $endTime).TotalSeconds
"$elapsed seconds elapsed"

输出 :

PasswordLevel
-------------
ALL ITEMS    
0,13 seconds elapsed

2-如果将其移动到前一个(在示例和模板中)的上方,则不会出现任何错误,但数据会混淆。

代码 :

$Sample = @"
  JJK072821.12Z1220126.23630-01.S.JABI  
  +20.0               DARKNESS          
  6 IPS               PRINT SPEED       
  +000                TEAR OFF          
  APPLICATOR          PRINT MODE        
  NON-CONTINUOUS      MEDIA TYPE        
  WEB                 SENSOR TYPE       
  DIRECT-THERMAL      PRINT METHOD      
  812                 PRINT WIDTH       
  1874                LABEL LENGTH      
  9.0IN    228MM      MAXIMUM LENGTH    
  DISABLED            SUPPLIES WARNING  
  MAINT. OFF          EARLY WARNING     
  CONNECTED           USB COMM.         
  READY               EXTERNAL 5V       
  BIDIRECTIONAL       PARALLEL COMM.    
  RS232               SERIAL COMM.      
  9600                BAUD              
  8 BITS              DATA BITS         
  NONE                PARITY            
  XON/XOFF            HOST HANDSHAKE    
  NONE                PROTOCOL          
  000                 NETWORK ID        
  NORMAL MODE         COMMUNICATIONS    
  <~>  7EH            CONTROL PREFIX    
  <^>  5EH            FORMAT PREFIX     
  <,>  2CH            DELIMITER CHAR    
  ZPL II              ZPL MODE          
  ACTIVE              COMMAND OVERRIDE  
  NO MOTION           MEDIA POWER UP    
  NO MOTION           HEAD CLOSE        
  OFF                 BACKFEED          
  +080                LABEL TOP         
  +0000               LEFT POSITION     
  OFF                 VERIFIER PORT     
  MODE 1              APPLICATOR PORT   
  ENABLED             ERROR ON PAUSE    
  PULSE MODE          START PRINT SIG   
  FEED MODE           RESYNCH MODE      
  DISABLED            REPRINT MODE      
  048                 WEB S.            
  079                 MEDIA S.          
  065                 RIBBON S.         
  100                 TAKE LABEL        
  050                 MARK S.           
  000                 MARK MED S.       
  002                 TRANS GAIN        
  040                 TRANS BASE        
  086                 TRANS BRIGHT      
  082                 RIBBON GAIN       
  000                 MARK GAIN         
  DPCSWFX.            MODES ENABLED     
  .......M            MODES DISABLED    
   832 8/MM FULL      RESOLUTION        
  V53.17.21Z <-       FIRMWARE          
  1.3                 XML SCHEMA        
  V45 ---------- 19   HARDWARE ID       
  CUSTOMIZED          CONFIGURATION     
  10840k...........R: RAM               
  2048k............E: ONBOARD FLASH     
  NONE                FORMAT CONVERT    
  *** APPLICATOR      P34 INTERFACE     
                      TWINAX/COAX ID    
  FW VERSION          IDLE DISPLAY      
  11/05/15            RTC DATE          
  11:22               RTC TIME          
  DISABLED            ZBI               
  2.1                 ZBI VERSION       
  2,641,289 IN        NONRESET CNTR     
  2,641,289 IN        RESET CNTR1       
  2,641,289 IN        RESET CNTR2       
  6,708,875 CM        NONRESET CNTR     
  6,708,875 CM        RESET CNTR1       
  ALL ITEMS           PASSWORD LEVEL
  6,708,875 CM        RESET CNTR2       
"@

$TemplateThatFails = @"
  {Zebraconfig*:{Serial:JJK072821.12Z1220126.23630-01.S.JABI}  
  {Darkness:+20.0}               DARKNESS          
  {PrintSpeed:6 IPS}               PRINT SPEED       
  {TearOff:+000}                TEAR OFF          
  {Applicator:APPLICATOR}          PRINT MODE        
  {MediaType:NON-CONTINUOUS}      MEDIA TYPE        
  {SensorType:WEB}                 SENSOR TYPE       
  {PrintMethod:DIRECT-THERMAL}      PRINT METHOD      
  {PrintWidth:812}                 PRINT WIDTH       
  {LabelLength:1874}                LABEL LENGTH      
  {MaximumLength:9.0IN    228MM}      MAXIMUM LENGTH    
  {SuppliesWarning:DISABLED}            SUPPLIES WARNING  
  {EarlyWarning:MAINT. OFF}          EARLY WARNING     
  {USBComm:CONNECTED}           USB COMM.         
  {External5v:READY}               EXTERNAL 5V       
  {ParallelComm:BIDIRECTIONAL}       PARALLEL COMM.    
  {SerialComm:RS232}               SERIAL COMM.      
  {Baud:9600}                BAUD              
  {DataBits:8 BITS}              DATA BITS         
  {Parity:NONE}                PARITY            
  {HostHandshake:XON/XOFF}            HOST HANDSHAKE    
  {Protocol:NONE}                PROTOCOL          
  {NetworkID:000}                 NETWORK ID        
  {Communications:NORMAL MODE}         COMMUNICATIONS    
  {ControlPrefix:<~>  7EH}            CONTROL PREFIX    
  {FormatPrefix:<^>  5EH}            FORMAT PREFIX     
  {Delimiter:<,>  2CH}            DELIMITER CHAR    
  {ZPLMode:ZPL II}              ZPL MODE          
  {CommandOverride:ACTIVE}              COMMAND OVERRIDE  
  {MediaPowerUp:NO MOTION}           MEDIA POWER UP    
  {HeadClose:NO MOTION}           HEAD CLOSE        
  {Backfeed:OFF}                 BACKFEED          
  {LabelTop:+080}                LABEL TOP         
  {LeftPosition:+0000}               LEFT POSITION     
  {VerifierPort:OFF}                 VERIFIER PORT     
  {ApplicatorPort:MODE 1}              APPLICATOR PORT   
  {ErrorOnPause:ENABLED}             ERROR ON PAUSE    
  {StartPrintSig:PULSE MODE}          START PRINT SIG   
  {ResynchMode:FEED MODE}           RESYNCH MODE      
  {ReprintMode:DISABLED}            REPRINT MODE      
  {WebSensor:048}                 WEB S.            
  {MediaSensor:079}                 MEDIA S.          
  {RibbonSensor:065}                 RIBBON S.         
  {TakeLabel:100}                 TAKE LABEL        
  {MarkSensor:050}                 MARK S.           
  {MarkMedSensor:000}                 MARK MED S.       
  {TrainsGain:002}                 TRANS GAIN        
  {TransBase:040}                 TRANS BASE        
  {TransBright:086}                 TRANS BRIGHT      
  {RibbonGain:082}                 RIBBON GAIN       
  {MarkGain:000}                 MARK GAIN         
  {ModesEnable:DPCSWFX.}            MODES ENABLED     
  {ModesDisabled:.......M}            MODES DISABLED    
   {Resolution:832 8/MM FULL}      RESOLUTION        
  {Firmware:V53.17.21Z <-}       FIRMWARE          
  {XMLSchema:1.3}                 XML SCHEMA        
  {HardwareID:V45 ---------- 19}   HARDWARE ID       
  {Configuration:CUSTOMIZED}          CONFIGURATION     
  {RAM:10840k...........R:} RAM               
  {OnboardFlash:2048k............E:} ONBOARD FLASH     
  {FormatConvert:NONE}                FORMAT CONVERT    
  {P34Interface:*** APPLICATOR}      P34 INTERFACE     
                      TWINAX/COAX ID    
  {IdleDisplay:FW VERSION}          IDLE DISPLAY      
  {RTCDate:11/05/15}            RTC DATE          
  {RTCTime:11:22}               RTC TIME          
  {ZBI:DISABLED}            ZBI               
  {ZBIVersion:2.1}                 ZBI VERSION       
  {NonResetCNTRin:2,641,289 IN}        NONRESET CNTR     
  {ResetCNTR1in:2,641,289 IN}        RESET CNTR1       
  {ResetCNTR2in:2,641,289 IN}        RESET CNTR2       
  {NonResetCNTRcm:6,708,875 CM}        NONRESET CNTR     
  {ResetCNTR1cm:6,708,875 CM}        RESET CNTR1       
  {PasswordLevel:ALL ITEMS}           PASSWORD LEVEL    
  {ResetCNTR2cm:6,708,875 CM}}        RESET CNTR2       
"@

Write-Host "Using ConvertFrom-String with the TemplateThatFails"
$startTime = Get-Date
$Sample | ConvertFrom-String -TemplateContent $TemplateThatFails | select -ExpandProperty ZebraConfig
$endTime = Get-Date
$elapsed = "{0:N2}" -f (New-TimeSpan $startTime $endTime).TotalSeconds
"$elapsed seconds elapsed"

输出 :

Serial          : JJK072821.12Z1220126.23630-01.S.JABI
Darkness        : +20.0
PrintSpeed      : 6 IPS
TearOff         : +000
Applicator      : APPLICATOR
MediaType       : NON-CONTINUOUS
SensorType      : WEB
PrintMethod     : DIRECT-THERMAL
PrintWidth      : 812
LabelLength     : 1874
MaximumLength   : 9.0IN    228MM
SuppliesWarning : DISABLED
EarlyWarning    : MAINT. OFF
USBComm         : CONNECTED
External5v      : READY
ParallelComm    : BIDIRECTIONAL
SerialComm      : RS232
Baud            : 9600
DataBits        : 8 BITS
Parity          : NONE
HostHandshake   : XON/XOFF
Protocol        : NONE
NetworkID       : 000
Communications  : NORMAL MODE
ControlPrefix   : <~>  7EH
FormatPrefix    : <^>  5EH
Delimiter       : <,>  2CH
ZPLMode         : ZPL II
CommandOverride : ACTIVE
MediaPowerUp    : NO MOTION
HeadClose       : NO MOTION
Backfeed        : OFF
LabelTop        : +080
LeftPosition    : +0000
VerifierPort    : OFF
ApplicatorPort  : MODE 1
ErrorOnPause    : ENABLED
StartPrintSig   : PULSE MODE
ResynchMode     : FEED MODE
ReprintMode     : DISABLED
WebSensor       : 048
MediaSensor     : 079
RibbonSensor    : 065
TakeLabel       : 100
MarkSensor      : 050
MarkMedSensor   : 000
TrainsGain      : 002
TransBase       : 040
TransBright     : 086
RibbonGain      : 082
MarkGain        : 000
ModesEnable     : DPCSWFX.
ModesDisabled   : .......M
Resolution      : 832 8/MM FULL
Firmware        : V53.17.21Z <-
XMLSchema       : 1.3
HardwareID      : V45 ---------- 19
Configuration   : CUSTOMIZED
RAM             : 10840k...........R:
OnboardFlash    : 2048k............E:
FormatConvert   : NONE
P34Interface    : *** APPLICATOR
IdleDisplay     : FW VERSION
RTCDate         : 11/05/15
RTCTime         : 11:22
ZBI             : DISABLED
ZBIVersion      : 2.1
NonResetCNTRin  : 2,641,289 IN
ResetCNTR1in    : 2,641,289 IN
ResetCNTR2in    : 2,641,289 IN
NonResetCNTRcm  : 6,708,875 CM
ResetCNTR1cm    : 6,708,875 CM
PasswordLevel   : CM        RESET
ResetCNTR2cm    : 6,708,875 CM

36,58 seconds elapsed

3-如果将其移到上方ZBI VERSION(样本+模板),即部分工作模板的最后一行,则一切正常。

代码 :

$Sample = @"
  JJK072821.12Z1220126.23630-01.S.JABI  
  +20.0               DARKNESS          
  6 IPS               PRINT SPEED       
  +000                TEAR OFF          
  APPLICATOR          PRINT MODE        
  NON-CONTINUOUS      MEDIA TYPE        
  WEB                 SENSOR TYPE       
  DIRECT-THERMAL      PRINT METHOD      
  812                 PRINT WIDTH       
  1874                LABEL LENGTH      
  9.0IN    228MM      MAXIMUM LENGTH    
  DISABLED            SUPPLIES WARNING  
  MAINT. OFF          EARLY WARNING     
  CONNECTED           USB COMM.         
  READY               EXTERNAL 5V       
  BIDIRECTIONAL       PARALLEL COMM.    
  RS232               SERIAL COMM.      
  9600                BAUD              
  8 BITS              DATA BITS         
  NONE                PARITY            
  XON/XOFF            HOST HANDSHAKE    
  NONE                PROTOCOL          
  000                 NETWORK ID        
  NORMAL MODE         COMMUNICATIONS    
  <~>  7EH            CONTROL PREFIX    
  <^>  5EH            FORMAT PREFIX     
  <,>  2CH            DELIMITER CHAR    
  ZPL II              ZPL MODE          
  ACTIVE              COMMAND OVERRIDE  
  NO MOTION           MEDIA POWER UP    
  NO MOTION           HEAD CLOSE        
  OFF                 BACKFEED          
  +080                LABEL TOP         
  +0000               LEFT POSITION     
  OFF                 VERIFIER PORT     
  MODE 1              APPLICATOR PORT   
  ENABLED             ERROR ON PAUSE    
  PULSE MODE          START PRINT SIG   
  FEED MODE           RESYNCH MODE      
  DISABLED            REPRINT MODE      
  048                 WEB S.            
  079                 MEDIA S.          
  065                 RIBBON S.         
  100                 TAKE LABEL        
  050                 MARK S.           
  000                 MARK MED S.       
  002                 TRANS GAIN        
  040                 TRANS BASE        
  086                 TRANS BRIGHT      
  082                 RIBBON GAIN       
  000                 MARK GAIN         
  DPCSWFX.            MODES ENABLED     
  .......M            MODES DISABLED    
   832 8/MM FULL      RESOLUTION        
  V53.17.21Z <-       FIRMWARE          
  1.3                 XML SCHEMA        
  V45 ---------- 19   HARDWARE ID       
  CUSTOMIZED          CONFIGURATION     
  10840k...........R: RAM               
  2048k............E: ONBOARD FLASH     
  NONE                FORMAT CONVERT    
  *** APPLICATOR      P34 INTERFACE     
                      TWINAX/COAX ID    
  FW VERSION          IDLE DISPLAY      
  11/05/15            RTC DATE          
  11:22               RTC TIME          
  DISABLED            ZBI               
  ALL ITEMS           PASSWORD LEVEL
  2.1                 ZBI VERSION       
  2,641,289 IN        NONRESET CNTR     
  2,641,289 IN        RESET CNTR1       
  2,641,289 IN        RESET CNTR2       
  6,708,875 CM        NONRESET CNTR     
  6,708,875 CM        RESET CNTR1       
  6,708,875 CM        RESET CNTR2       
"@

$TemplateThatFails = @"
  {Zebraconfig*:{Serial:JJK072821.12Z1220126.23630-01.S.JABI}  
  {Darkness:+20.0}               DARKNESS          
  {PrintSpeed:6 IPS}               PRINT SPEED       
  {TearOff:+000}                TEAR OFF          
  {Applicator:APPLICATOR}          PRINT MODE        
  {MediaType:NON-CONTINUOUS}      MEDIA TYPE        
  {SensorType:WEB}                 SENSOR TYPE       
  {PrintMethod:DIRECT-THERMAL}      PRINT METHOD      
  {PrintWidth:812}                 PRINT WIDTH       
  {LabelLength:1874}                LABEL LENGTH      
  {MaximumLength:9.0IN    228MM}      MAXIMUM LENGTH    
  {SuppliesWarning:DISABLED}            SUPPLIES WARNING  
  {EarlyWarning:MAINT. OFF}          EARLY WARNING     
  {USBComm:CONNECTED}           USB COMM.         
  {External5v:READY}               EXTERNAL 5V       
  {ParallelComm:BIDIRECTIONAL}       PARALLEL COMM.    
  {SerialComm:RS232}               SERIAL COMM.      
  {Baud:9600}                BAUD              
  {DataBits:8 BITS}              DATA BITS         
  {Parity:NONE}                PARITY            
  {HostHandshake:XON/XOFF}            HOST HANDSHAKE    
  {Protocol:NONE}                PROTOCOL          
  {NetworkID:000}                 NETWORK ID        
  {Communications:NORMAL MODE}         COMMUNICATIONS    
  {ControlPrefix:<~>  7EH}            CONTROL PREFIX    
  {FormatPrefix:<^>  5EH}            FORMAT PREFIX     
  {Delimiter:<,>  2CH}            DELIMITER CHAR    
  {ZPLMode:ZPL II}              ZPL MODE          
  {CommandOverride:ACTIVE}              COMMAND OVERRIDE  
  {MediaPowerUp:NO MOTION}           MEDIA POWER UP    
  {HeadClose:NO MOTION}           HEAD CLOSE        
  {Backfeed:OFF}                 BACKFEED          
  {LabelTop:+080}                LABEL TOP         
  {LeftPosition:+0000}               LEFT POSITION     
  {VerifierPort:OFF}                 VERIFIER PORT     
  {ApplicatorPort:MODE 1}              APPLICATOR PORT   
  {ErrorOnPause:ENABLED}             ERROR ON PAUSE    
  {StartPrintSig:PULSE MODE}          START PRINT SIG   
  {ResynchMode:FEED MODE}           RESYNCH MODE      
  {ReprintMode:DISABLED}            REPRINT MODE      
  {WebSensor:048}                 WEB S.            
  {MediaSensor:079}                 MEDIA S.          
  {RibbonSensor:065}                 RIBBON S.         
  {TakeLabel:100}                 TAKE LABEL        
  {MarkSensor:050}                 MARK S.           
  {MarkMedSensor:000}                 MARK MED S.       
  {TrainsGain:002}                 TRANS GAIN        
  {TransBase:040}                 TRANS BASE        
  {TransBright:086}                 TRANS BRIGHT      
  {RibbonGain:082}                 RIBBON GAIN       
  {MarkGain:000}                 MARK GAIN         
  {ModesEnable:DPCSWFX.}            MODES ENABLED     
  {ModesDisabled:.......M}            MODES DISABLED    
   {Resolution:832 8/MM FULL}      RESOLUTION        
  {Firmware:V53.17.21Z <-}       FIRMWARE          
  {XMLSchema:1.3}                 XML SCHEMA        
  {HardwareID:V45 ---------- 19}   HARDWARE ID       
  {Configuration:CUSTOMIZED}          CONFIGURATION     
  {RAM:10840k...........R:} RAM               
  {OnboardFlash:2048k............E:} ONBOARD FLASH     
  {FormatConvert:NONE}                FORMAT CONVERT    
  {P34Interface:*** APPLICATOR}      P34 INTERFACE     
                      TWINAX/COAX ID    
  {IdleDisplay:FW VERSION}          IDLE DISPLAY      
  {RTCDate:11/05/15}            RTC DATE          
  {RTCTime:11:22}               RTC TIME          
  {ZBI:DISABLED}            ZBI               
  {PasswordLevel:ALL ITEMS}           PASSWORD LEVEL    
  {ZBIVersion:2.1}                 ZBI VERSION       
  {NonResetCNTRin:2,641,289 IN}        NONRESET CNTR     
  {ResetCNTR1in:2,641,289 IN}        RESET CNTR1       
  {ResetCNTR2in:2,641,289 IN}        RESET CNTR2       
  {NonResetCNTRcm:6,708,875 CM}        NONRESET CNTR     
  {ResetCNTR1cm:6,708,875 CM}        RESET CNTR1       
  {ResetCNTR2cm:6,708,875 CM}}        RESET CNTR2       
"@

Write-Host "Using ConvertFrom-String with the TemplateThatFails"
$startTime = Get-Date
$Sample | ConvertFrom-String -TemplateContent $TemplateThatFails | select -ExpandProperty ZebraConfig
$endTime = Get-Date
$elapsed = "{0:N2}" -f (New-TimeSpan $startTime $endTime).TotalSeconds
"$elapsed seconds elapsed"

输出 :

Serial          : JJK072821.12Z1220126.23630-01.S.JABI
Darkness        : +20.0
PrintSpeed      : 6 IPS
TearOff         : +000
Applicator      : APPLICATOR
MediaType       : NON-CONTINUOUS
SensorType      : WEB
PrintMethod     : DIRECT-THERMAL
PrintWidth      : 812
LabelLength     : 1874
MaximumLength   : 9.0IN    228MM
SuppliesWarning : DISABLED
EarlyWarning    : MAINT. OFF
USBComm         : CONNECTED
External5v      : READY
ParallelComm    : BIDIRECTIONAL
SerialComm      : RS232
Baud            : 9600
DataBits        : 8 BITS
Parity          : NONE
HostHandshake   : XON/XOFF
Protocol        : NONE
NetworkID       : 000
Communications  : NORMAL MODE
ControlPrefix   : <~>  7EH
FormatPrefix    : <^>  5EH
Delimiter       : <,>  2CH
ZPLMode         : ZPL II
CommandOverride : ACTIVE
MediaPowerUp    : NO MOTION
HeadClose       : NO MOTION
Backfeed        : OFF
LabelTop        : +080
LeftPosition    : +0000
VerifierPort    : OFF
ApplicatorPort  : MODE 1
ErrorOnPause    : ENABLED
StartPrintSig   : PULSE MODE
ResynchMode     : FEED MODE
ReprintMode     : DISABLED
WebSensor       : 048
MediaSensor     : 079
RibbonSensor    : 065
TakeLabel       : 100
MarkSensor      : 050
MarkMedSensor   : 000
TrainsGain      : 002
TransBase       : 040
TransBright     : 086
RibbonGain      : 082
MarkGain        : 000
ModesEnable     : DPCSWFX.
ModesDisabled   : .......M
Resolution      : 832 8/MM FULL
Firmware        : V53.17.21Z <-
XMLSchema       : 1.3
HardwareID      : V45 ---------- 19
Configuration   : CUSTOMIZED
RAM             : 10840k...........R:
OnboardFlash    : 2048k............E:
FormatConvert   : NONE
P34Interface    : *** APPLICATOR
IdleDisplay     : FW VERSION
RTCDate         : 11/05/15
RTCTime         : 11:22
ZBI             : DISABLED
PasswordLevel   : ALL ITEMS
ZBIVersion      : 2.1
NonResetCNTRin  : 2,641,289 IN
ResetCNTR1in    : 2,641,289 IN
ResetCNTR2in    : 2,641,289 IN
NonResetCNTRcm  : 6,708,875 CM
ResetCNTR1cm    : 6,708,875 CM
ResetCNTR2cm    : 6,708,875 CM

36,32 seconds elapsed

我真的不知道发生了什么,但是我设法抑制了错误,因此希望这会为您指明正确的方向。

PS:为什么要运行这么长时间?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Grails 3 使用“.”解析哈希映射属性。在早期版本中,关键无法按预期工作

来自分类Dev

ngAnimateSwap-使用布尔表达式无法按预期进行动画处理

来自分类Dev

使用eval()和include()进行命名间隔无法按预期方式工作

来自分类Dev

C ++无法使用我自己的字符串复制功能按预期进行打印

来自分类Dev

R data.table:使用shift()更新无法按预期进行

来自分类Dev

使用 WebAPI .Net Core 进行版本控制无法按预期工作

来自分类Dev

Apache Commons CLI无法按预期进行解析?

来自分类Dev

从JSON到PHP的解析无法按预期进行

来自分类Dev

无法按预期在文档上使用xpath

来自分类Dev

使用jQuery定位(this)无法按预期工作

来自分类Dev

c ++:模板容器,operator []无法按预期工作

来自分类Dev

Django模板中的Count方法无法按预期工作

来自分类Dev

路径功能无法在树枝模板中按预期方式工作

来自分类Dev

使用模板进行多态

来自分类Dev

无法使用Redis模板进行扫描

来自分类Dev

模板无法使用dev c ++进行编译

来自分类Dev

无法使用模板标签

来自分类Dev

使用模板模板参数进行前偏

来自分类Dev

使用模板模板参数进行正偏

来自分类Dev

使用参数时代码无法按预期工作

来自分类Dev

与sleep()结合使用时,管道无法按预期工作

来自分类Dev

使用Elasticsearch JDBC Importer后,“ asciifolding”无法按预期工作

来自分类Dev

strtok无法按预期使用CSV格式的空格

来自分类Dev

使用ConcurrentBag的并行ForEach无法按预期工作

来自分类Dev

Xor无法按预期与VisuabBasic一起使用

来自分类Dev

使用位置:修复了导航功能无法按预期运行的问题

来自分类Dev

使用angularfire,startAt和endAt无法按预期工作:0.8.0

来自分类Dev

使用#ifndef在#undef之后#define无法按预期工作

来自分类Dev

Java:使用EJML的矩阵逆无法按预期工作

Related 相关文章

  1. 1

    Grails 3 使用“.”解析哈希映射属性。在早期版本中,关键无法按预期工作

  2. 2

    ngAnimateSwap-使用布尔表达式无法按预期进行动画处理

  3. 3

    使用eval()和include()进行命名间隔无法按预期方式工作

  4. 4

    C ++无法使用我自己的字符串复制功能按预期进行打印

  5. 5

    R data.table:使用shift()更新无法按预期进行

  6. 6

    使用 WebAPI .Net Core 进行版本控制无法按预期工作

  7. 7

    Apache Commons CLI无法按预期进行解析?

  8. 8

    从JSON到PHP的解析无法按预期进行

  9. 9

    无法按预期在文档上使用xpath

  10. 10

    使用jQuery定位(this)无法按预期工作

  11. 11

    c ++:模板容器,operator []无法按预期工作

  12. 12

    Django模板中的Count方法无法按预期工作

  13. 13

    路径功能无法在树枝模板中按预期方式工作

  14. 14

    使用模板进行多态

  15. 15

    无法使用Redis模板进行扫描

  16. 16

    模板无法使用dev c ++进行编译

  17. 17

    无法使用模板标签

  18. 18

    使用模板模板参数进行前偏

  19. 19

    使用模板模板参数进行正偏

  20. 20

    使用参数时代码无法按预期工作

  21. 21

    与sleep()结合使用时,管道无法按预期工作

  22. 22

    使用Elasticsearch JDBC Importer后,“ asciifolding”无法按预期工作

  23. 23

    strtok无法按预期使用CSV格式的空格

  24. 24

    使用ConcurrentBag的并行ForEach无法按预期工作

  25. 25

    Xor无法按预期与VisuabBasic一起使用

  26. 26

    使用位置:修复了导航功能无法按预期运行的问题

  27. 27

    使用angularfire,startAt和endAt无法按预期工作:0.8.0

  28. 28

    使用#ifndef在#undef之后#define无法按预期工作

  29. 29

    Java:使用EJML的矩阵逆无法按预期工作

热门标签

归档