X



PowerShell -Part 4

■ このスレッドは過去ログ倉庫に格納されています
2020/01/01(水) 16:08:31.66ID:4oQ1Kxot
前スレ
PowerShell -Part 3
https://mevius.5ch.net/test/read.cgi/tech/1539074808/

次スレは>>980が立ててね!!
2020/06/17(水) 16:55:10.36ID:/58stVp5
パイプの弊害か
2020/06/17(水) 17:44:32.75ID:UcA8Gcsf
>>397
コマンドラインで結果をすぐに見たいからですね
ページャーにつないで欲しい結果が出てきたら確認して終了
ステップごとに完了待ちしてたら時間がもったいない
400デフォルトの名無しさん
垢版 |
2020/06/17(水) 23:59:11.03ID:H0Dcbe9T
>>396
>1 .. 3 | % { $_; sleep 1 } | Start-Job { process { ">$_" }} | Receive-Job -wait

1 .. 3 | % { $_; sleep 1 }
この部分を、Start-Job の中に入れたら?
2020/06/18(木) 05:52:46.25ID:7bz/apiR
$ary_names = @('太郎','次郎','三郎','四朗','五郎')
write-output $ary_name[@] #bashの記法
太郎,次郎,三郎,四朗,五郎

的なことをしたい。※区切り文字はなんでも可。


現状、配列に文字列をくっつけると1行で出るので
write-output ("a"+$aaa).trim("a")

という強引な方法をとっております。もっとPowershell的にスマートな方法があれば
お教えくださいませ。
2020/06/18(木) 06:58:53.37ID:3wPjj0xg
$ary_names -join ','
2020/06/18(木) 07:18:11.97ID:7bz/apiR
>>402
ありがとうございます!
2020/06/18(木) 09:01:24.17ID:hwvpLd3O
>>400
それだと最終目的のためにはStart-Jobの入れ子が必要になるなあ
制御不能になりそうだし面倒なので避けたい
cmd.exeを使うことにします
405デフォルトの名無しさん
垢版 |
2020/06/19(金) 06:41:17.41ID:RNyMoV2a
$s=[datetime]::Now; 1 .. 5 | ForEach-Object { Start-Sleep 1; ">{0}" -f $_ } | ForEach-Object { Start-Sleep 1; ">{0} {1}" -f $_, ([datetime]::Now - $s).TotalSeconds}

2秒間隔、トータル10秒という結果に困惑している
2020/06/19(金) 07:30:31.94ID:JIIBGf6G
>>405
二重ループを期待してたってこと?
407405
垢版 |
2020/06/19(金) 08:42:12.76ID:RNyMoV2a
最初は2秒、それから1秒間隔でトータル6秒だと思ってた
1秒待ちをStart-Sleepでなく別のプロセスで待たせても変わらなかった
408デフォルトの名無しさん
垢版 |
2020/06/19(金) 08:51:47.96ID:GhHOGZr1
パイプつなぎはいわゆるgenerator(PowerShellでの呼び方は知らない)になるってことかな?
2020/06/19(金) 08:52:39.06ID:JIIBGf6G
1に対して最初のfor-eachの中身処理した後に次のfor-eachの中身処理。
2に対して...
3に対して...
4に対して...
5に対して...
ふたつのfor-eachの中身がどういう順に処理されてるか確認できるように表示を工夫してみたら?
410405
垢版 |
2020/06/19(金) 09:08:23.61ID:RNyMoV2a
そこはなんとなくイメージできたんでもういい
パイプラインの各段を別のプロセスにすると6秒で終了する
同じように6秒で終了すると思ってたら違ったんで戸惑ったというお話
411405
垢版 |
2020/06/19(金) 11:12:17.79ID:RNyMoV2a
$s=[datetime]::Now; 1 .. 5 | Start-ThreadJob { process { Start-Sleep 1; ">${0}" -f $_ }} | Receive-Job -Wait -AutoRemoveJob | ForEach-Object { Start-Sleep 1; ">{0} {1}" -f $_, ([datetime]::Now - $s).TotalSeconds}

別スレッドを指定したらトータル6秒になった

