Program/Windows PowerShell
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#amazon(4873113822)
#amazon(477415542X)
#contents
#br
#adsense(728x90)
#br
* 概要 [#z50e8cb9]
- cmd.exe に代わる Windows 用のシェル、スクリプト言語
- Windows Script Host の後継
- Windows 7、Windows Server 2008 R2 は PowerShell 2.0 が...
- それ以前の OS は別途インストールする
** プログラム [#cb563c4d]
- Windows PowerShell
-- シェル
- Windows PowerShell ISE [Integrated Scripting Environmen...
-- PowerShell の開発環境
** スクリプト [#vfea96b5]
- 拡張子は .ps1
- Windows Server 2012 まではデフォルトでスクリプトの実行...
** 関連付け [#q40c5246]
- デフォルトでは .ps1 ファイルをダブル クリックするとメモ...
- レジストリの HKEY_CLASSES_ROOT\Microsoft.PowerShellScri...
- Open は notepad.exe に関連付けられているため、powershel...
* 制御 [#d44f5e96]
** 条件分岐 [#v522a1e2]
*** if [#h7906c63]
#pre(soft){{
if ( '''expr1''' )
{
command1
}
else
{
command3
}
}}
** 繰り返し [#dd4b25f8]
*** for [#l2043ef1]
- 変数にリストを順次組み込み、処理を繰り返す。
#pre(soft){{
for ( '''init'''; '''expr'''; '''roop''' )
{
'''command'''
}
}}
- ex) 変数 i が 10 未満の場合に、処理を行う (この場合、10...
#pre(soft){{
for ( $i=0; $i -le 10; $i++ )
{
Write-Host "$i"
}
}}
*** while [#k85bc688]
- 条件式が真である間、処理を繰り返す
#pre(soft){{
while ( '''expr''' )
{
'''command'''
}
}}
- ex) 変数 i が 10 未満の場合に、処理を行う (この場合、10...
#pre(soft){{
$i=0
while ( $i -le 10 )
{
Write-Host "$i"
$i++
}
}}
*** do/while [#o6732149]
- while と似ているが、条件式の判定を最後に行う
- 最初の 1 回は必ず実行される
#pre(soft){{
do
{
'''command'''
}
while ( '''expr''')
}}
*** foreah [#o174fe72]
- 配列を逐次処理する
#pre(soft){{
foreach ($i in $'''var''')
{
'''command'''
}
}}
*** switch [#y2b47fc5]
** 中断 [#e08460b8]
*** break [#se234077]
- ループ処理を中断して次の処理に進む
*** continue [#e4617bc8]
- ループ処理の後続を飛ばして、ループの先頭に戻る
* 条件式 (expression) [#i3be28c3]
** ファイルの条件式 [#w501f5ef]
|条件式|意味|説明|h
|-d '''file'''|directory|'''file''' がディレクトリなら真|
|-f '''file'''|file|'''file''' がファイルなら真|
|-e '''file'''||'''file''' が存在すれば真|
|-r '''file'''|read|'''file''' が存在して、読み込み可能な...
|-w '''file'''|write|'''file''' が存在して、書き込み可能...
|-x '''file'''|excute|'''file''' が存在して、実行可能なら...
|-s '''file'''|size|'''file''' が存在して、サイズが 0 で...
** 文字の条件式 [#r7978062]
|条件式|説明|h
|'''str1''' = '''str2'''|'''str1''' と '''str2''' が等し...
|'''str1''' != '''str2'''|'''str1''' と '''str2''' が等し...
|-z '''str'''|'''str''' が空なら真|
|-n '''str'''&br;'''str'''|'''str''' が空でなければ真|
** 整数の条件式 [#h018e46f]
|条件式|意味|説明|h
|'''num1''' -eq '''num2'''|equal|'''num1''' と '''num2'''...
|'''num1''' -ne '''num2'''|not equal|'''num1''' と '''num...
|'''num1''' -gt '''num2'''|greater than|'''num1''' が '''...
|'''num1''' -lt '''num2'''|less than|'''num1''' が '''num...
|'''num1''' -ge '''num2'''|less than or equal|'''num1''' ...
|'''num1''' -le '''num2'''|greater than or equal|'''num1'...
** 型の判定 [#v8f2da83]
|条件式|説明|h
|$'''var''' -is '''type'''|型が正しければ真|
|$'''var''' -isnot '''type'''|型が正しくなければ偽|
** その他 [#d7e9c6d7]
|条件式|説明|h
|Test-Path '''path''' [-PathType Leaf|Container]|'''...
|Test-Connection '''host'''|'''host''' の PING 応答がある...
** 論理結合 [#g71780eb]
- 条件式の条件式
|条件式|意味|説明|h
|! '''expr'''|-not|'''expr'''が偽なら真|
|'''expr1''' -and '''expr2'''|and|'''expr1''' と '''expr2...
|'''expr1''' -or '''expr2'''|or|'''expr1''' か '''expr2''...
* 変数 (variable) [#b24c6da8]
** 特殊変数 [#kf677142]
|変数|説明|h
|$args['''num''']|'''num''' 番目の引数|
|$?|直前のコマンドの終了コード|
|$null|Null|
|$true|真|
|$false|偽|
|$_&br;$input|パイプで渡されたオブジェクト|
* コマンドレット [#a0440885]
*** Get-Command [#u3f48208]
- コマンドレットの一覧を出力する
#pre(soft){{
Get-Command
}}
- ex)
#pre(soft){{
PS C:\Users\user> Get-Command↵
CommandType Name Definition
----------- ---- ----------
Alias % ForEach-O...
Alias ? Where-Obj...
Function A: Set-Locat...
Alias ac Add-Content
Cmdlet Add-Computer Add-Compu...
Cmdlet Add-Content Add-Conte...
Cmdlet Add-History Add-Histo...
Cmdlet Add-Member Add-Membe...
Cmdlet Add-PSSnapin Add-PSSna...
Cmdlet Add-Type Add-Type ...
Alias asnp Add-PSSna...
}}
*** Get-Alias [#t6cfdaad]
- エイリアスの一覧を出力する
*** Set-ExecutionPolicy [#n46d8550]
- スクリプトの実行ポリシーを変更する
#pre(soft){{
Set-ExecutionPolicy '''policy'''
}}
|ポリシー|説明|h
|Restricted|すべてのスクリプトの実行を禁止 (Windows Serve...
|AllSigned|すべてのスクリプトに証明書を要求|
|RemoteSigned|インターネットでダウンロードしたスクリプト...
|Unrestricted|すべてのスクリプト実行を許可&br;インターネ...
|Bypass|すべてのスクリプト実行を許可|
*** Get-History (history) [#mc9d3e41]
- コマンド実行履歴を出力する
*** Get-Help [#ped4cdbd]
- コマンドレットのヘルプを出力する
#pre(soft){{
Get-Help '''Cmdlet'''
}}
** プロセス [#j681f568]
*** Get-Process (ps) [#qc614144]
- プロセスの一覧を出力する
#pre(soft){{
Get-Process ['''option''']
}}
-- .exe は付かない
|オプション|説明|h
|-Id|プロセス ID|
|-Name|プロセス名 ワイルドカード、カンマ区切りで複数指定...
*** Start-Process [#h5b26460]
- プロセスを起動する
#pre(soft){{
PS C:\User\user> Stop-Process ['''option''']
}}
|オプション|説明|h
|-FilePath|起動プログラムのパス|
*** Stop-Process (kill) [#j09c6201]
- プロセスを停止する
#pre(soft){{
PS C:\User\user> Stop-Process ['''option''']
}}
|オプション|説明|h
|-Id|PID|
|-Name|プロセス名 ワイルドカード、カンマ区切りで複数指定...
|-Confirm|確認を要求する|
** ファイル操作 [#k7859c74]
*** Get-Location (pwd) [#s86d79cb]
*** Set-Location (cd) [#a0215aef]
*** Get-ChildItem (ls) [#e216c57d]
- ファイルの一覧を出力する
#pre(soft){{
PS C:\User\user> Get-ChildItem ['''option''']
}}
|オプション|説明|h
|-Force|隠しファイルも出力 (ls -la)|
|-Recurse|再帰的に出力 (ls -r)|
|-Filter "'''filter'''"||
- ex)
#pre(soft){{
PS C:\Users\user> Get-ChildItem↵
ディレクトリ: C:\Users\user
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 2013/02/07 16:38 Contacts
d-r-- 2013/03/22 19:24 Desktop
d-r-- 2013/03/11 18:35 Documents
d-r-- 2013/03/22 17:34 Downloads
d-r-- 2013/02/07 16:38 Favorites
d-r-- 2013/02/26 11:26 Links
d-r-- 2013/02/07 16:38 Music
d---- 2013/03/01 11:07 Oracle
d-r-- 2013/02/07 16:38 Pictures
d-r-- 2013/02/07 16:38 Saved Games
d-r-- 2013/02/07 16:38 Searches
d-r-- 2013/02/07 16:38 Videos
}}
- ex)
#pre(soft){{
PS C:\> Get-ChildItem -Filter "*.txt"↵
}}
- ex) C:\dir 配下のすべての Thumbs.db を削除する
#pre(soft){{
PS C:\> Get-ChildItem -Path C:\dir\ -Include Thumbs.db -R...
}}
*** Move-Item (mv) [#c57be668]
*** Copy-Item (cp) [#v70f01dd]
*** Remove-Item (rm) [#j7abde15]
#pre(soft){{
PS C:\> Remove-Item '''file''' ['''option''']
}}
|オプション|説明|h
|-Recurse|確認なしに再帰的に削除する|
|-Force|非表示、読み取り専用属性ファイルを削除する|
|-Confirm|確認を表示する|
|-WhatIf|実際の削除は行わず、処理内容を出力する|
*** mkdir (Function) [#p8adedcc]
** オブジェクト操作 [#b2ed8260]
*** Write-Output (echo) [#za501d2c]
- 標準出力に出力する
#pre(soft){{
[Write-Output] '''object'''
}}
- ex) 文字列を出力する
#pre(soft){{
PS C:\> Write-Output "aaa"
aaa
PS C:\> Write-Output "aaa" "bbb"
aaa
bbb
PS C:\> Write-Output "aaa","bbb"
aaa
bbb
}}
- ex) Write-Output を省略することも出来る
#pre(soft){{
PS C:\> "aaa"
aaa
PS C:\> "aaa","bbb"
aaa
bbb
}}
- ex) 省略した場合、複数要素をスペースで区切ることは出...
#pre(soft){{
PS C:\> "aaa" "bbb"
Unexpected token 'bbb' in expression or statement.
At line:1 char:12
+ "aaa" "bbb" <<<<
+ CategoryInfo : ParserError: (bbb:String) [...
+ FullyQualifiedErrorId : UnexpectedToken
}}
*** Get-Content (cat, tail, wc -l) [#fa735078]
- ファイル内容を出力する
#pre(soft){{
PS C:\> Get-Content '''file''' ['''option''']
}}
- '''num1''' 行目から '''num2''' までを出力
#pre(soft){{
PS C:\> (Get-Content '''file''')['''num1..num2''']
}}
-- '''num'''
--- 正数は先頭からの行数、負数は最終行からの行数
--- 0 が先頭行、-1 が最終行
- 行数を出力 (wc -l)
#pre(soft){{
PS C:\> (Get-Content '''file''').Length
}}
- 末尾 '''num''' 行を出力する (tail)
#pre(soft){{
PS C:\> Get-Content -Path '''file''' -Tail '''num'''
}}
- 末尾 10 行を出力し、追加された行を随時出力する (tail -f)
#pre(soft){{
PS C:\> Get-Content -Path '''file''' -Wait -Tail 10
}}
*** Select-String (=grep) [#zbd9a0cb]
#pre(soft){{
PS C:\> Select-String [-Pattern] '''pattern''' [-Path] ''...
PS C:\> Get-Content '''path''' | Select-String [-Pattern]...
}}
|オプション|説明|h
|-NotMatch|'''pattern''' に不一致な行を出力|
|-CaseSensitive||
|-Quiet|出力内容がある場合は真、ない場合は偽を返す|
*** Sort-Object (sort) [#wc8b466f]
|オプション|意味|h
|-CaseSensitive|大文字小文字を区別する|
|-Descending|降順で並び替える|
|-Unique|重複を排除する (Get-Unique と同じ)|
|-property '''property'''|並べ替え対象のプロパティを指定...
|-last '''num'''|最後の '''n''' 行を出力する|
*** Set-ItemProperty (touch) [#q2667393]
#pre(soft){{
PS C:\> Set-ItemProperty '''path''' -Name '''property''' ...
}}
-- '''property'''
--- CreationTime
--- LastWriteTime
-- '''time'''
--- $(Get-Date)
-ex) C:\dir\ 直下のファイル/フォルダの作成日時を設定する
#pre(soft){{
PS C:\> Set-ItemProperty C:\dir\ -Name CreationTime -Val...
}}
-ex) C:\dir\ 配下すべてのファイル/フォルダの更新日時を設...
#pre(soft){{
PS C:\> Get-ChildItem -Recurse C:\dir\ | ForEach-Object {...
}}
** その他 [#n62140aa]
*** Get-Date (date) [#o2c21c2e]
|オプション|説明|h
|-Format '''format'''|表示形式を指定する|
~
|フォーマット|説明|h
|yyyy|西暦 4 桁|
|MM|月 2 桁|
|MMM|月 英語 3 文字|
|MMMM|月 英語|
|dd|日 2 桁|
|ddd|曜日 英語 3 文字|
|dddd|曜日 英語|
|HH|時 2 桁 (24 時間表記)|
|HH|時 2 桁 (12 時間表記)|
|mm|分 2 桁|
|ss|秒 2 桁|
~
||説明|h
|(Get-Date).dayofyear|1 年の何日目かを出力|
|(Get-Date).ToUniversalTime()|UTC 時間に変換する|
|(Get-Date).AddSeconds('''n''')|'''n''' 秒先を出力する (...
|(Get-Date).AddMinutes('''n''')|'''n''' 分先を出力する (...
|(Get-Date).AddHours('''n''')|'''n''' 時間先を出力する (...
|(Get-Date).AddDays('''n''')|'''n''' 日先を出力する (マイ...
|(Get-Date).AddMonths('''n''')|'''n''' ヶ月先を出力する (...
|(Get-Date).AddYears('''n''')|'''n''' ヶ年先を出力する (...
*** Add-Content [#cf602d44]
- ファイルへのリダイレクト
*** Start-Sleep (sleep) [#h509f08d]
* .NET Framework Method [#c9015ca5]
*** Split [#c39d0c3e]
- ex) スペースで分割する
#pre(soft){{
PS C:\> "aa bb cc".Split()
aa
bb
cc
}}
- ex) スペースで分割した上で、空白行を削除する
#pre(soft){{
PS C:\> "aa bb cc".Split(,[StringSplitOptions]::RemoveEm...
aa
bb
cc
}}
- ex) カンマで分割する
#pre(soft){{
PS C:\> "aa,bb,cc".Split(",")
aa
bb
cc
}}
*** ToUpper, ToLower [#q545345f]
- 大文字に変換する
#pre(soft){{
PS C:\IIJ> "aaa".ToUpper()
AAA
}}
- 小文字に変換する
#pre(soft){{
PS C:\IIJ> "AAA".ToLower()
aaa
}}
#br
#adsense(728x90)
#br
終了行:
#amazon(4873113822)
#amazon(477415542X)
#contents
#br
#adsense(728x90)
#br
* 概要 [#z50e8cb9]
- cmd.exe に代わる Windows 用のシェル、スクリプト言語
- Windows Script Host の後継
- Windows 7、Windows Server 2008 R2 は PowerShell 2.0 が...
- それ以前の OS は別途インストールする
** プログラム [#cb563c4d]
- Windows PowerShell
-- シェル
- Windows PowerShell ISE [Integrated Scripting Environmen...
-- PowerShell の開発環境
** スクリプト [#vfea96b5]
- 拡張子は .ps1
- Windows Server 2012 まではデフォルトでスクリプトの実行...
** 関連付け [#q40c5246]
- デフォルトでは .ps1 ファイルをダブル クリックするとメモ...
- レジストリの HKEY_CLASSES_ROOT\Microsoft.PowerShellScri...
- Open は notepad.exe に関連付けられているため、powershel...
* 制御 [#d44f5e96]
** 条件分岐 [#v522a1e2]
*** if [#h7906c63]
#pre(soft){{
if ( '''expr1''' )
{
command1
}
else
{
command3
}
}}
** 繰り返し [#dd4b25f8]
*** for [#l2043ef1]
- 変数にリストを順次組み込み、処理を繰り返す。
#pre(soft){{
for ( '''init'''; '''expr'''; '''roop''' )
{
'''command'''
}
}}
- ex) 変数 i が 10 未満の場合に、処理を行う (この場合、10...
#pre(soft){{
for ( $i=0; $i -le 10; $i++ )
{
Write-Host "$i"
}
}}
*** while [#k85bc688]
- 条件式が真である間、処理を繰り返す
#pre(soft){{
while ( '''expr''' )
{
'''command'''
}
}}
- ex) 変数 i が 10 未満の場合に、処理を行う (この場合、10...
#pre(soft){{
$i=0
while ( $i -le 10 )
{
Write-Host "$i"
$i++
}
}}
*** do/while [#o6732149]
- while と似ているが、条件式の判定を最後に行う
- 最初の 1 回は必ず実行される
#pre(soft){{
do
{
'''command'''
}
while ( '''expr''')
}}
*** foreah [#o174fe72]
- 配列を逐次処理する
#pre(soft){{
foreach ($i in $'''var''')
{
'''command'''
}
}}
*** switch [#y2b47fc5]
** 中断 [#e08460b8]
*** break [#se234077]
- ループ処理を中断して次の処理に進む
*** continue [#e4617bc8]
- ループ処理の後続を飛ばして、ループの先頭に戻る
* 条件式 (expression) [#i3be28c3]
** ファイルの条件式 [#w501f5ef]
|条件式|意味|説明|h
|-d '''file'''|directory|'''file''' がディレクトリなら真|
|-f '''file'''|file|'''file''' がファイルなら真|
|-e '''file'''||'''file''' が存在すれば真|
|-r '''file'''|read|'''file''' が存在して、読み込み可能な...
|-w '''file'''|write|'''file''' が存在して、書き込み可能...
|-x '''file'''|excute|'''file''' が存在して、実行可能なら...
|-s '''file'''|size|'''file''' が存在して、サイズが 0 で...
** 文字の条件式 [#r7978062]
|条件式|説明|h
|'''str1''' = '''str2'''|'''str1''' と '''str2''' が等し...
|'''str1''' != '''str2'''|'''str1''' と '''str2''' が等し...
|-z '''str'''|'''str''' が空なら真|
|-n '''str'''&br;'''str'''|'''str''' が空でなければ真|
** 整数の条件式 [#h018e46f]
|条件式|意味|説明|h
|'''num1''' -eq '''num2'''|equal|'''num1''' と '''num2'''...
|'''num1''' -ne '''num2'''|not equal|'''num1''' と '''num...
|'''num1''' -gt '''num2'''|greater than|'''num1''' が '''...
|'''num1''' -lt '''num2'''|less than|'''num1''' が '''num...
|'''num1''' -ge '''num2'''|less than or equal|'''num1''' ...
|'''num1''' -le '''num2'''|greater than or equal|'''num1'...
** 型の判定 [#v8f2da83]
|条件式|説明|h
|$'''var''' -is '''type'''|型が正しければ真|
|$'''var''' -isnot '''type'''|型が正しくなければ偽|
** その他 [#d7e9c6d7]
|条件式|説明|h
|Test-Path '''path''' [-PathType Leaf|Container]|'''...
|Test-Connection '''host'''|'''host''' の PING 応答がある...
** 論理結合 [#g71780eb]
- 条件式の条件式
|条件式|意味|説明|h
|! '''expr'''|-not|'''expr'''が偽なら真|
|'''expr1''' -and '''expr2'''|and|'''expr1''' と '''expr2...
|'''expr1''' -or '''expr2'''|or|'''expr1''' か '''expr2''...
* 変数 (variable) [#b24c6da8]
** 特殊変数 [#kf677142]
|変数|説明|h
|$args['''num''']|'''num''' 番目の引数|
|$?|直前のコマンドの終了コード|
|$null|Null|
|$true|真|
|$false|偽|
|$_&br;$input|パイプで渡されたオブジェクト|
* コマンドレット [#a0440885]
*** Get-Command [#u3f48208]
- コマンドレットの一覧を出力する
#pre(soft){{
Get-Command
}}
- ex)
#pre(soft){{
PS C:\Users\user> Get-Command↵
CommandType Name Definition
----------- ---- ----------
Alias % ForEach-O...
Alias ? Where-Obj...
Function A: Set-Locat...
Alias ac Add-Content
Cmdlet Add-Computer Add-Compu...
Cmdlet Add-Content Add-Conte...
Cmdlet Add-History Add-Histo...
Cmdlet Add-Member Add-Membe...
Cmdlet Add-PSSnapin Add-PSSna...
Cmdlet Add-Type Add-Type ...
Alias asnp Add-PSSna...
}}
*** Get-Alias [#t6cfdaad]
- エイリアスの一覧を出力する
*** Set-ExecutionPolicy [#n46d8550]
- スクリプトの実行ポリシーを変更する
#pre(soft){{
Set-ExecutionPolicy '''policy'''
}}
|ポリシー|説明|h
|Restricted|すべてのスクリプトの実行を禁止 (Windows Serve...
|AllSigned|すべてのスクリプトに証明書を要求|
|RemoteSigned|インターネットでダウンロードしたスクリプト...
|Unrestricted|すべてのスクリプト実行を許可&br;インターネ...
|Bypass|すべてのスクリプト実行を許可|
*** Get-History (history) [#mc9d3e41]
- コマンド実行履歴を出力する
*** Get-Help [#ped4cdbd]
- コマンドレットのヘルプを出力する
#pre(soft){{
Get-Help '''Cmdlet'''
}}
** プロセス [#j681f568]
*** Get-Process (ps) [#qc614144]
- プロセスの一覧を出力する
#pre(soft){{
Get-Process ['''option''']
}}
-- .exe は付かない
|オプション|説明|h
|-Id|プロセス ID|
|-Name|プロセス名 ワイルドカード、カンマ区切りで複数指定...
*** Start-Process [#h5b26460]
- プロセスを起動する
#pre(soft){{
PS C:\User\user> Stop-Process ['''option''']
}}
|オプション|説明|h
|-FilePath|起動プログラムのパス|
*** Stop-Process (kill) [#j09c6201]
- プロセスを停止する
#pre(soft){{
PS C:\User\user> Stop-Process ['''option''']
}}
|オプション|説明|h
|-Id|PID|
|-Name|プロセス名 ワイルドカード、カンマ区切りで複数指定...
|-Confirm|確認を要求する|
** ファイル操作 [#k7859c74]
*** Get-Location (pwd) [#s86d79cb]
*** Set-Location (cd) [#a0215aef]
*** Get-ChildItem (ls) [#e216c57d]
- ファイルの一覧を出力する
#pre(soft){{
PS C:\User\user> Get-ChildItem ['''option''']
}}
|オプション|説明|h
|-Force|隠しファイルも出力 (ls -la)|
|-Recurse|再帰的に出力 (ls -r)|
|-Filter "'''filter'''"||
- ex)
#pre(soft){{
PS C:\Users\user> Get-ChildItem↵
ディレクトリ: C:\Users\user
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 2013/02/07 16:38 Contacts
d-r-- 2013/03/22 19:24 Desktop
d-r-- 2013/03/11 18:35 Documents
d-r-- 2013/03/22 17:34 Downloads
d-r-- 2013/02/07 16:38 Favorites
d-r-- 2013/02/26 11:26 Links
d-r-- 2013/02/07 16:38 Music
d---- 2013/03/01 11:07 Oracle
d-r-- 2013/02/07 16:38 Pictures
d-r-- 2013/02/07 16:38 Saved Games
d-r-- 2013/02/07 16:38 Searches
d-r-- 2013/02/07 16:38 Videos
}}
- ex)
#pre(soft){{
PS C:\> Get-ChildItem -Filter "*.txt"↵
}}
- ex) C:\dir 配下のすべての Thumbs.db を削除する
#pre(soft){{
PS C:\> Get-ChildItem -Path C:\dir\ -Include Thumbs.db -R...
}}
*** Move-Item (mv) [#c57be668]
*** Copy-Item (cp) [#v70f01dd]
*** Remove-Item (rm) [#j7abde15]
#pre(soft){{
PS C:\> Remove-Item '''file''' ['''option''']
}}
|オプション|説明|h
|-Recurse|確認なしに再帰的に削除する|
|-Force|非表示、読み取り専用属性ファイルを削除する|
|-Confirm|確認を表示する|
|-WhatIf|実際の削除は行わず、処理内容を出力する|
*** mkdir (Function) [#p8adedcc]
** オブジェクト操作 [#b2ed8260]
*** Write-Output (echo) [#za501d2c]
- 標準出力に出力する
#pre(soft){{
[Write-Output] '''object'''
}}
- ex) 文字列を出力する
#pre(soft){{
PS C:\> Write-Output "aaa"
aaa
PS C:\> Write-Output "aaa" "bbb"
aaa
bbb
PS C:\> Write-Output "aaa","bbb"
aaa
bbb
}}
- ex) Write-Output を省略することも出来る
#pre(soft){{
PS C:\> "aaa"
aaa
PS C:\> "aaa","bbb"
aaa
bbb
}}
- ex) 省略した場合、複数要素をスペースで区切ることは出...
#pre(soft){{
PS C:\> "aaa" "bbb"
Unexpected token 'bbb' in expression or statement.
At line:1 char:12
+ "aaa" "bbb" <<<<
+ CategoryInfo : ParserError: (bbb:String) [...
+ FullyQualifiedErrorId : UnexpectedToken
}}
*** Get-Content (cat, tail, wc -l) [#fa735078]
- ファイル内容を出力する
#pre(soft){{
PS C:\> Get-Content '''file''' ['''option''']
}}
- '''num1''' 行目から '''num2''' までを出力
#pre(soft){{
PS C:\> (Get-Content '''file''')['''num1..num2''']
}}
-- '''num'''
--- 正数は先頭からの行数、負数は最終行からの行数
--- 0 が先頭行、-1 が最終行
- 行数を出力 (wc -l)
#pre(soft){{
PS C:\> (Get-Content '''file''').Length
}}
- 末尾 '''num''' 行を出力する (tail)
#pre(soft){{
PS C:\> Get-Content -Path '''file''' -Tail '''num'''
}}
- 末尾 10 行を出力し、追加された行を随時出力する (tail -f)
#pre(soft){{
PS C:\> Get-Content -Path '''file''' -Wait -Tail 10
}}
*** Select-String (=grep) [#zbd9a0cb]
#pre(soft){{
PS C:\> Select-String [-Pattern] '''pattern''' [-Path] ''...
PS C:\> Get-Content '''path''' | Select-String [-Pattern]...
}}
|オプション|説明|h
|-NotMatch|'''pattern''' に不一致な行を出力|
|-CaseSensitive||
|-Quiet|出力内容がある場合は真、ない場合は偽を返す|
*** Sort-Object (sort) [#wc8b466f]
|オプション|意味|h
|-CaseSensitive|大文字小文字を区別する|
|-Descending|降順で並び替える|
|-Unique|重複を排除する (Get-Unique と同じ)|
|-property '''property'''|並べ替え対象のプロパティを指定...
|-last '''num'''|最後の '''n''' 行を出力する|
*** Set-ItemProperty (touch) [#q2667393]
#pre(soft){{
PS C:\> Set-ItemProperty '''path''' -Name '''property''' ...
}}
-- '''property'''
--- CreationTime
--- LastWriteTime
-- '''time'''
--- $(Get-Date)
-ex) C:\dir\ 直下のファイル/フォルダの作成日時を設定する
#pre(soft){{
PS C:\> Set-ItemProperty C:\dir\ -Name CreationTime -Val...
}}
-ex) C:\dir\ 配下すべてのファイル/フォルダの更新日時を設...
#pre(soft){{
PS C:\> Get-ChildItem -Recurse C:\dir\ | ForEach-Object {...
}}
** その他 [#n62140aa]
*** Get-Date (date) [#o2c21c2e]
|オプション|説明|h
|-Format '''format'''|表示形式を指定する|
~
|フォーマット|説明|h
|yyyy|西暦 4 桁|
|MM|月 2 桁|
|MMM|月 英語 3 文字|
|MMMM|月 英語|
|dd|日 2 桁|
|ddd|曜日 英語 3 文字|
|dddd|曜日 英語|
|HH|時 2 桁 (24 時間表記)|
|HH|時 2 桁 (12 時間表記)|
|mm|分 2 桁|
|ss|秒 2 桁|
~
||説明|h
|(Get-Date).dayofyear|1 年の何日目かを出力|
|(Get-Date).ToUniversalTime()|UTC 時間に変換する|
|(Get-Date).AddSeconds('''n''')|'''n''' 秒先を出力する (...
|(Get-Date).AddMinutes('''n''')|'''n''' 分先を出力する (...
|(Get-Date).AddHours('''n''')|'''n''' 時間先を出力する (...
|(Get-Date).AddDays('''n''')|'''n''' 日先を出力する (マイ...
|(Get-Date).AddMonths('''n''')|'''n''' ヶ月先を出力する (...
|(Get-Date).AddYears('''n''')|'''n''' ヶ年先を出力する (...
*** Add-Content [#cf602d44]
- ファイルへのリダイレクト
*** Start-Sleep (sleep) [#h509f08d]
* .NET Framework Method [#c9015ca5]
*** Split [#c39d0c3e]
- ex) スペースで分割する
#pre(soft){{
PS C:\> "aa bb cc".Split()
aa
bb
cc
}}
- ex) スペースで分割した上で、空白行を削除する
#pre(soft){{
PS C:\> "aa bb cc".Split(,[StringSplitOptions]::RemoveEm...
aa
bb
cc
}}
- ex) カンマで分割する
#pre(soft){{
PS C:\> "aa,bb,cc".Split(",")
aa
bb
cc
}}
*** ToUpper, ToLower [#q545345f]
- 大文字に変換する
#pre(soft){{
PS C:\IIJ> "aaa".ToUpper()
AAA
}}
- 小文字に変換する
#pre(soft){{
PS C:\IIJ> "AAA".ToLower()
aaa
}}
#br
#adsense(728x90)
#br
ページ名: