• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

private knowhow


コミットメタ情報

リビジョン4d8add1967f655e5710d6b3d0a157e31d1d115ca (tree)
日時2014-01-28 07:20:09
作者oga <hyperoga@gmai...>
コミッターoga

ログメッセージ

change powershell

変更サマリ

差分

--- a/powershell.txt
+++ b/powershell.txt
@@ -46,19 +46,38 @@ PS> Triangle 6 2 (
4646 これによってPowerShellの起動時にProfile.ps1が自動実行され、
4747 (例えば)関数やエイリアスの登録を行うことができる(*)。
4848
49-* なお、profile.ps1の内容はすべてグローバル・スコープで登録される。
50-従って、明示的にスコープ修飾子によるスコープ宣言を行う必要はない。
49+ * なお、profile.ps1の内容はすべてグローバル・スコープで登録される。
50+ 従って、明示的にスコープ修飾子によるスコープ宣言を行う必要はない。
5151
5252 (b)ユーザ固有プロファイル
53- 「C:\Documents and Settings\<ユーザー名>\My Documents\WindowsPowerShell」
54- フォルダにprofile.ps1を配置
55-
53+ XP 「C:\Documents and Settings\<ユーザー名>\My Documents\WindowsPowerShell」
54+ フォルダにprofile.ps1を配置
55+ Win7「C:\Users\<ユーザー名>\Documents\WindowsPowerShell」
56+ フォルダにMicrosoft.PowerShell_profile.ps1を配置
57+ 場所は
58+ $Profileで確認
59+
60+(6)環境変数表示
61+ PS> env
62+ #PS> Get-ChildItem env:
63+ PS> $env.Path
64+ PS> $env:Path.split(";")
65+
66+ 環境変数設定
67+ PS> $env:Path = "C:\usr\bin;C:\users\user\bin"
68+ PS> $env:Path += "C:\usr\bin"
69+ PS> $env:Path = $env:Path + ";C:\users\user\bin"
70+
71+{
5672 2. 各仕様
5773 (1)引数の受け取り
5874 (a)デフォルト
5975 $Args[0] ... 第1引数
6076 $Args[1] ... 第2引数
6177
78+ 引数の数
79+ $Args.Length
80+
6281 (b)Param([string] $name)
6382 Write-Output "こんにちは、 $name さん!"
6483
@@ -166,14 +185,34 @@ Yoshihiro
166185
167186 (9)分岐
168187 $x = 100
169-if ($x -ge 80){
188+if ($x -ge 80) {
170189 Write-Output '変数$xは80以上です。'
171-} elseif ($x -ge 40){
190+} elseif ($x -ge 40) {
172191 Write-Output '変数$xは40以上80未満です。'
173192 } else {
174193 Write-Output '変数$xは40未満です。'
175194 }
176195
196+比較演算子
197+演算子 説明
198+-eq 等しい
199+-ne 等しくない
200+-gt より大きい
201+-ge 以上
202+-lt より小さい
203+-le 以下
204+-like ワイルドカードによる比較
205+-notlike ワイルドカードによる比較
206+-match 正規表現による比較
207+-nomatch 正規表現による比較
208+
209+上記は大文字と小文字を区別しない
210+(上記演算子名の前に文字iを付けて-ieq
211+ とした場合も大文字と小文字を区別しません)
212+大文字と小文字を区別する場合は上記演算子名の
213+前に文字cを付けて -ceq のようにする。
214+
215+
177216 (10)switch
178217 $x = 1
179218 switch($x){
@@ -268,8 +307,27 @@ function
268307 [return 戻り値]
269308 }
270309
310+(15)日付取得
311+ PS> get-date
312+ PS> get-date -UFormat "%Y/%m/%d %H:%M:%S"
313+ PS> get-date -Format "yyyy/MM/dd hh:mm:ss.fff"
314+
315+ ミリ秒取得
316+ $cur = (get-date -Format "hh,mm,ss,fff").split(",")
317+ $start = (([Int32]$cur[0]) * 3600 + ([Int32]$cur[1]) * 60 + ([Int32]$cur[2])*1000) + [Int32]$cur[3]
318+
319+ (注)[Int32]でキャストしないと文字列が複数回羅列されるので注意
320+
321+
322+3. コマンド
323+(1)grep
324+ Select-String
325+
326+ grep して wc -l
327+ (ipconfig | Select-String IPv4).Length
271328
272-3. .NET Frameworkクラス・ライブラリの利用方法
329+{
330+4. .NET Frameworkクラス・ライブラリの利用方法
273331 .NET Frameworkが提供するクラスをインスタンス化して、
274332 スクリプトの中で利用することも可能。
275333 これによって、スクリプト上でVisual BasicやC#と