一人研究発表会になっちまったな。すまぬ。
412405
垢版 |
2020/06/19(金) 11:40:12.67ID:RNyMoV2a
よく見たら結果がおかしい。お手上げだ。諦めた。
2020/06/19(金) 17:20:54.32ID:qQd5c1Zr
>>397
おまえはpythonでもつかってろ
2020/06/19(金) 18:23:41.02ID:OOcqKGQK
ラクダが笑ってんぞ
415405
垢版 |
2020/06/19(金) 21:01:31.39ID:RNyMoV2a
できたーーーー

$s=[datetime]::Now; 1 .. 5 | ForEach-Object { Start-Sleep 1; ">{0}" -f $_ } | ForEach-Object { Start-Sleep 1; ">{0} {1}" -f $_, ([datetime]::Now - $s).TotalSeconds}
にちょい足しして
$s=[datetime]::Now; 1 .. 5 | ForEach-Object -Parallel { Start-Sleep 1; ">{0}" -f $_ } -ThrottleLimit 1 | ForEach-Object { Start-Sleep 1; ">{0} {1}" -f $_, ([datetime]::Now - $s).TotalSeconds}
にしたらStart-ThreadJobを使った時より遅いけど簡単に予想してた結果になった
お騒がせしました
416405
垢版 |
2020/06/19(金) 21:15:58.78ID:RNyMoV2a
こ、今度こそできたー

$s=[datetime]::Now; 1 .. 5 | Start-ThreadJob { $input | ForEach-Object {Start-Sleep 1; ">{0}" -f $_ }} | Receive-Job -Wait -AutoRemoveJob | ForEach-Object { Start-Sleep 1; ">{0} {1}" -f $_, ([datetime]::Now - $s).TotalSeconds}
やっぱりこれが最終版ということにしたい
お邪魔しました
2020/06/20(土) 00:50:50.12ID:na6pkPqz
はいつぎ
2020/06/20(土) 08:11:14.95ID:wKnheY+E
Powershellを使いこなすにはcomを知らなければならないと聞いたのですが、
comについてはどうやって学ぶのがオススメですか?
ググラビリティの悪い単語なので、
思うように検索できません
Excellの機能を使ってあれこれしたいです
2020/06/20(土) 09:03:13.32ID:5oXecify
COM の使い方
https://docs.microsoft.com/ja-jp/previous-versions/direct-x/cc351700(v=msdn.10)
2020/06/20(土) 11:29:31.09ID:XppcwtFP
Powershellを使い始めました
皆さん、こんなの全部覚えてるんですか?
どうやって覚えました?

ファイル開いて書き込むだけで
こんなにもたくさん覚えないといけないって
大変だったんじゃないですか?

$output_file = "C:\bin\hoge.txt"
$sw = New-Object System.IO.StreamWriter($output_file, $false, [Text.Encoding]::GetEncoding("UTF-8"))
$sw.WriteLine("aaa")
$sw.WriteLine("あああ")
$sw.Close()


$sw.WriteLine("あああ")
$sw.Close()

この辺はまだ、覚えられるのですが、

New-Object System.IO.StreamWriter←InputOutputを、ストリームにライトするんだろうな
$output_file, $false,  ←ファイル名と、追記、上書を指定するんだろうな。
[Text.Encoding]:: ←なんで[]包むんだ、:: ←このダブルのコロンは何だ、
GetEncoding("UTF-8")) ←何でファイル作ってるのにGetなんだ、

単純に
$mojiko-do="UTF-8"で
New-Object System.IO.StreamWriter($output_file, $false,$mojiko-do)じゃないんだと、
覚えることや、なぜこうなってるんだに少々ビビってます。

皆さんが、どうやってこんなに複雑で面倒なものを覚えたか、コツがあったら教えてください。
2020/06/20(土) 11:33:23.00ID:XppcwtFP
ほかにも、メソッド、プロパティ?クラス?で書き方がものすごいたくさんあるようで、めまいがします。

覚えれば仕事が楽になることは分かっているので、頑張りたいところなんですが
あまりの複雑さに、皆さんがどうやって覚えたのか、コツがあればぜひともお教えください。
2020/06/20(土) 11:46:07.33ID:6HpZ1NhN
良くも悪くも.NETが前提だから
先にC#を覚えるのがコツかな
2020/06/20(土) 12:28:41.13ID:sltMp+ny
コード量が多いってことと覚えなきゃいけない知識量は必ずしも一致しないからな
Perlみたいに省略できまくるワンライナーのほうがスパゲティったときわけ分からなくなる
2020/06/20(土) 12:29:17.17ID:dcvMDCGE
とにかく書いて動かす
やってみる、作ってみる
国語力、英語力は少しつけようとする
2020/06/20(土) 12:31:14.10ID:E6EedD+K
.NETなんて前提にしなくてもマルチプラットフォームで使える文法を身につけるのが先
2020/06/20(土) 13:13:11.69ID:w0A+CU3q
>>420
ファイルに書き込むだけならコマンドレットで足りる
痒い所に手が届かない時にググりながら.NETをボチボチ使って行けば良い
2020/06/20(土) 13:13:46.53ID:F3e6GYXo
正直言ってPowerShellは覚える必要ない

