###########################
# Write output and commands to text file DOS and PS
#########################
REM Check Version of spfx related packages and save to a file
node --version >> C:\temp\Logs\cmdPrompt.log
npm --version >> C:\temp\Logs\cmdPrompt.log
pnp --version >> C:\temp\Logs\cmdPrompt.log
yo --version >> C:\temp\Logs\cmdPrompt.log
gulp -v >> C:\temp\Logs\cmdPrompt.log
nvm ls >> C:\temp\Logs\cmdPrompt.log
choco --version >> C:\temp\Logs\cmdPrompt.log
type C:\temp\Logs\cmdPrompt.log
REM save command output to a file and command error output STDERR and STDOUT
choco --version 1>> C:\temp\Logs\cmdPrompt.log 2>&1
REM View file in cmd
type C:\temp\Logs\cmdPrompt.log
REM Save commands to append to a file
doskey /history >> C:\temp\Logs\cmdPrompt.Commands.log
REM Copy the Command Output to Windows Clipboard
REM ould copy the details of your network connections to the clipboard:
ipconfig /all | clip
REM opy the contents of a folder to the clipboard
dir | clip
# Powershell save commands + output
# ps output to a file, output to a text file with PowerShell on Windows 11 or Windows 10,
ipconfig | Out-File -FilePath C:\temp\Logs\cmdPrompt.log
#view the saved output on the screen
Gt-Content -Path C:\temp\Logs\cmdPrompt.log
# saving BOTH the commands you type AND all their output? I'm not talking about piping the output of any one to a file, like above. Instead, this is about the PowerShell Start-Transcript cmdlet. Try it out some time:
Start-Transcript
# Without any parameters, the transcript will be saved in the user’s documents folder, filename will automatically be generated and consists of the device name, random characters
#e.g:
# c:\users\name\documents\PowerShell_transcript.DEVICENAME.qp9EOTN2.20220301132612.txt
# Start recording
Start-Transcript
# stop recording
Stop-Transcript
# start options
# Append to a log file.
Start-Transcript -Path C:\temp\Logs\cmdPrompt.log -Append
#use -NoClobber prevent overwriting file
Start-Transcript -Path C:\temp\Logs\cmdPrompt.log -NoClobber
# -OutputDirectory parameter. This way we can specify the directory where we want to store the log file
Start-Transcript -OutputDirectory C:\Temp\Logs
# Result:
Transcript started, output file is C:\Temp\Logs\PowerShell_transcript.WIN11-LAB02.uftVAXsv.20220301045218.txt
# limit the header information to only a timestamp o
Start-Transcript -OutputDirectory C:\Temp\Logs -UseMinimalDeader
# E.g:
**********************
PowerShell transcript start
Start time: 20220301135543
**********************
# See also: https://itluke.online/2019/03/24/what-is-captured-with-powershell-transcripts/ for Verbose+Debug levels
# See also: https://4sysops.com/archives/powershell-transcript-record-a-session-to-a-text-file/
###########################
# Get Versions
#########################
# PS get version of Spfx imprtant packages
node --version
npm --version
pnp --version
yo --version
gulp -v
nvm ls
choco --version
winget --version
# get version of Powershell
host
# or
$PSVersionTable
$PSVersionTable.PSVersion
# get the value of the PowerShellVersion parameter in the registry key
(Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name 'PowerShellVersion').PowerShellVersion
#Version of PowerShell on Remote Computers
Invoke-Command -ComputerName 192.168.1.15 -ScriptBlock {$PSVersionTable.PSVersion} -Credential $cred
# get version of .Net + .Net Core
# versions of the .NET SDK are currently installed with a terminal
dotnet --list-sdks
(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'sdk')).Name
# which versions of the .NET runtime
dotnet --list-runtimes
(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'shared\Microsoft.NETCore.App')).Name
# dotnet core installed runtimes and SDKs, as well as some other info:
dotnet --info
# .NET Framework
# get from https://github.com/jmalarcon/DotNetVersions/releases save to C:\Windows\System32 or PATH
dotnetversions -b
# security updates and hotfixes that are installed on a computer using PowerShell:
$DotNetVersions = Get-ChildItem HKLM:\SOFTWARE\WOW6432Node\Microsoft\Updates | Where-Object {$_.name -like
"*.NET Framework*"}
ForEach($Version in $DotNetVersions){
$Updates = Get-ChildItem $Version.PSPath
$Version.PSChildName
ForEach ($Update in $Updates){
$Update.PSChildName
}
}
# Get CLR versions
# displays all the versions of the CLR installed on the computer. dl Clrver.exe (CLR Version Tool)
clrver
# get version of VS Code / Visual Studio
code --version
nuget help | select -First 1
dotnet nuget --version
# change based on version to be checked
(Get-Item "${env:ProgramFiles(x86)}\Microsoft Visual Studio 11.0\common7\ide\devenv.exe").VersionInfo.ProductVersion
# get paths to GAC
gacutil.exe -l
# get version of PnP
# get version of Spfx
REM DOS Get
Version of spfx related packages and save to a file
node --version >> C:\temp\Logs\cmdPrompt.log
npm --version >> C:\temp\Logs\cmdPrompt.log
pnp --version >> C:\temp\Logs\cmdPrompt.log
yo --version >> C:\temp\Logs\cmdPrompt.log
gulp -v >> C:\temp\Logs\cmdPrompt.log
nvm ls >> C:\temp\Logs\cmdPrompt.log
choco --version >> C:\temp\Logs\cmdPrompt.log
type C:\temp\Logs\cmdPrompt.log
###########################
# Get Install Folders
#########################
# get install location of powershell
###########################
# Update ps, choco,
#########################
#update ps core
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
# or
winget install PowerShell
O365, SharePoint, Android, C# , SQL , Software Development, Office Productivity, Visual Studio, Business Intelligence, Software Engineering , JavaScript , JQuery , Web Service, JS & .Net FW FUN!
Sunday, July 17, 2022
Utility Powershell and Dos Commands: Save Output and Commands to file, Get Versions, Get Folder, Update Common Packages
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment