PowerShell
PowerShellの初期状態ではBashのように Ctrl+P/Ctrl+Nキーでコマンド履歴を呼び出し PageUp/PageDownでバッファを移動 などを行うことができない。 この問題はPSReadLineモジュールによって解決する。 これでかなり使いやすくなった。 インストール (new-obj…
rubyのchompメソッドのようなものをPowerShellで $str.Trim() 使用例 "abc`r`ndef`r`n gh" -split "`n" | %{ $_.Trim().Length } 実行結果 3 3 2先頭の空白や\r,\nが削除されている。 部分文字列の取得 $str.Substring($start_pos, $end_ops) 文字列が数値に…
文字列を日時として比較 [DateTime]"2015-04-01" -lt [DateTime]"2015-05-01 12:34:56" Credentialの使い方 $cred = Get-Credential $nc = [System.Net.NetworkCredential]$cred $params = @{user=$nc.UserName; password=$nc.Password} Invoke-WebRequest -…
スクリプト % { $str = " world!"; echo "hello"+$str } | ConvertTo-Xml -as String -Depth 1 実行結果 <Objects> <Object Type="System.Management.Automation.ScriptBlock"> $str = " world!"; echo "hello"+$str </Object> </Objects>スクリプトブロックも変換できている。ScriptBlockはクロージャではないので呼び出し時のバインディングを用…
ファイルの移動、コピー、削除などの処理を安全に行うための関数
@(ls -filter "*.jpg")[0] | gm lsで複数個返ってきたオブジェクトを配列化オペレータで囲む。 オブジェクトパイプラインを通ってきたオブジェクトが一つでも配列となる。(このオペレータ用いない場合はオブジェクトそのものが返る。) Get-Member(gm)コマン…
目的 "(放送時期) 番組名 第n話"の形式のファイル群をフォルダ分類します。
問題 以下のコードを実行してみるとパイプラインを通ってきたオブジェクトの数が増えてしまっていることが分かります。(3個から6個に)
動機 写真の整理する際、拡張子の大文字/小文字が変わってしまった。これを元に戻したかった。
$h = @{"a" = 0; "b" = 1} # making a hashtable function showargs { return $args } showargs @h実行結果 -a: 0 -b: 1
ls | ?{ $_.extension -eq ".txt" }作成は次のようなコマンド 1..9 | %{ ni "$(`"{0:D4}`" -f $_).txt" -type file }
目的 写真の整理用
目的 PPTファイルからPNG画像への変換スクリプトです。