スクリプトファイルを作って使うならC#を使うのと大差ない
それならC#を覚えて使う方がいい

コマンドラインシェルとして使うなら.NETやらCOMやら取り込む使い方は
何かあった時にシェルが巻きぞえになって、シェルを殺すしかなくなる
そうならない程度に言語自体の機能だけで使うなら、とりたて覚えるほどでもない
2020/06/20(土) 13:42:16.03ID:dcvMDCGE
本番環境その場で場当たり的にコマンド打つのはあり得ないしな
まあすごくユルい会社なら知らんが
2020/06/20(土) 13:50:27.59ID:zwBEwaPL
>>420
その書き方は.NETライブラリを使っているのでPowershellの初歩の枠を越えてる
追記するだけならこう
$output_file = "C:\bin\hoge.txt"
"aaa" | Out-File $output_file -Append -Encoding UTF8
"あああ" | Out-File $output_file -Append -Encoding UTF8
こうしてもいい
"aaa", "あああ" | Out-File $output_file -Append -Encoding UTF8
UTF16でいいならこれ
"aaa", "あああ" >> $output_file

Powershell 5以前には欠陥があって、BOMなしUTF8を新規作成する簡単な手段がなかった
だからStreamWriterを持ち出すようなサンプルが普及していて、初歩のはずなのに難しいと感じる要因になってる
2020/06/20(土) 14:13:22.51ID:Xz+FX1Oy
必要はないけど覚えたら便利
2020/06/20(土) 14:35:58.75ID:YZMPfrl8
最初から暗記する必要はなくて、機能を一覧表にしておいて
必要に応じてそれを参照、コピペすればいい
出現頻度の高いものは自然と覚える
いずれにしても手打ちするのは時間の無駄なので
コピペ推奨
2020/06/20(土) 16:51:19.56ID:KBDfWM5t
習得してない人達のアドバイスは聞く必要がない
あっだからできないんだっていう見本にはなるけど
2020/06/20(土) 16:58:42.46ID:py+iqQxS
俺以外のアドバイスは聞く必要がない
2020/06/20(土) 17:35:07.43ID:6sC7z1nS
>>420
>コツがあったら教えてください。

PowerShell に限った話じゃないけど、学校の授業みたいに「勉強ありき」で
努力するよりも、「これをやるためには PowerShell を使うしか無い」という
状況に追い込まれると覚えやすいですね。

あと、積極的に英語のフォーラムなどから情報を得るようにしたほうが良いと思います。
やはり、日本語と英語では情報量が雲泥の差ですので。
Google 翻訳を使えば何とかなります。
2020/06/20(土) 20:10:35.90ID:WPfafdOl
>>434
> 「これをやるためには PowerShell を使うしか無い」という状況
そんな状況は、普通は無い。

あるとすれば、>>428が言った
> 本番環境その場で場当たり的にコマンド打つ
ぐらい。
2020/06/20(土) 23:24:31.04ID:tXS4Zxv6
PowerShell(PS)で、ビジネスロジック・複雑なものを書いたら、ダメ!

基本的に、CSV・JSON などは、Ruby で書いて、
起動部分だけを、コマンドプロンプト・PS・VBS などで作る
2020/06/20(土) 23:38:30.06ID:sltMp+ny
Pythonにしてくれ頼む
2020/06/21(日) 08:39:56.92ID:PKUYu7rs
>>435
>そんな状況は、普通は無い。

仕事で MS のエンタープライズ系製品を扱ってると、嫌というほど
そういう状況に遭遇しますね。
Windows Server, Exchange, SQL Server, Office 365 あたりの
設計、構築、運用に携わってれば日常茶飯事です。

そういう仕事に携わるようになってから PowerShell を覚えた、って人が
多いと思ったけど、そうでもないのかな?プログラム板だから違うのかな?
2020/06/22(月) 18:21:34.75ID:njZ7JPCW
>>0438
君は正常。
440デフォルトの名無しさん
垢版 |
2020/06/24(水) 07:34:20.49ID:9MFoHisW
コマンドプロンプトでバッチを作るとちょっとした自動化に便利というのを最近知って調べたら
今はPowerShellCoreが現行とたどり着いたが
やっぱり移行するしないで揉めてる
441436
垢版 |
2020/06/24(水) 08:08:25.26ID:rM4tv+8j
さすがに、バッチでプログラミングしてはいけない!
可読性が低すぎる

Ruby スクリプトなどを起動するだけにしておくべき
2020/06/24(水) 08:40:10.38ID:L+v/qVAN
>>440
用途・要件次第。
業務利用という前提だけど、自分だったらこういうポリシーで緩やかに移行する。

・既存の cmd バッチや WSF、VBS → 基本的には移行(移植)しない
※例外:改修が必要になった場合は個別対応

・新規 → 基本的には PowerShell で作るべき
※例外:極々単純なもの、自分だけが使い捨てするもの
2020/06/24(水) 08:44:24.27ID:/txx2vwO
可読性w
可読性に煩いやつ程低レベルだよね
三項演算子とか
2020/06/24(水) 09:05:28.99ID:W7e3ICMc
>>441
お前はRuby禁止のスレでRubyでは〜Rubyでは〜とやるのをやめろ。ノイズにしかならない糞レスはスレの可読性を下げるだけだ。
2020/06/24(水) 09:51:09.11ID:LpqCs0qI
440で思い出したけど、powershell coreって今どうなってるんや
自分は実行環境としては5.1をメインで使ってるけど、みんなどこら辺なんや
2020/06/24(水) 10:09:13.32ID:wIzfCOgT
win10プレインストールしか使っとらんわ
というかツール勝手に入れられない客先環境で戦うためのツールって認識
2020/06/24(水) 10:48:39.06ID:oYgVDO6A
>>446
> ツール勝手に入れられない客先環境で戦うためのツール

ほんそれ。

いまメインでやってる案件だと、お客さんから貸与されてる作業用 PC があって、
お客さんの環境にはそのマシンしか繋げられない。もちろん、世に数多とある便利ツールを
好き勝手に入れることは出来ない。

でも PowerCLI などの PowerShell モジュールのインストールは純正管理ツール扱いで
許可されてるので、構築とか保守作業では PowerShell スクリプトを使いまくってる。

いちいちマウスでカッチンカッチンやってたら、日が暮れちゃうからね・・・。
448デフォルトの名無しさん
垢版 |
2020/06/24(水) 12:17:32.10ID:9MFoHisW
>>442
なるほど。
どうも。
449デフォルトの名無しさん
垢版 |
2020/06/24(水) 21:01:47.98ID:jVaXlMW4
scriptblock[] を受け取って、scriptblockをそれぞれスレッドで動かして
パイプでつないで実行するfunctionを書きたいんだがうまく書けない
ようするに
  $s = [datetime]::Now
  1 .. 10 |
    % { sleep 1; ">$_" } |
    % { sleep 1; ">$_" } |
    % { sleep 1; ">{0} {1} " -f $_, ([datetime]::Now - $s).TotalSeconds }
を実行すると
  >>>1 3.1179897
  >>>2 6.1354357
  >>>3 9.1403334
  >>>4 12.1434852
と3秒間隔で結果が出るんで
  $s = [datetime]::Now
  threadedpipe @( { 1 .. 10 },
          { % { sleep 1; ">$_" } },
          { % { sleep 1; ">$_" } },
          { % { sleep 1; ">{0} {1} " -f $_, ([datetime]::Now - $using:s).TotalSeconds }})
みたいに書いて、最初が3秒目で1秒間隔で結果出力したい
いろいろ試して諦めたんだが、そもそもPowerShellではこういうfunctionは書けないの?
2020/06/24(水) 22:06:24.12ID:VGKuFIs7
powershellのコマンドはプロセス作らないから無理じゃね
マルチスレッドをそんなお手軽に制御できたら夢みたいだけど
2020/06/25(木) 00:26:33.50ID:GAspYPHa
あれでもForeach-object あたりにparallelこなかったっけ
452デフォルトの名無しさん
垢版 |
2020/06/25(木) 00:40:28.26ID:BtDpxRK3
並列に動かすってことは普通にやれば1秒間隔じゃなくてほぼ同時に出力されることになる
どういう意図なのかはわからないけど無理やりやるんなら入力側で一秒ずつ待ってやるか

