Windows PowerShell 2.0 Part2at WIN
Windows PowerShell 2.0 Part2 - 暇つぶし2ch257:名無し~3.EXE
10/07/06 13:20:47 Z4Ex5Sa1
テキストファイルの行数は.lengthで獲得できるけど
エクセルファイルで何列目の何行まで使っているか、はどうやれば獲得できるのかな

>>239みてて思った

258:名無し~3.EXE
10/07/06 22:09:06 KuRfnHZn
[Enum]::GetValues([IO.FileAttributes]) | select {$_},{[int]$_}
は動くのに
[Enum]::GetValues([IO.FileAttributes]) | select {$_},{[int]$_} | ogv
が動かないのをなんとかしる
select の引数をまじめに書く
[Enum]::GetValues([IO.FileAttributes]) | select @{Name="Name";Expression={$_}},@{Name="Value";Expression={[int]$_}} | ogv
は面倒だからやだ

259:名無しさん@そうだ選挙に行こう
10/07/10 04:50:45 c2m5VYAj
$ie.document.parentWindow が null になるんだけどなんでだろう

260:名無しさん@そうだ選挙に行こう
10/07/11 21:36:31 8wpZODee
>>258
Select-Object -Property の引数を PropertyPath の XAML 構文としてパースした場合エラーになるって言うのは
PowerShell の構文をどうにかしない限りどうしようも無いと思うが。
今回は↓で回避できるけど、Out-GridView 呼び出しまで含めてラッパ作っちゃった方が早いんじゃね。
[Enum]::GetValues([IO.FileAttributes]) | select {$_},{,([int]$_)} | ogv

261:名無しさん@そうだ選挙に行こう
10/07/11 21:44:56 Y0LxWDlI
>>260
エラーは出ないけれども ([int]$_) の値が表示されないよ

262:名無しさん@そうだ選挙に行こう
10/07/11 21:50:25 8wpZODee
>>261
カンマを付け忘れてる

263:名無しさん@そうだ選挙に行こう
10/07/11 22:04:21 Y0LxWDlI
おお、表示できた
難易度高いわ

264:名無し~3.EXE
10/07/13 16:17:31 viaEAdkS
>難易度高いわ
難度高いわ

265:名無し~3.EXE
10/07/16 01:02:23 nQrufqp5
>>86
とりあえず、はっときます

param($q)
[object[]]$url
if($q -eq $null){$q = "米 味噌"}
$ie = new-object -com internetexplorer.application
$ie.navigate("URLリンク(google.co.jp)")
while($ie.busy){start-sleep -m 50}
while($ie.Document.readyState -ne "complete"){start-sleep -m 50}
$ied = $ie.document
@($ied.getElementsByName("q"))[0].value = $q
@($ied.getElementsByName("btnG"))[0].click()
while($ied.readyState -ne "complete"){start-sleep -m 50}
$doc = @(($ied.getElementById("res")).getElementsByTagName("OL"))[0].innerHTML
if( ($nav=$ied.getElementById("nav")) -ne $null){
$nav.getElementsByTagName("td") | % { if(($_.cellIndex -gt 1) `
-and ( $_.cellIndex -le (@($nav.getElementsByTagName("td")).length -2)) ){ $url += @($_.firstChild.href) }}

foreach($u in $url){
$ie.navigate($u)
while($ied.readyState -ne "complete"){start-sleep -m 50}
$doc = $doc + @(($ied.getElementById("res")).getElementsByTagName("OL"))[0].innerHTML
}
}
$doc = "<ol>"+$doc+"</ol>"
convertTo-Html -body $doc -Title "検索" > get2.html
$ied.write($doc)
$ie.visible = $true

266:名無し~3.EXE
10/07/16 01:05:45 nQrufqp5
100件なら 検索おぷしょんで設定した方が早いような 藁
こっちは検索数バー所運
param($q)
#qcは検索数各自書き換えてください。
$qc = 50
if($q -eq $null){$q = "米 味噌"}
$ie = new-object -com internetexplorer.application
$ie.navigate("URLリンク(google.co.jp)")
while($ie.busy){start-sleep -m 50}
while($ie.Document.readyState -ne "complete"){start-sleep -m 50}
$ied = $ie.document
@($ied.getElementsByName("q"))[0].value = $q
@($ied.getElementsByName("btnG"))[0].click()
while($ied.readyState -ne "complete"){start-sleep -m 50}
$qa = $ie.LocationURL
$doc = @(($ied.getElementById("res")).getElementsByTagName("OL"))[0].innerHTML
$iec = $ied.getElementById("nav")
$url = @($iec.getElementsByTagName("td"))[2].firstChild.href
if($qc -gt 10){
for($i=10;$i -lt $qc; $i += 10){
$ie.navigate($url.replace("start=10","start=$i"))
while($ied.readyState -ne "complete"){start-sleep -m 50}
$doc = $doc + @(($ied.getElementById("res")).getElementsByTagName("OL"))[0].innerHTML
}
}
$doc = "<ol>"+$doc+"</ol>"
convertTo-Html -body $doc -Title "検索" > get.html
$ied.write($doc)
$ie.visible = $true

267:名無し~3.EXE
10/07/16 01:28:45 DGgvO4Hx
タスクバーで点滅

268:名無し~3.EXE
10/07/16 19:58:08 nQrufqp5
自分で対処してください

269:名無し~3.EXE
10/07/17 02:33:51 Cx2mEIGQ
$ie.document.focus

270:名無し~3.EXE
10/07/18 16:19:47 MD6LitbG
"1" 個の引数を指定して "write" を呼び出し中に例外が発生しました: "種類が一致しません。"

271:名無し~3.EXE
10/07/18 19:22:55 1jb4hW0g
>>259
PowerShellでは、MTAで、$ie.document.parentwindowが見えない。
URLリンク(scripting.cocolog-nifty.com)

272:名無し~3.EXE
10/07/18 23:53:42 9EcxcK/O
>>271
前置きの文章の流れがつかみにくい・・・

「STAでは見えます。なので、MTAならSTAで起動し直します。」

程度に削っちゃった方が「以下のコードがそのサンプルですよ」ってことが分かりやすいんじゃないかと思う


273:名無し~3.EXE
10/07/19 02:07:11 +L9wDm12
最近日本語が不自由でプログラム言語でしかしゃべれない人が増えてるから仕方ない

274:名無し~3.EXE
10/07/20 01:21:36 Vkd1I8kA
日本語が相手にされてない

275:名無し~3.EXE
10/07/23 00:16:24 1K/4j0hr
([System.AppDomain]::CurrentDomain.GetAssemblies())[2].gettypes()|
? {($_.namespace -like "*net*") -and ($_.basetype -like "*enum*") -and ($_.IsPublic -eq $true) } |
%{@("##$_.name##")+([Enum]::GetValues((Invoke-Expression "[$_]")))} | select {$_},{,([int]$_)} | ogv

なんか、ぱわーセルのパイプは面毒せーな~

276:名無し~3.EXE
10/07/23 02:20:20 x1KXUDuh
>>275
そんな丁寧に書かんでもいい気がするが、かえって見づらくない?
[AppDomain]::CurrentDomain.GetAssemblies()[2].gettypes() |
? { $_.namespace -like "*net*" -and $_.IsEnum -and $_.IsPublic } |
% { "##$_##"; $_.GetEnumValues()} | select {$_},{,([int]$_)} | ogv

277:名無し~3.EXE
10/07/23 23:07:53 rVRWb7I9
()で括るのは、昔からの癖です


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch