1read 100read
2013年17Windows195: Windows PowerShell Part4 (115) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【前スレ】Proxomitron Part 31 (214)
【糖質】アバレキチガイ【包丁】 (298)
「ウィンドウズXP Home」のサポート期限、大幅に延長 (563)
iTunesとWindows Media Playerを比較検証 (329)
WindowsRTについて「それはできない」で答えるスレ (656)
【IE8】Windows Internet Explorer 8 Part23 (130)

Windows PowerShell Part4


1 :2013/02/01 〜 最終レス :2013/09/23
Windows PowerShell
http://technet.microsoft.com/ja-JP/scriptcenter/dd742419.aspx
オンラインヘルプ(英語のみ、日本語版は2013年春〜後半公開予定)
http://technet.microsoft.com/en-us/library/bb978526.aspx
■パッケージのダウンロード
PowerShell 3.0 (Windows 7以降)
http://www.microsoft.com/en-us/download/details.aspx?id=34595
PowerShell 2.0 (Vista以前は3.0非対応)
http://support.microsoft.com/?kbid=926140
■参考
http://www.atmarkit.co.jp/fdotnet/special/powershell01/powershell01_01.html
http://oka326.blogspot.com/search/label/PowerShell
http://d.hatena.ne.jp/newpops/
http://blogs.msdn.com/PowerShell
■過去スレ
Windows PowerShell (正式版リリース)1.0
http://pc11.2ch.net/test/read.cgi/win/1163764836/
Windows PowerShell 2.0
http://pc12.2ch.net/test/read.cgi/win/1221046998/
Windows PowerShell 2.0 Part2
http://toro.2ch.net/test/read.cgi/win/1261106064/

2 :
ほえ

3 :
PowerShellでXMLファイルのタグ間のスペースや改行を全て削除して1行にしてしまうことは出来るのでしょうか?

4 :
DOSの「echo off」みたいにコマンド自体を出力させないことは出来ますか?

5 :
結局いまだに、
UNIX系OS -> ssh/telnet -> windows
でログインして powershell をまともに使う方法ってないの?

6 :
かなり前からPowerShell Serverあるじゃん

7 :
PowerShell Serverで接続して、日本語っつか、
マルチバイト文字列まともに表示できてる?
もしできてるなら、やり方教えてちょーだい

8 :
あー、日本語表示は駄目っぽいかな?

9 :
むー、やっぱダメなんだよね。
自分的には、Windowsいじるのに日本語使えないってのは
きつすぎる制限なので…
UNIX系OSからの ssh/telnetでマルチバイト文字列表示不可ってのは、
Win8/2012 + PowerShell3.0 + PowerShell Server
か、
Win8/2012 + PowerShell3.0 + OS付属の telnetサーバ
で修正されてたりしないのかな?
誰か確認した人いる?

10 :
2012でいいならPowerShell Web Accessっていう任意のブラウザからリモートできる機能はあるよ
ttp://viewse.blogspot.jp/2013/01/windows-server-2012-powershell-web.html

11 :
>>10
情報ありがと。
残念ながらWin8/2012どっちも持ってなかったりする。
質問の意図は、もしWin8/2012で直ってたら、そのうち 7/2008に
hotfixが来る希望が持てるかも、と思ってのことなのよ。
つか、2012の新機能に sshサーバ機能つけるんじゃなくて
「Powershell Webアクセス機能つけますた!」とか、
相変わらず MS ってずれてるよね。
なんかこの PowerShell Web Access にしても、
たとえば ubuntu上の firefox/chrome/opera辺りから
使ってちゃんと機能するのかな?
具体的にはタブ補完がストレスなく機能するかどうかが気になる。

12 :
>>11
タブ補完はできるけど使用制限はいくつかあるみたいだね
technet.microsoft.com/ja-jp/library/hh831417.aspx#BKMK_web
(リンク貼れないのでスキーム削除)

13 :
そんなこんなでpowershell.exe上でGUIライクなキーバインドとUIを再現してみた
Shift+矢印でテキスト選択してコピーとか切り取りとか貼り付けとかその辺
PowerShell ISEのコンソール使えばいいじゃん、とか思わない人向け
(V3限定)
ttp://gallery.technet.microsoft.com/scriptcenter/WindowsKeyBinding-for-60fb0d55
zipファイルをダウンロードして解凍したフォルダを
環境変数%PSModulePath%に入ってるパス直下に置いたら
Import-Module WindowsKeyBinding で使えるようになるはず
元に戻す(Ctrl+Z)は実装してないし、複数行編集機能とかはないです
奇特な人は使ってみてくださいな

14 :
>>11
ちょっと中の人にメールしてみたんだけど
WireEncodingっていうので文字コードの設定はできるよーって言われた
PowerShell Serverのウインドウの 「Other」タブにWireEncodingって
プルダウンメニューがあるからそれで変更してみてってことなんだけど
自分のはコマーシャルユースだからかそういうメニューはなかった

で、ヘルプ見たらレジストリで直接指定できるらしい
↓参考に編集した
ttp://www.powershellmagazine.com/2011/12/27/powershell-linux-to-windows-integration-encoding-problem/
HKEY_LOCAL_MACHINE\SOFTWARE\PowerShellInside\PowerShellServer に
WireEncodingを自分で追加していろいろエンコード指定できる
メールでもらったところによると日本語関係は
UTF-8 → UTF-8
Japanese (JIS) → iso-2022-jp,
Japanese (JIS-Allow 1 byte Kana) → csISO2022JP,
Japanese (JIS-Allow 1 byte Kana - SO/SI) → iso-2022-jp,
Japanese (EUC) → euc-jp
みたいな感じ
自分の場合は「iso-2022-jp」を値としてセットしたら無事日本語ファイル名もlsで表示できるようになったよ

15 :
>>14
ううううううぅぅうぅっひょーぅぅぅぅうううううう!!!
ありがとー、ありがとー、ありがとー、ありがとー!!!
まじでいけたよ。これでちょっと楽しい PowerShell ライフをすごせるぜ。
環境
 server: windows server 2003 R2 SP2 + PowerShell Server 5.0.0.4482 Personal Edition
 client: debian squeeze 6.0.6 + openssh-client 1:5.5p1-6+squeeze3
手順
 1. サーバ側に PowerShell Server インストール
 2. PowerShell Server レジストリの設定
   # powershell 起動 -> 下記実行(値として UTF-8を指定)
   New-ItemProperty hklm:\SOFTWARE\PowerShellInside\PowerShellServer WireEncoding -PropertyType String -Value UTF-8
 3. PowerShell Server Service Restart
 4. クライアントから接続、今回はmltermを使用 LANGはja_JP.UTF-8
   # "TERM=vt100" はけっこう重要。これで Clear-Hostや方向キーとかが効くようになる
   TERM=vt100 ssh -l username ip_address
 5. 日本語表示の確認 ↓とかしてみる
   Get-Help about_windows_powershell_2.0
ちなみに、v5のPersonal Editionでは、「Other」タブに
WireEncodingプルダウンメニューはありませんでした。
いやでもまじでうれしいわー、ほんとにありがと。

16 :
>>14,15 乙
さっき確認したら、PowerShell Server V5 HelpにちゃんとWireEncodingのことは
書いてあったけど、あれを見つけるのはやっぱちょっときびしいよなぁ…
まぁでもなんか、ちゃんと書いてあったから /n softwareに対する好感度は上がったわ。
んで、"PowerShell Server" WireEncoding でググってみたら、
https://www.google.com/search?q=%22PowerShell+Server%22+WireEncoding&complete=0&safe=off&num=100&hl=ja&lr=&tbo=1&sei=askaUez9D-TAmQWNj4CoBA&gbv=2
>>14 と同じURLしか出て来なくてちょっと笑った。
もしかして、>>14が日本国内で ssh越しのpowershellで
日本語使用できた最初の人物てことだったりするのかな?
うーむ、なんかすげーな、快挙だ。

17 :
いやまあメールしたのが快挙っていうなら快挙なんだろうけど、素直に中の人褒めてあげてw
夜中の8時にメール出して次の日の午前中には返信くれたんだしさ(日本時間換算で)

18 :
ぶった切って悪いが、メモ帳といいPowerShellの-Encodingオプションといい
なんでEUC-JPが指定できないんだろうね。
もしかしてSUNを敵対視するMSの戦略なのかな?

19 :
ほぼすべてのUNIX系OSは UTF-8へ移行済みなんだから、
その考え方は違うんじゃないの?
まだ単に MSKKが頑張らなかったって方が説得力あるわ。
まぁでも、古いOSが残ってて実運用上困るっていうか
めんどくさいのはわかるんだけどさ。