$sw = [Diagnostics.Stopwatch]::StartNew()

1..10
| % { ">$_"; sleep 1 }
| % -pa { sleep 1; ">$_" }
| % -pa { sleep 1; ">$_" }
| % { "{0} {1:F2} " -f $_, $sw.Elapsed.TotalSeconds }


もしくは出力側で一秒ずつ待ってやるか

1..10
| % -pa { sleep 1; ">$_" }
| % -pa { sleep 1; ">$_" }
| % { sleep 1; "{0} {1:F2} " -f $_, $sw.Elapsed.TotalSeconds }
2020/06/25(木) 00:44:41.05ID:LTqYJW83
シェルスクリプトみたいに各プロセスが並列的に流れてくるテキストを処理して…
みたいのをやりたいのかなと推測してる
454デフォルトの名無しさん
垢版 |
2020/06/25(木) 08:46:34.24ID:L3VdfOGw
そうそうそういうこと
イメージとしては https://ja.wikipedia.org/wiki/命令パイプライン

パイプラインのステージごとに1スレッド起動して全データで使いまわしたい
4ステージのパイプラインなら4スレッドで動かす
ForEach-Object の -Parallel はデータごとにスレッドを起動するから別物
スレッドプールで使いまわすにしてもちょっと違う

ちなみに sleep させてるけど時間がかかる処理の代用ね
455デフォルトの名無しさん
垢版 |
2020/06/25(木) 08:53:56.13ID:L3VdfOGw
こっちの方がイメージが近いかも
https://ja.wikipedia.org/wiki/パイプ_(コンピュータ)
2020/06/25(木) 09:37:48.10ID:piKX+XZq
普通にワンライナー諦めれば次の作業にすすめるんじゃない?
457デフォルトの名無しさん
垢版 |
2020/06/25(木) 09:50:30.28ID:L3VdfOGw
ワンライナーなんか関係ないんだけど

