parse_path()

Parseert een bestandspad string en retourneert een dynamic object dat de volgende delen van het pad bevat:

  • Schema
  • RootPath
  • DirectoryPath
  • DirectoryName
  • Bestandsnaam
  • Extensie
  • AlternateDataStreamName

Naast de eenvoudige paden met beide typen slashes, ondersteunt de functie paden met:

  • Schemas. Bijvoorbeeld 'file://...'
  • Gedeelde paden. Bijvoorbeeld '\shareddrive\gebruikers...'
  • Lange paden. Bijvoorbeeld "\?\C:...""
  • Alternatieve gegevensstromen. Bijvoorbeeld 'file1.exe:file2.exe'

Syntax

parse_path(Pad)

Meer informatie over syntaxisconventies.

Parameters

Naam Type Vereist Beschrijving
path string ✔️ Het bestandspad.

Retouren

Een object van het type dynamic dat de padonderdelen bevat zoals hierboven vermeld.

Voorbeeld

datatable(p:string) 
[
    @"C:\temp\file.txt",
    @"temp\file.txt",
    "file://C:/temp/file.txt:some.exe",
    @"\\shared\users\temp\file.txt.gz",
    "/usr/lib/temp/file.txt"
]
| extend path_parts = parse_path(p)

Uitvoer

p path_parts
C:\temp\file.txt {"Scheme":"","RootPath":"C:","DirectoryPath":"C:\temp","DirectoryName":"temp","Bestandsnaam":"file.txt","Extension":"txt","AlternateDataStreamName":""}
temp\file.txt {"Scheme":"","RootPath":"","DirectoryPath":"temp","DirectoryName":"temp","Bestandsnaam":"file.txt","Extension":"txt","AlternateDataStreamName":"""}
file://C:/temp/file.txt:some.exe {"Scheme":"file","RootPath":"C:","DirectoryPath":"C:/temp","DirectoryName":"temp","Bestandsnaam":"file.txt","Extension":"txt","AlternateDataStreamName":"some.exe"}
\shared\users\temp\file.txt.gz {"Scheme":"","RootPath":"","DirectoryPath":"\\shared\users\temp","DirectoryName":"temp","Bestandsnaam":"file.txt.gz","Extension":"gz","AlternateDataStreamName":"""}
/usr/lib/temp/file.txt {"Scheme":"","RootPath":"","DirectoryPath":"/usr/lib/temp","DirectoryName":"temp","Bestandsnaam":"file.txt","Extension":"txt","AlternateDataStreamName":""}