20 :
思い出したから、PowerShell 3.0のドキュメント類のURL貼っとく。
他にも見つけたらどんどん貼っていこうぜ。
Download Windows PowerShell Language Specification Version 3.0
http://www.microsoft.com/en-us/download/details.aspx?id=36389
Download Windows PowerShell and Server Manager Quick References
http://www.microsoft.com/en-us/download/details.aspx?id=30002
Download Windows PowerShell and Microsoft Management Console 3.0 Quick Start Labs
http://www.microsoft.com/en-us/download/details.aspx?id=12971
ついで。
The complete list of PowerShell ISE 3.0 keyboard shortcuts
http://www.powershellmagazine.com/2013/01/29/the-complete-list-of-powershell-ise-3-0-keyboard-shortcuts/

21 :
-Encodingは単に、System.Text.Encodingクラスでよく使う?文字コードが静的メンバになってるから
じゃあうちらもそれに倣ってとりあえずそれだけ対応しとくかー、的なノリだと思う
以前Connectにもっと増やしてって要望は出したけど、ユーザーの需要は低かったよ

22 :
さっきPowerShell Server V6が出てるのに気がついてPersonal Edition入れてみた。
PowerShell 3.0対応はやっぱありがたい。
>>14
んで、"Other"タブ -> Additional Settings -> Text Encoding で Encodingの
設定できるようになってるから、V6のことだったっぽいね。
PowerShell Server
http://www.powershellserver.com/order/

23 :
あるフォルダに文字コードがSJISとUTF8のテキストファイルが複数あり
そのファイル名と文字コードを一覧表示しようとしていますが
gci c:\tmp *.txt | select name
でファイル名は表示できたのですが、文字コードの表示の仕方がわかりません…

24 :
少なくとも標準でそういう機能はない
nkfなりなんなり拾って来ないと

25 :
>>24
そうなのですか…
実はUTF8の方は1バイト目がFE、2バイト目がFFで始まるということが判明したので
これで何とか出来ないか調べていたのですが、私にはハードルが高すぎましたw
もう少しググってみます。

26 :
X日以上前のファイルを消したいのですが
$file_listが空の場合にCreationTimeで
MethodCountColudNotFindBestエラーが発生します。
空なのになぜforeachの中に入っていくのですか?
$file_list = Get-ChileItem DIR -Recurse
foreach( $file in $file_list ){
$diff = ((Get-Date) - $file.CreationTime).Days
}

27 :
>>23
確認はしてないけど、powershell 3.0 ならこれが使えるんじゃない?
GetContent.Encoding Property (Microsoft.PowerShell.Management.Activities)
http://msdn.microsoft.com/en-us/library/microsoft.powershell.management.activities.getcontent.encoding%28v=vs.85%29.aspx

28 :
CSVファイルをconvertfrom-csvでオブジェクト化して
sort-objectで1列目と2列目をキーに並べ替えてるのだけど
「1列目で昇順かつ2列目で降順」みたいに列毎に
異なるソートオーダーを指定するにはどうすればよいのでしょうか?

29 :
昇順ソートして逆にしたい列だけ頭から入れ替えて配列に入れてもっかいCSVにすりゃいいんじゃないですかね
列ごとにソート入れ替えて構造ぶっ壊すことに何の意味があるんだか知らんけど

30 :
>>28
Sort-Object @{E="1列目キー名";Ascending=$true},@{E="2列目キー名";Descending=$true}
みたいな?

31 :
>>26
それPowerShell2.0までの仕様
3.0では直ってる

32 :
>>29
言ってる意味がよくわからんとです…
>>30
出来ました!ありがとうございます!
ググっても全然わからなかったので助かりました。
gci -r | Sort-Object @{E="directoryname";Ascending=$true},@{E="lastwritetime";Descending=$true}

33 :
あるサイトで見かけたんだけど、Get-Contentでファイル内容取得する時に
(gc a.txt) -ne ""
って書くと空行を除外出来るんだね。
他にも面白い書き方ってあるのかな?

34 :
気がついたら、過去の異物のようなスクリプトになったよな。
色つきでファイル一覧出すようにいろいろやったら、ファイルにリダイレクトできないとか、なんだよこれ的な。

35 :
>>32のは
gci -r | Sort @{E="directoryname"},@{E="lastwritetime";D=$true}
でもいけるな。
最近どれだけ短縮できるか試すのが趣味になってきたw
get-helpもhelpでいけるし、些細だがオプションの-fullも-fulでいける。

