view-csv.ps1 CSVファイルを表示する。
もし、Excelがあれば、Excelに関連付けされて、見れますが、もっと簡単に見る方法はないものか?
csvview.htaを使う方法もありますが、もし、PowerShellが入っていれば、簡単にGUI表示できます。
Get-Content CSVファイル | CovertFrom-CSV | Out-GridView
ただし、難点は、PowerShellコンソールが開くことと、PowerShellコンソールを閉じるとGUIも閉じることです。
例えば、
view-csv.ps1 CSVファイル...
foreach($arg in $args){
get-content $arg|convertfrom-csv|out-gridview
}
PowerShellコンソールで、
PS > .\view-csv.ps1 a.csv
はよいけれど、これにCSVファイルをドロップしたり、コマンドプロンプトで、
> view-csv.ps1 a.csv
は、グリッドビューが開いて、すぐ閉じてしまいます。:-(
そこで、もし、GUIから起動されたら、コンソールを非表示にして、グリッドビューが閉じるのを待ち合わせします。
また、もし、コンソールから関連付けで起動されたときも、グリッドビューが閉じるのを待ち合わせします。
view-csv.ps1
$gui=[system.environment]::commandline -like "*$($myinvocation.mycommand.path)*"
if($gui -and ([System.Diagnostics.Process]::GetCurrentProcess().MainWindowHandle -ne 0)){
powershell -windowstyle hidden -command exit
}
foreach($arg in $args){
get-content $arg|convertfrom-csv|out-gridview
}
if($gui){
while([System.Diagnostics.Process]::GetCurrentProcess().MainWindowHandle -ne 0){
start-sleep 1
}
}
これならおk。
« Import-CSVコマンドレットには、-Encodingパラメタがなく、文字化けする。 | トップページ | out-ie.ps1 PowerShellからHTMLをIEに流し込む。 »