集中力なら売り切れたよ

プログラミングや、将棋などについて書きます。

PowerShell

C#やPowerShellでOSのバージョンを確認する方法

C#ではSystem.Environment.OSVersionで取得できます。 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine(Environment.OSVersion); } } } PowerShellでも同様です。 PS C:\Users\Ryo> Wr…

Windows PowerShellで動的にC#のクラスを追加します

Windows PowerShellには動的にC#のコードを埋め込むことができます。Test-Add-Type.ps1 Add-Type -Language CSharp -TypeDefinition @" public class Program { public static void Main() { System.Console.WriteLine("Hello, world!"); } } "@ [Program]::…

Windows PowerShellのGetChildItemの基本機能、-File、-Directory、-Hiddenを2.0で実装します

Windows PowerShell 3.0以降では、簡単にファイル、ディレクトリ、隠しファイルのみを表示することができます。Get-ChildItemに-File、-Directory、-Hiddenオプションを付けるだけでいいです。しかし、Windows XPではPowerShell 2.0なので、この方法は使えま…

【改訂新版】Windows PowerShellポケットリファレンスを購入しました

電子書籍版「【改訂新版】Windows PowerShellポケットリファレンス」を購入しました。Windows PowerShellは統合開発環境PowerShell ISEが標準でついてくるのでとても使いやすいです。初めてプログラミングを学ぶ人にはRubyやPythonよりWindows PowerShellを…

コマンドプロンプトなどからWindows PowerShellを起動する方法

Windows PowerShellをコマンドプロンプトから起動するにはpowershellとコマンドを打つだけでいいです。引数に-Commandを指定するといわゆるワンライナーが書けます。引数に-Fileを指定するとスクリプトファイルを実行できます。テキストエディタのVimでF5キ…

Windows PowerShellでディレクトリのみを抽出する方法

Windows PowerShell 2.0では、Where-Objectを使って条件指定します。 Get-ChildItem | Where-Object { $_.GetType().Name -eq "DirectoryInfo" }Windows PowerShell 4.0では、-Directoryオプションをつけるだけで良くなりました。 Get-ChildItem -Directory

Windows PowerShell 4.0ではGet-FileHashが追加されました

Windows PowerShell 4.0ではGet-FileHashというコマンドレットが追加されたので、簡単にファイルのハッシュ値を求めることができます。Get-FileHash - Microsoft TechNet従来のFCIVを使ってMD5チェックサムを求めます。 Windows PowerShell Copyright (C) 20…

Windows 7でWindows PowerShellを4.0にアップデートしました

Windows 7でWindows PowerShellを4.0にアップデートしました。Download Windows Management Framework 4.064bit Windowsの場合Wndows6.1-KB2819745-x64-MultiPkg.msu32bit Windowsの場合Windows6.1-KB2819745-x86-MultiPkg.msu以上のファイルをダウンロード…

Windows PowerShellのバージョンを確認する方法

バージョンを確認するには、$PSVersionTableという変数を表示すればOKです。実行例 PS C:\Users\Ryo> Write-Output $PSVersionTable Name Value ---- ----- CLRVersion 2.0.50727.5485 BuildVersion 6.1.7601.17514 PSVersion 2.0 WSManStackVersion 2.0 PSC…

Windows PowerShellでLinux風のFind/Grepを実行してみます

LinuxコマンドのfindはWindows PowerShellではGet-ChildItem、grepはSelect-Stringというコマンドレットで可能です。以下はtxtファイルを検索し、その中からmd5という文字列を含んだ行を抽出する例です。コマンドが長くて面倒そうに見えるかもしれませんが、…

Windows PowerShellでカレントディレクトリのファイルを表示します

Windows PowerShellでカレントディレクトリのファイルのフルパスを表示します。スクリプト言語としての機能と.NET Frameworkを使えるのでバッチファイル(cmdやbat)より使いやすいですね。 foreach ($i in Get-ChildItem) { Write-Output $i.FullName }実行…

Windows PowerShellで環境変数を取得します

$env:環境変数名で取得できます。返ってくるのは.NET Frameworkの文字列オブジェクトなので、文字列のメソッドを呼べます。環境変数Pathをセミコロンで改行して表示する例を示します。 $env:Path.Split(";")他のプログラミング言語に比べて実に簡単にできる…

Windows PowerShellに入門してみました

このサイトを参考にしました。Windows PowerShell 入門 (3) - スクリプト編 (2/4) : CodeZine初期状態ではスクリプトの実行が禁止されているので、コマンドレットで実行ポリシーをRemoteSignedに変更します。 Set-ExecutionPolicy RemoteSignedこれで自分で…