36 :
スクリプトファイル(拡張子ps1)を実行した時に開くPowerShellのウインドウを最前面固定表示させる方法はあるのしょうか?
もしくはスクリプトファイル内のコードでメッセージボックスを表示してそのメッセージボックスが最前面固定表示されるということでもよいのですが?

37 :
SetForegroundWindow

38 :
>>37
ありがとうございます。その関数名でググって以下のコードを実行しましたが
スタートボタン右側のPowershellのアプリアイコンが点滅するだけで
最前面に出てこないようです、ぐぬぬ…
(ちなみに実行したらすぐ他のアプリを最前面に出し、3秒後にPowershellのアプリが最前面に出てくるかを試しました)
もう少し調べてみます。
Add-Type @"
using System;
using System.Runtime.InteropServices;
public class Tricks {
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool SetForegroundWindow(IntPtr hWnd);
}
"@
$h = (Get-Process -id $pid).MainWindowHandle
sleep -sec 3;
[Tricks]::SetForegroundWindow($h)

39 :
//Form1.cs
Form2 f = new Form2();
f.Owner = this;
f.TopMost = true;
f.Text = "Alarm Clock";
f.GetOtherFormTextBox();
f.Show();

40 :
C#でプログラム作ったほうが手っ取り早くないか?

41 :
これ興味あるんだけど、まだぜんぜん勉強してない。
見た感じ、JavaScriptにちょっと似てる気がするんだけど、JavaScript使いなら取っ付きやすいかな?
それにしても、Unixのシェルとはまったく似ても似つかないシェルですね。

42 :
Shell+Perl みたいなもんかな。
とりあえずPerl知ってりゃ、解説書読みながらすぐ書ける
でも、結局ちょっと突っ込んだことやろうとすると.netの知識が必要になるし、
プログラム言語としては、コーディングしながらエラーも表示してくれるVS+C#で、
http://dobon.net/vb/dotnet/index.html
見ながらの方が手っ取り早いことがわかった。

43 :
UnixでC/C++使ってたときは補助的にシェルスクリプトが必須だったが、
WindowsだとC#だけでほぼ事足りるかな?
いつまでたってもVSで開発環境できないし。

44 :
良さが伝わらなかったか。残念。

45 :
PowerShellServerって何が出来んの

46 :
>>45
>>5-22

47 :
Visual StudioにPSも取り込まれるって話なかった?

48 :
そもそもなんでVSやC#が出てくるのか意味不明なんだが
なにをやろうとしてんの?

49 :
【速報】ついに俺氏が重い腰を上げてPowerShellはじめる

50 :
>>48
開発環境としていろんな支援があるVSの話が出てきても悪くないだろ
C#は.netの主力開発言語、PSにしたって結局.net上で動いて、ちょっと凝ったことをやりたきゃ
.netのライブラリ使う羽目になるだろ。それだったらコンパイルの手間は要るけどはじめからC#使っても同じってこと。
実際PSで作りだめたスクリプトをC#に移植したわ。PSのファイルに"[]"を含む場合のバグ問題もなく実にスンなり移植できた。
これだけ.netのライブラリが豊富だとシェルスクリプト持ち出してくる必然性があんまないんだな。
Perl使ってるときスクリプト言語特有の連想配列とか便利だなと思ったけど
C#でもハッシュテーブル使えるしな。
コマンドプロンプトと同じく、プログラム未満のコマンドラインとしての存在意義はあると思うけどさ。

51 :
客先常駐とかで仕事してるとps1ファイルを実行できるように権限変えることが出来なかったりするからな。
結局ISEにコード貼り付けて実行したりbatファイルと組み合わせたりしてる。

52 :
Import-Csv -Path hoge.csv | Sort-Object { [int]$_.pk1,$_.pk2 }
みたいな事を、{ [int]$_.pk1,$_.pk2 } の部分を動的に指定するにはどうすればよいでしょう?
型変換不要ならば、
$sortKeys = @( 'pk1','pk2' )
Import-Csv -Path hoge.csv | Sort-Object -Property $sortKeys
の様な感じにすればできるんですが。

53 :
>>52
数値列をゼロ埋めで桁数固定にして文字として扱えば型変換不要だがどうよ?
ってダメだろうなあ…w

