end of 6.File_Management
This commit is contained in:
@@ -65,3 +65,128 @@ $fileSize = Get-ChildItem -Path "C:\mrsh\test.ps1" -Recurse -Force | Measure-Obj
|
||||
|
||||
$fileSize.Sum/1KB
|
||||
```
|
||||
|
||||
## Environement Variable
|
||||
|
||||
Environment variables in PowerShell are used to store system-wide
|
||||
or user-specific values that programs and scripts can access during execution.
|
||||
They help manage configuration settings such as file paths, system behavior,
|
||||
or application options without hard-coding them into scripts.
|
||||
In PowerShell, environment variables are accessed through the `Env:` drive,
|
||||
for example `$Env:PATH`, and can be created or modified using simple assignment.
|
||||
This makes scripts more flexible, portable, and easier to maintain
|
||||
across different systems.
|
||||
|
||||
|
||||
```powershell
|
||||
$env:ProgramFiles
|
||||
$env:ProgramData
|
||||
$env:SystemDrive
|
||||
$env:SystemRoot
|
||||
```
|
||||
|
||||
## Match Replace
|
||||
|
||||
```powershell
|
||||
$string = "Jello world!"
|
||||
|
||||
if($string -match "Hello"){
|
||||
Write-Output "The string matches the pattern!"
|
||||
$newString = $string -replace "Hello" , "Hi"
|
||||
Write-Output $newString
|
||||
}
|
||||
```
|
||||
|
||||
## TextFile
|
||||
|
||||
Text files are commonly used to store and exchange data in a simple,
|
||||
readable format.
|
||||
|
||||
### Set-Content
|
||||
|
||||
The `Set-Content` cmdlet is used to create a new text file
|
||||
or overwrite an existing one with specified content.
|
||||
|
||||
```powershell
|
||||
Set-Content -Path "C:\mrsh\endor.txt" -Value "Ewoks"
|
||||
```
|
||||
|
||||
### Get-Content
|
||||
|
||||
The `Get-Content` cmdlet is used to read the contents of a text file,
|
||||
returning its data line by line, which is useful for processing or analyzing text.
|
||||
|
||||
```powershell
|
||||
Get-Content -Path "./endor.txt"
|
||||
```
|
||||
|
||||
### Add-Content
|
||||
|
||||
```powershell
|
||||
Add-Content -Path "C:\mrsh\endor.txt" -Value "Jedi"
|
||||
```
|
||||
|
||||
## CSV
|
||||
|
||||
In PowerShell, CSV (Comma-Separated Values) files are widely used for storing and
|
||||
exchanging structured data such as tables and lists.
|
||||
|
||||
|
||||
### Import-CSV
|
||||
|
||||
PowerShell provides the `Import-Csv` cmdlet to read CSV files
|
||||
and convert each row into an object with properties based on the column headers,
|
||||
making the data easy to work with.
|
||||
|
||||
```powershell
|
||||
Import-CSV -Path ".\Simpsons.csv"
|
||||
```
|
||||
### Export-CSV
|
||||
|
||||
The `Export-Csv` cmdlet is used to save objects back into a CSV file.
|
||||
This object-based approach allows for efficient data manipulation,
|
||||
filtering, and reporting.
|
||||
|
||||
```powershell
|
||||
Get-ComputerInfo | Export-CSV -Path "C:\mrsh.com\same-simpson.csv"
|
||||
```
|
||||
|
||||
## JSON
|
||||
|
||||
In PowerShell, JSON (JavaScript Object Notation) is commonly used to
|
||||
store and exchange structured data in a lightweight,
|
||||
human-readable format.
|
||||
This makes it easy to work with APIs, configuration files,
|
||||
and complex data structures. JSON support in PowerShell enables seamless data interchange and efficient automation.
|
||||
|
||||
### ConvertFrom-Json
|
||||
|
||||
The `ConvertFrom-Json` cmdlet to transform JSON data into PowerShell objects.
|
||||
|
||||
```powershell
|
||||
$json = Get-Content -Path ".\simpsons.json" -Raw
|
||||
$data = ConvertFrom-Json -InputObject $json
|
||||
```
|
||||
|
||||
### ConvertTo-Json
|
||||
|
||||
and `ConvertTo-Json` to convert objects back into JSON format.
|
||||
|
||||
```powershell
|
||||
Get-NetAdapter | ConvertTo-Json | Out-File ".\NetworkAdapter.json"
|
||||
```
|
||||
## XML
|
||||
|
||||
In PowerShell, XML is used to store and manage structured data in a hierarchical
|
||||
format.
|
||||
XML data is represented as objects, making it easy to navigate,
|
||||
extract, and modify elements and attributes.
|
||||
This makes XML useful for working with configuration files,
|
||||
system data, and applications that rely on structured document formats.
|
||||
|
||||
```powershell
|
||||
$xml_file = Get-Content C:\mrsh\simpsons.xml
|
||||
$xml_file.simpsons.charcter[0]
|
||||
$xml_file.save("C:\mrsh\simpsons-nex.xml")
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user