HIRO posted on 11月 12, 2008 15:35

本日の業務にて、あるディレクトリ以下にあるファイルをすべてURLエンコードしたかったので、PowerShellで下記関数を作成しました。

UrlEncodeメソッドを使用するだけなんですが、毎回 [reflection.assembly]::LoadWith~ なんて記述するのは面倒なので関数化しました。

おまけでデコードする関数も付けておきます。

[void][reflection.assembly]::LoadWithPartialName("System.Web")
#===============================================================================
# Get-UrlEncode: 指定した文字列をURLエンコードして返す
#
# パラメータ:
#       $EncodeString: エンコードする文字列
#
# 使用例
#       PS > Get-UrlEncode マイクロソフト
#       PS > %e3%83%9e%e3%82%a4%e3%82%af%e3%83%ad%e3%82%bd%e3%83%95%e3%83%88
#
# copyright HIRO's.NET(http://hiros-dot.net/)
#===============================================================================
function global:Get-UrlEncode([string]$EncodeString)
{
    return [System.Web.HttpUtility]::UrlEncode($EncodeString)
}
#===============================================================================
# Get-UrlEncode: 指定した文字列をURLデコードして返す
#
# パラメータ:
#       $EncodeString: デコードする文字列
#
# 使用例
#       PS > Get-UrlDecode %e3%83%9e%e3%82%a4%e3%82%af%e3%83%ad%e3%82%bd%e3%83%95%e3%83%88
#       PS > マイクロソフト
#
# copyright HIRO's.NET(http://hiros-dot.net/)
#===============================================================================
function global:Get-UrlDecode([string]$DecodeString)
{
    return [System.Web.HttpUtility]::UrlDecode($DecodeString)
}

 

たとえばC:\WorkにあるすべてのファイルをURLエンコードする場合は、

PS > dir c:\work | %{Get-UrlEncode $_.Name}

とします


Posted in: PowerShell  Tags:

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

コメントを書く


 

  Country flag

biuquote
  • コメント
  • プレビュー
Loading



Calendar

«  1月 2009  »
月曜火曜水曜木曜金曜土曜日曜
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678
View posts in large calendar

Recent Posts

Recent Comments

Banners

Theme Grabber
Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2009 PowerShell from Japan!!