54 :
>>53
ありがとうございます。
結局、ForEach-Objectで個別に型変換して対応しました。
ちょー省略すると、
$sortKeys = @( 'pk1','pk2' )
Import-Csv -Path hoge.csv |
ForEach-Object -Process {
$_.pk1 = [int]$_.pk1 # <- 本当は整数型にすべきカラムを判定して変換している
$_
} |
Sort-Object -Property $sortKeys
みたいな感じです(^^;

55 :
Get-Counterってプロセスの増減を取得できないんですかね?
$s = {$($(Get-Counter "\Process(*)\% Processor Time").CounterSamples).Count}
$o = Start-Process notepad -PassThru
&$s
$o | Stop-Process
&$s #←減った分がとれない

56 :
XP機を根絶できたので、今後のスクリプトはPowerShellに移行するぜ、
と意気込んでいたのに、拡張子が実行に関連付けられていないだの、
セキュリティポリシーの変更が必要だの、使わせる気ないのか
それならばと標準入力から喰わせてみたんだが、なぜかスクリプトの
一部が実行されたりされなかったり挙動がよくわからん

下のスクリプトを"-Command -"オプションでリダイレクト入力した場合
f2()を途中改行せずに1行にするか、#以降の末尾に改行を2つ以上
書くかしなければ、出力結果が"1 2"で止まってしまって"3"が出ない
これはバグなのかそれとも仕様?
Win8Pro64bitで確認、確かWin7のPowerShell3.0でも同じだったと思う
Write-Host 1
function f1() { }
Write-Host 2
function f2() {
}
Write-Host 3
#

57 :
半日かけてようやく実行可能なバッチファイルが書けたわw
これで心置きなくPowerShellの学習を始められるというもの
PSの文法とかまだヌルい所があるはずなので添削求む
それか他にも同じようなことしてるblogとかないですかね?

@(":", "`""<#") 2>NUL
@POWERSHELL -Command - <%0
@EXIT /B
#>)|%{}
Write-Host "Hello world!"

58 :
あ、終了コード戻すの忘れてた
3行目 @EXIT /B %ERRORLEVEL%

59 :
あるソフトウェアのインストール前後でレジストリのどこに変更があったかをPowerShellで表示することはできますか?

60 :
>>57
ギャグ?

61 :
放置よろ

62 :
LinuxやMacなどに対応したWindows PowerShell、ついに登場!もうWindows買わなくていいぞ
http://engawa.2ch.net/test/read.cgi/poverty/1368543510/

63 :
はっきりいってPowerShellは非Win環境でこそ本領発揮できるかもしれん
コマンド環境で結局.metの上にのってりゃ未来永劫DOSの代わりにならんし
非Win環境でもバーチャル環境で動くなら同じだけどな.
言語としてとってもいいとおもうけど
.net のライブラリがあまりに豊富すぎて補助言語として頼ることもあんまりない

64 :
PowerShellはCOOL

65 :
すみません質問があるのですが、前スレの>>436
>ps1の実行には必要でもps1を読んで実行する分には必要ない
という記述があり、ExecutionPolicyがRestrictedのままでも
ps1ファイルを実行する手段があるかのように受け止められるのですが
そのような方法があるのでしょうか?

66 :
っ PowerShellコマンド

67 :
powershell -ExecutionPolicy RemoteSigned .\test.ps1
ttp://blogs.msdn.com/b/jaybaz_ms/archive/2007/04/26/powershell-polyglot.aspx

68 :
>>67
ありがとうございます。こんなことが出来るのですね。
今日試しましたがschtasksの/trにこのまま書いたら
スケジュールした時刻にバッチリ動きました。
でもこれじゃExecutionPolicyの意味ないんじゃ…w

69 :
ぷっ

70 :
攻撃者がすでに対象のPCにログインしている状況なら、わざわざ実行ポリシー変更してどうこうしないよ

71 :


72 :
まー分かんなかったら暇な時にでも読んでみて
PowerShell’s Security Guiding Principles
ttp://blogs.msdn.com/b/powershell/archive/2008/09/30/powershell-s-security-guiding-principles.aspx
Now, why is
PowerShell.exe ?ExecutionPolicy Bypass ?File c:\temp\bad-script.ps1
not a security bug? Ultimately, if bad code has the ability to run this code, it already has control of the machine.

73 :
PowerShellをエクスプローラからダブルクリックで起動すると、コマンドプロンプトの画面になってしまうのですが、
ランチャツールからの起動でもブルーの画面を出すにはどうすればいいでしょうか?

74 :
ショートカットを起動すりゃいいよ

75 :
>>73
表示された画面左上のプロパティで好きな色変えたら?
次に起動するときには変わってるよ。
コマンドプロンプト画面じゃなくてコンソールプログラム画面ね。

76 :
Windows PowerShell 4.0 Preview
http://www.microsoft.com/en-us/download/details.aspx?id=39347

77 :
Windows 8.1 Preview インスコしたら PowerShell が Version 4.0 になっててびっくりした。
とりあえず Update-Help した。

78 :
一般ユーザでpowershellのコンソール開いて、
そこからコマンドで権限昇格することってできないんでしょうか?
(linuxのsuコマンドのように)
調べてはみたんですが方法がみつからなくて。。
コマンドで『管理者として実行』の状態にしたいんです。

79 :
そんなことができるとでも?

80 :
-Credentialつけるんじゃだめなんか

81 :
なんでそうしたいのか書いた方が別の解決策を教えてもらえるかも

82 :
レスありがとうございます。
>>80
調べてみます。
>>81 
ただ単純に「マウスを使わずにできないのかな?」って思っただけでした。。

83 :
別ウィンドウで良ければ$pshome\powershell.exe -verb runas


84 :
>>83
失敗した。
start-processつけないと。
> function su {start-process $pshome\powershell.exe -verb runas}
> su
こんな感じかな。

85 :
>>84
ありがとうございます!
やってみました。
こんな方法もあったんですね。

86 :
正規表現についてお聞きしたいのですが以下はなぜTrueになるのでしょうか?
「数字、文字、数字」という並びがないとTrueにならないと思うのですが?
PS C:\> $("123abc") -match "\d\w\d"
True

87 :
「\w」は文字ではなく単語なので数値も含んでます故

88 :
>>87
単語なのに数値も含むとは知りませんでした!
確かに「$("1") -match "\w"」でもTrueになりますね。
ご教授ありがとうございます。

89 :
Poweshellは正規表現が強力みたいだけど
コマンドプロンプトで「"AAA"で始まるか又は"CCC"で終わり、かつ"BBB"を含む」行を
"C:\Temp"フォルダ内(サブフォルダ含む)の全テキストファイルから検索して表示する場合
findstr /s /r /c:"^AAA" /c:"CCC$" "C:\Temp\*.txt" | findstr /r /c:".*BBB"
みたいな正規表現によるOR検索とAND検索の組み合わせ検索をよくやるんだけど
これって簡単にPowershellに書き換えられるの?

90 :
>>89
findstrに相当するのはselect-stringですね。
gci C:\temp -filter "*.txt" -recurse | % {select-string "^AAA.*BBB|BBB.*CCC$" $_.fullname -encoding default}
という感じでどうでしょうか。

91 :
>>90
なるほどこんなに簡単に書けるんだね。
-encodingオプションあるのか!これならUTF8とかも検索できるし便利だなあ。
勉強になりました。どうもサンクスです。

92 :
http://tech.aainc.co.jp/archives/643
↑に住所にマッチする正規表現があったので↓のスクリプトを書いてみたのですが、実行するとエラーになります。
何か使えない文字があるのでしょうか?
「ccc 東京都千代田区永田町1−7−1 ddd」という結果を得たいのですが?
$a="aaa 東京都千代田区永田町1−7−1 bbb"
$a -replace "(([^"'=])((北海道|東京都|(大阪|京都)府|(神奈川|和歌山|鹿児島)県|[^\s\w\d ]{2}県)[^\s\w\d ]{1,6}[市郡区町村][^\s\w\d ]{1,20}[\d0-9〇一-九十上下東西]+[^\s '"<)」】]*))",'ccc $1 ddd'

93 :
>>92
ダブルクォート中にダブルクォートが入ってるから「`」でエスケープ
あとPowerShellは「\w」が半角英数字以外にもマッチするから「A-Za-z」とかに変える必要がある

94 :
面白そうなのでやってみた
> $a="aaa 東京都千代田区永田町1−7−1 bbb"
> $regex = [regex]"(([^`"'=])((北海道|東京都|(大阪|京都)府|(神奈川|和歌山|鹿児島)県|[^\s\w\d ]{2}県)[^\s\w\d ]{1,6}[市郡区町村][^\s\w\d ]{1,20}[\d0-9〇一-九十上下東西]+[^\s '`"<)」】]*))"
> $regex.Match($a).Success
False
> $regex = [regex]"(([^`"'=])((北海道|東京都|(大阪|京都)府|(神奈川|和歌山|鹿児島)県|[^a-zA-Z\s\d ]{2}県)[^a-zA-Z\s\d ]{1,6}[市郡区町村][^a-zA-Z\s\d ]{1,20}[\d0-9〇一-九十上下東西]+[^\s '`"<)」】]*))"
> $regex.Match($a).Success
True
> $regex.Match($a).Result("ccc `$1 ddd")
ccc 東京都千代田区永田町1−7−1 ddd
Wordはマルチバイトでもおkと。なるほど。