原理は >>416 にあるから、それを簡単に実現できるように
function threadedpipe { param([scriptblock[]] $sbs)
を書きたいと言ってる
2020/06/25(木) 09:56:30.77ID:1+fg5ofc
あぁまたこいつだったか
459デフォルトの名無しさん
垢版 |
2020/06/25(木) 10:49:27.00ID:dZiolc11
>パイプラインのステージごとに1スレッド起動して全データで使いまわしたい
これが根本的に間違ってるだろ。
パイプで連結するってことは、前後(依存)関係があるってことで、それぞれをスレッド分割したところで全く意味がない。
460デフォルトの名無しさん
垢版 |
2020/06/25(木) 11:16:02.92ID:L3VdfOGw
何言ってんの?
パイプラインってものをわかってない
これスクリプトファイルにして試してみ

function recvdata { foreach ($i in 1 .. 10) { sleep 1; $i }}
filter mul10 { sleep 1; $_ * 10 }
filter add1 { sleep 1; $_ + 1 }
filter fmtresult { "{0} {1}" -f $_, ([datetime]::Now - $script:s).TotalSeconds }

"スレッドなし"
$s = [datetime]::Now
recvdata | mul10 | add1 | fmtresult

"ステージごとに別スレッド"
$s = [datetime]::Now
Start-ThreadJob {
  filter add1 { sleep 1; $_ + 1 }
  Start-ThreadJob {
    filter mul10 { sleep 1; $_ * 10 }
    Start-ThreadJob {
      function recvdata { foreach ($i in 1 .. 10) { sleep 1; $i }}
      recvdata
    } | Receive-Job -Wait -AutoRemoveJob | mul10
  } | Receive-Job -Wait -AutoRemoveJob | add1
} | Receive-Job -Wait -AutoRemoveJob | fmtresult
2020/06/25(木) 11:35:16.74ID:emOdy//g
きたない
462デフォルトの名無しさん
垢版 |
2020/06/25(木) 11:41:54.06ID:L3VdfOGw
んだからfunction threadedpipeを作って見やすくしたいっつってんだろ
2020/06/25(木) 12:35:03.44ID:WfI766VN
そこじゃないだろ
2020/06/25(木) 13:13:44.27ID:sZY/v5D+
>>462
単に興味本位で聞くんだけど、差し支えなかったら教えて。
具体的にどんなデータをどんな状況で処理しようとしてるの?
2020/06/25(木) 16:37:26.69ID:MV6c2Qez
なにけんけんしてんの?
2020/06/25(木) 20:19:35.75ID:hxSOAVLp
>>462
繰り返しになるけどPSはunixシェルと仕組みが全然違うから厳しいと思う
パイプのバッファリングはどう仕組むつもりなの?
2020/06/25(木) 21:11:04.72ID:L3VdfOGw
いまだにこんな見当違いを目にしてびっくり
試せるように >>460 を書いたのに試してないのかな
Start-ThreadJobが使えない環境なら、代わりにStart-Jobを使っても動くぞ
スレッドとジョブの起動速度差で少し遅いけどちゃんと動くから試してみろよ

というわけで、動作することはちゃんと確認できてる
俺が聞いたのは、>>460 みたいにごちゃごちゃ書くのが面倒だから
threadedpipe @({recvdata}, {mul10}, {add1}, {fmtresult})
のように書けるような function threadedpipe が作れるかどうかなの
まあ制約付きで一応できたんだけど
468420
垢版 |
2020/06/25(木) 23:05:56.80ID:ZIjS4UcO
とりとめもなく、推敲もなく適当に書き散らかしてごめんなさい
レスありがとうございます

理解して、Powershell組むのはかなり困難そうなので
Myコピペライブラリでも作って、理解しないでも組めるような
体制を作っていこうと思います

ありがとうございました。


ちなみにファイル作成は >>で用は足りました
2020/06/25(木) 23:48:32.33ID:GAspYPHa
きたないコードで目的も意味不明
まさに自慰
2020/06/26(金) 01:13:06.63ID:UcUHbC3j
質問者より明らかにレベル低いのにイチャモンだけは一流だな
だまってろよお前は
2020/06/26(金) 05:47:21.88ID:ZKLfm8jC
>>466
> パイプのバッファリングはどう仕組むつもりなの?
普通にFIFOを実装するだけだろ
何が難しいと思ってるんだ?
2020/06/26(金) 06:30:47.02ID:uqHA56uo
>>470
お前もだなw
473デフォルトの名無しさん
垢版 |
2020/06/26(金) 07:02:56.31ID:rwBI62Tc
ここがどうだとかじゃなくて、
汚いとかって言い方傷つくだろうが
2020/06/26(金) 10:47:41.63ID:lJi08xny
>>449
こんな感じ?
ただ動くだけのサンプル。エラー処理とかオブジェクトの後始末とか何もしていない。

function Invoke-ThreadedPipeline([ScriptBlock[]] $ScriptBlock) {
 $p = $ScriptBlock | % {
  $p = [RunspaceFactory]::CreateRunspace().CreatePipeline()
  $p.Commands.AddScript($_)
  $p.Runspace.Open(); $p.InvokeAsync()
  $p
 }
 
 while ($p = @($p | ? {-not $_.Output.EndOfPipeline})) {
  $i = [Threading.WaitHandle]::WaitAny(($p | % {$_.Output.WaitHandle}))
  $o = $p[$i].Output.Read($p[$i].Output.Count)
  if ($i -lt $p.Length - 1) {
   $null = $p[$i + 1].Input.Write($o, $true)
   if ($p[$i].Output.EndOfPipeline) {$p[$i + 1].Input.Close()}
  }
  else {
   $o
  }
 }
}

$o = Get-Date
Invoke-ThreadedPipeline (
 {1..10},
 {process {Start-Sleep 1; ">$_"}},
 {process {Start-Sleep 1; ">$_"}},
 {process {Start-Sleep 1; ">$_"}}
) | % {'{0} : {1}' -f $_, (New-TimeSpan $o).TotalSeconds}
475474
垢版 |
2020/06/26(金) 10:49:06.76ID:lJi08xny
スクリプトブロックのバインドとか、スコープとか、面倒な問題は見ないふり。
そもそも、PowerShell のスコープはスレッドセーフにはできていないので、
問題に対処するのは、ほとんど不可能なのかも。
476デフォルトの名無しさん
垢版 |
2020/06/26(金) 12:23:31.85ID:hzH3p+iw
IT掲示板群 ttp://x0000.net/forum.aspx?id=15

学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0

PS malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
2020/07/05(日) 04:12:29.94ID:sb7IOZLx
教えてください。

powershell.exeに
"powershell.exe"が見つかりません。名前を正しく入力したかどうかを確認してから、やり直してください。
ってダイアログが出て怒られるのだが、
これってどういうことですか?
2020/07/05(日) 08:19:48.13ID:EbIp5fqD
>>477
単なるウケ狙いなら別だけど、本気でなんとかしたいのならば、
前後の経緯を含めて詳細に説明してもらわないとなんとも言えない
2020/07/05(日) 09:06:15.18ID:sb7IOZLx
そうですねすみません。

Python3.6、Bazel 2.0.0、MSYS2、Visual C++ Build Tools 2019、WMF5.1、
CUDA toolkit 10.1、cuDNN 7.6を入れて、Tensorflow 2.2をビルド。
x64 Native Tools Command Prompt for VS 2019から、bazel buildでビルド中に、
「powershell.exeが見つかりません。〜」のダイアログが出る。ダイアログの左上はpowershell.exe。
放置すると最大4個出てビルトが一時停止するが、ダイアログの「OK」で閉じると再開する。しばらくすると、また出る。

PCは、
OS:Windows7pro sp1 x64
CPU:Core2Quad Q9550
GPU:Geforce GTX1650super
MEM:8G
2020/07/05(日) 09:07:58.29ID:sb7IOZLx
です。
何か気が付くところがあれば教えてください。
481デフォルトの名無しさん
垢版 |
2020/07/06(月) 15:26:47.18ID:ENMHKR++
powershell.exeが見つからない。
だからこそ、poweshell.exeが見つからなくてはと思っている。
2020/07/06(月) 16:00:54.38ID:AV85qEaL
はいすべった
2020/07/06(月) 19:14:17.53ID:mGwQnOrU
PATHが通ってないんじゃないの
サポート切れのWindows7を使い続けてて大丈夫か
2020/07/06(月) 19:34:12.08ID:BdiDJNUx
建前上esuあるから必要な部署はそれ当てて使ってるよ
2020/07/06(月) 20:54:49.43ID:zdAH+P0d
win7だって(自分で削除しなけりゃ)普通にpathは通っているはずだけど
まあ確かめてみることだね
2020/07/06(月) 20:56:13.29ID:0H1iFJXS
ダイアログが出てる時にタスクの中にpowershell.exeがいませんでした。
誰が出しているのか追いかけてみます。
お騒がせしました。
2020/07/06(月) 21:05:43.69ID:fLXZOc4N
32bit版 or 64bit版を探しにいってるんじゃないの?
488デフォルトの名無しさん
垢版 |
2020/07/07(火) 12:27:32.25ID:Csl+eNq2
Windows 10 なら、コマンドプロンプトで、
where powershell
と入力すると、

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
2020/07/07(火) 21:09:26.46ID:IcFS4Epu
whereは10だけじゃなくて7にも標準搭載されてる
98や2000ならリソースキットに含まれてる
2020/07/11(土) 09:02:38.89ID:n9XGFFVi
NuGetパッケージ使いたい時ってどうすれば使えんの
例えばSeleniumを使いたい場合C#なら
dotnet add package Selenium.WebDriver
これで使えるようになるけどPSの場合はどうすれば
2020/07/11(土) 21:53:51.85ID:I6xaQmI+
Make using NuGet packages installed with Install-Package easier to use - make Add-Type support NuGet packages
https://github.com/PowerShell/PowerShell/issues/6724
2020/07/17(金) 09:19:06.55ID:6MuP2T5H
v6.2.7
https://github.com/PowerShell/PowerShell/releases/tag/v6.2.7
v7.0.3
https://github.com/PowerShell/PowerShell/releases/tag/v7.0.3
2020/07/24(金) 01:22:35.38ID:r0N61jeX
明治の「 おいしい牛乳 」ってあるけど
「 おいしい 」って自分で付けちゃうなんて
強気というかふてぶてしいよな?

「 PowerShell 」からも同じにおいがするぜ
2020/07/24(金) 01:48:02.23ID:UQ3TOH2s
Apple & IBM「…」
2020/07/24(金) 10:09:22.31ID:860vhoVN
Powerこそ力
2020/07/24(金) 10:37:13.71ID:56CkEgqB
shellこそ貝殻!
2020/07/24(金) 14:36:37.83ID:jOZb/2Gr
💪🐚
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況