95 :
>>93
ありがとうございます。正規表現は言語によって微妙に「\w」とかの意味が変わるんですね。
エスケープの仕方も知りませんでした…
>>94
試して頂いてありがとうございます。こんな書き方も出来るんですね。
申し訳ありませんが、まるっとコピーさせて頂きました(笑)

96 :
visual studio2012のコマンドラインツールのpowershell用セットアップスクリプトはMicrosoftから出ているのでしょうか?
powershellからmabuildやguidgenなどのコマンドラインツールを使いたいのですが設定方法がわかりません
コマンドプロンプト用の設定スクリプトをpowershellで実行しましたがうまく行きませんでした

97 :
>>96
$env:path+=";C:\Program Files\Microsoft Visual Studio 12.0\Common7\Tools;C:\WINDOWS\Microsoft.NET\Framework\v3.5"
set-alias guiden "C:\Program Files\Microsoft Visual Studio 12.0\Common7\Tools\guidgen.exe"
set-alias msbuild "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe"
としておけば
guiden
msbuild
と入力するだけで使えると思います。
msbuildはテスト出来なかったので環境変数の使い方
testという環境変数を作り、値を"aaaa"とします。
PS C:\> New-Item -Path env:test -Value "aaaa"
環境変数testに"bbbb"を代入します。
PS C:\> $env:test="bbbb"
PS C:\> $env:test
bbbb
環境変数testに"cccc"を追加します。 ($env:test+="cccc"と書いても同じです)
PS C:\> $env:test=$env:test + "cccc"
PS C:\> $env:test
bbbbcccc
環境変数testを削除します。
PS C:\> Remove-Item env:test
PS C:\> $env:test
PS C:\>
なお、環境変数やエイリアスはセッション終了(PowerShell終了)とともに消えます。
マイドキュメント\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 に書いておけばPowerShell起動の度読み込んでくれます。

98 :
>>97
ありがとうございます
cmd用に書かれた設定スクリプトをそのまま再利用出来ないのは不便ですね

99 :
powershellで1からやるならいいんだろうけど
環境変数設定batすら動かないとやる気なくすよなあ

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
☆WindowsXPを300MHz以下で動かしてるスレ part参☆ (496)
プロダクトキーを置いとくスレ6 (672)
Microsoft Update失敗したらageるスレ 31 (270)
Windowsストア 3店目 (216)
winxp消してもいいファイル (143)
MS-DOS・Win3.1総合スレッド2.01 (442)
--log9.info------------------
スパイロ・ザ・ドラゴン【SPYRO THE DRAGON】語ろう (507)
NINTENDO・ニンテンドウ64総合 22 (570)
ここの板にいる世代って19〜23歳だろ (430)
東京魔人学園剣風帖を語るスレ (444)
デス・スロットルって知ってるかよ? (447)
ロードオブモンスターズ (272)
クラシックロードシリーズ (467)
エキサイトバイク64 (107)
【SRPG】戦国サイバー 藤丸地獄変【パンドラ】 (395)
【コピー能力】星のカービィ64 Part.2【ミックス】 (599)
今日買った90年代TVゲームを書くスレ (833)
カスタムロボのスレ Part6 (305)
【N64】ブラストドーザー 家屋破壊2棟目【レア社】 (577)
マリオストーリーを語れ 4 (230)
★ゼルダの伝説 時のオカリナ★Part33 (693)
ワールドアドバンスド大戦略 その8 (772)
--log55.com------------------
【名古屋の】南区、緑区、東郷スレPart13【枠外】
☆マルハン川口グランドオープン3☆
神戸のガイア住吉店
【錦糸町みとや北口店】 
大阪府茨木市のパチンコ屋
岐阜県のパチ屋を語る 16
仙台駅周辺のパチンコ店
サクラ・千成グループ総合2【吉川越谷春日部草加】