[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2ch.scのread.cgiへ]
Update time : 12/13 19:01 / Filesize : 192 KB / Number-of Response : 689
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

PowerShell -Part 7



1 名前:デフォルトの名無しさん [2023/11/29(水) 16:07:49.46 ID:0g8RZ7sB.net]
前スレ
PowerShell -Part 6
https://mevius.5ch.net/test/read.cgi/tech/1644744972/

次スレは>>980が立ててね!!

452 名前:デフォルトの名無しさん mailto:sage [2025/05/20(火) 12:57:58.71 ID:NKLxZTlt.net]
時刻データ(ISO 8601)が入った JSON を invoke-RestMethod で受け取る
あるいは ConvertFrom-JSON すると時刻が powershell 形式になる
データの内容を見て勝手に変換してるんか…

453 名前:デフォルトの名無しさん mailto:sage [2025/05/20(火) 14:18:35.07 ID:Xl2+DDPz.net]
>>452
勝手にDateTime型でだしてくるってこと?

454 名前:デフォルトの名無しさん mailto:sage [2025/05/20(火) 15:30:07.39 ID:NKLxZTlt.net]
>>453
こうなる

(ConvertFrom-Json('{"data":"2025-05-19T16:35:42.000Z"}')).data

2025年5月19日 16:35:42

455 名前:デフォルトの名無しさん mailto:sage [2025/05/20(火) 15:52:27.90 ID:NKLxZTlt.net]
括弧いらなかった(どうでもいい)
(ConvertFrom-Json '{"data":"2025-05-19T16:35:42.000Z"}').data

456 名前:デフォルトの名無しさん mailto:sage [2025/05/21(水) 09:54:31.02 ID:rXr/G70T.net]
ならんが(Win10, Win11, PSv5.1 -nop)

PS C:\Users\User5> (ConvertFrom-Json '{"data":"2025-05-19T16:35:42.000Z"}').data
2025-05-19T16:35:42.000Z
PS C:\Users\User5> (ConvertFrom-Json '{"data":"2025-05-19T16:35:42.000Z"}').data.GetType().FullName
System.String

457 名前:デフォルトの名無しさん mailto:sage [2025/05/21(水) 09:59:36.90 ID:2NJ41Wyd.net]
powershell5とpowershell7で動作が違うね
powershell7だと変換される

458 名前:デフォルトの名無しさん mailto:sage [2025/05/21(水) 17:10:41.92 ID:NEzFfeHM.net]
大半が5.1しか使わないから7の方が合わせろよって事

459 名前:デフォルトの名無しさん [2025/05/21(水) 18:50:19.37 ID:UAEUk5lE.net]
https://learn.microsoft.com/ja-jp/powershell/module/microsoft.powershell.utility/convertfrom-json?view=powershell-7.5#notes

PowerShell 6 以降、 ConvertTo-Json はタイムスタンプとして書式設定された文字列を DateTime 値に変換しようとします。

PowerShell 7.5 では、DateKind パラメーターが追加されました。これにより、タイムスタンプ文字列の変換方法を制御できます。 このパラメーターは、次の値を受け入れます。

460 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 00:10:17.72 ID:9HpiqCeZ.net]
powershell7っていつになったらOS標準搭載されるんだろう
スクリプト配れないから困るんだよね



461 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 11:26:30.59 ID:F3nFA9Ml.net]
配ればいいじゃん
7で動作確認してますって書いとけばいいだけ

462 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 11:45:12.25 ID:jKpO0eO6.net]
その小学生低学年みたいな書き込み必要か?

463 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 12:05:00.87 ID:KEAdRoBs.net]
いつになってもされないよ
Windowsのサポート期間と合わないから、標準で入れたところで結局塩漬けされて第二のPowerShell5になるだけ
そして最新のバージョンのPowerShellは今以上に誰も使わなくなる
.NET4.8のサポートが終了する頃にはとっくにPowerShellは開発終了してるだろうし、無理に移行させる理由がないんだよ

464 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 12:24:16.18 ID:uXNyGdUq.net]
OS標準搭載とか安定が必要なのはv5を使え、v7は破壊的変更を加えながら育ててくって棲み分けになってるから標準搭載はナイだろうなあ

465 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 18:03:39.76 ID:sjc0o4g2.net]
6以降はWindowsファーストでUNIXでも動くシェルとしてわりとユニークな立ち位置なのでそれなりに存在価値はあり、
MSスタックどっぷりな人間がAzureをはじめとしてクラウドでLinuxに触れざるを得ないときのハードルを下げるのに役立っている
Winのオンプレ鯖やPCのシェルとしては5までで終わり

466 名前:デフォルトの名無しさん mailto:sage [2025/06/24(火) 19:36:57.27 ID:ZrkIV361.net]
.NET Framework 4系(4.8.x)がWindowsに同梱され続ける限り、PowerShell 7.xが標準になることはなさそう
Unicodeの年次アプデがもう何年も反映されてなかったり、色々とキツいけど仕方ない

467 名前:デフォルトの名無しさん mailto:sage [2025/06/25(水) 00:38:29.01 ID:6PeRjodX.net]
powershellで攻めた使い方するくらいならpythonで書くよなぁ
インストール不要で動くという最大のメリットがない7系はpowershell好きにしか響かないと思う

468 名前:デフォルトの名無しさん mailto:sage [2025/06/25(水) 13:28:46.57 ID:zWuAHPd0.net]
>>467
逆にpowershell7をインストールしないメリットて何だ

469 名前:デフォルトの名無しさん mailto:sage [2025/06/25(水) 15:20:42.55 ID:TZWJXUbx.net]
Pythonをインストールしないメリットと似たようなもん

470 名前:デフォルトの名無しさん mailto:sage [2025/06/26(木) 17:27:15.49 ID:lOjfAOzg.net]
powershell 7 が読めない速さで(読めないのでキャプチャした)
”Creating implict remoting module ... [Getting command information from remote session ... 74 commands received 0s]”
とか黄色文字で一瞬表示するの止められないんだろうか
チラチラして鬱陶しい

implict remotingて何だと調べると互換性の無いモジュールを裏でpowershell 5 を起動して処理してるんだとか
Set-Location 程度でも発動する



471 名前:デフォルトの名無しさん mailto:sage [2025/06/28(土) 01:00:11.07 ID:UBYVDQZY.net]
昔数百万行の各個別コマンドをpowershellでスレッドプール実装して並列処理で捌いたことあったけどvscodeの拡張機能でのデバッグが無かったら諦めてたと思う
拡張機能のおかげで大分開発しやすくなった

472 名前:デフォルトの名無しさん [2025/06/28(土) 16:43:22.73 ID:uH6ba5rf.net]
>>471
なぜマルチスレッドの実装にこだわってマルチプロセスにしなかったのか?

スレッドのコントロールは面倒くさい。
互いのスレッドが干渉し合わないなら、別のプロセスとして実装すべき。

473 名前:デフォルトの名無しさん mailto:sage [2025/06/30(月) 14:31:10.94 ID:+52Dh5n7.net]
「Windows PowerShell 2.0」は非推奨、将来的に削除 〜Microsoftが改めて注意喚起
「Windows PowerShell 5.x」や「PowerShell 7.5」への移行を
https://forest.watch.impress.co.jp/docs/news/2026721.html

474 名前:デフォルトの名無しさん [2025/07/08(火) 11:07:44.40 ID:ub1Gvu25.net]
>>397
batの方が重大なミスしそうなんですがそれは

475 名前:デフォルトの名無しさん [2025/07/08(火) 11:08:23.57 ID:ub1Gvu25.net]
>>398
っぱpwsh on linuxよ

476 名前:デフォルトの名無しさん mailto:sage [2025/07/08(火) 11:16:15.29 ID:jxaCuQsN.net]
>>474
よく読め

477 名前:デフォルトの名無しさん [2025/07/08(火) 11:16:26.31 ID:ub1Gvu25.net]
>>466
何時までも4,5系に留まるってことは無いと思うけどね
実際2からアップグレードされてきた訳だし
.NET Frameworkとの差異は比較的大きいにせよ
>>473の件もあるしそのうちプリインされるだろCore版が
なお6か7かはたまたまだ見ぬ8かは知らんけど

478 名前:デフォルトの名無しさん [2025/07/09(水) 05:32:28.94 ID:aeqwBJS6.net]
powershellの日本語ドキュメント、chatGPTに翻訳させたらもっとマトモにならんかなあ…

479 名前:デフォルトの名無しさん [2025/07/09(水) 05:34:55.69 ID:aeqwBJS6.net]
6もしぱらくバグまみれだったし7もバグどんどん見つかっていったし、最新がプリイン入る事は無いと思うな
多分最新の1つ前の最終マイナーバージョン、すなわちもし今なら6の最終バージョンじゃね

480 名前:デフォルトの名無しさん mailto:sage [2025/07/09(水) 06:17:43.31 ID:b3V2Axv4.net]
.NET Frameworkと違って.NET5以降がOSに同梱はないでしょ
MS的に推奨かは知らんが関連するライブラリを標準モジュール含めて全部同梱配布が.NET系アプリのスタンダードになってるし今は

だったらロードさせることのないdllをOS標準で入れる意味も無いし未来永劫Powershell6以降は来ないって半分諦めてるけどね



481 名前:デフォルトの名無しさん mailto:sage [2025/07/09(水) 17:36:33.28 ID:ohpjpVt+.net]
本日はご多忙の中、協力関係者様にお集まりいただきありがとうございます。
powershellは無事5.1で完結いたしました。
powershell第一部・完
6以降はまた別のお話とさせていただきます。
こんな感じ

482 名前:デフォルトの名無しさん mailto:sage [2025/07/10(木) 00:21:06.24 ID:z96em9yx.net]
ps1の1は当時はバージョン名の想定じゃなかったっけ

483 名前:デフォルトの名無しさん mailto:sage [2025/07/10(木) 07:27:18.57 ID:qajreXxd.net]
>>482
バージョンを表しているのは間違いない
ただ言語のメジャーバージョンとファイルフォーマットの互換性を表すバージョンは必ずしも一致しないって扱いなので、もし次に拡張子が変わるときが来るなら.ps2になる
https://devblogs.microsoft.com/powershell/ctp-versioning/
Excelを例に取ると97、2007でそれぞれ内部形式が変わっていて、2007では拡張子も変わっているので、いうなれば.xlsxは.xl3に相当するイメージ(5.0以前は無視した場合)
.ps1は最初はバージョンごとに毎回数字を変えるつもりだったけどやめたって説が巷で主流だけど、コレは公式のソースが見つからなかった

484 名前:デフォルトの名無しさん mailto:sage [2025/07/10(木) 11:15:28.70 ID:DIIl0KYX.net]
microsoftは妙に互換性にこだわるから
拡張子.ps1はpowershellがどんなバージョンになっても変わらないよ
今は拡張子に「バージョンの番号が含まれてます」っていう意味すら意味をなくしていて
ただ単に「.ps1はpowershellスクリプトの拡張子です」ってだけの意味でしかないから
今さら拡張子を新しくするメリットが無い

485 名前:デフォルトの名無しさん mailto:sage [2025/07/10(木) 11:20:06.12 ID:DIIl0KYX.net]
>>484
と思ったけどバージョン5とそれ以降では互換性に問題のある事が多かったなw
そういう誤実行を防止する目的で拡張子を変えるメリットあるかなぁ

486 名前:デフォルトの名無しさん mailto:sage [2025/07/10(木) 11:55:28.72 ID:nn3AKhN3.net]
もうexeにすればいいんじゃねえかな
powershellで作ったかどうかすら判らんし

487 名前:デフォルトの名無しさん mailto:sage [2025/07/11(金) 21:41:14.58 ID:UFItDSPS.net]
https://devblogs.microsoft.com/powershell/ctp-versioning/

PowerShell Scripts continue to use “.PS1”.

We will continue to pursue this approach until there is a major change in the CLR or .NET frameworks which force us to go side-by-side. It is at that point that we’ll go from .PS1 to .PS2 . Until then we will stay with .PS1 and everything that runs today will continue to run in new releases.

488 名前:デフォルトの名無しさん mailto:sage [2025/07/12(土) 15:57:57.17 ID:KKY9VgUr.net]
記事の日付は2007年やぞ

489 名前:デフォルトの名無しさん mailto:sage [2025/07/14(月) 21:23:18.49 ID:54I3beLE.net]
PowerShell6で拡張子を変えなかった時点で
この先も.ps1のままなのはほぼ確定だよね

490 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 01:51:30.33 ID:kwekYfOc.net]
俺たちのJeffrey Snoverはもういない、いないんだ…



491 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 14:43:34.46 ID:iicdRBcv.net]
コマンドプロンプト使ってる人はたくさんいるけど
powershell使ってる人ここ10年で一度も見たこと無い

492 名前:デフォルトの名無しさん [2025/07/15(火) 17:26:35.63 ID:J6nh+lbb.net]
>>491
コンソール(の外観)のハナシ?

493 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 17:58:06.00 ID:eVgbUR/v.net]
俺も、以下の1行をバッチファイル内に記述して実行する程度の事しかやってないな。

powershell.exe -command ("Write-EventLog -LogName Application -EntryType Information -Source 'WSH' -EventID 0 -Message '(%~f0)_Windows Updateの画面を起動します。'") && start "" ms-settings:windowsupdate

※注1:
Windows7以降で標準搭載されているPowerShell(バージョン2.0以降)で使用可能な「Write-EventLog」コマンドレットは、バージョン6.0以降には搭載されてない。
だがバージョン2.0~5.1いずれかとの互換性が保持されている環境(「$PSVersionTable」変数内の「PSCompatibleVersions」プロパティを参照すれば確認可能)では問題ない。

※注2:
「ms-settings:windowsupdate」コマンドはWindows10~11のみで使用可。

494 名前:デフォルトの名無しさん [2025/07/15(火) 17:58:26.26 ID:onP4ElKb.net]
Terminalに移行したら分からなくなっちゃったか

495 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 18:07:10.16 ID:yseOir/R.net]
気軽にスクリプト実行できないから使い道がない

496 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 20:54:02.36 ID:1cN94XmW.net]
本気で言ってるのか

497 名前:デフォルトの名無しさん mailto:sage [2025/07/15(火) 21:58:24.95 ID:ZcYliqlC.net]
弊社はIT企業じゃないし、勝手にPythonを入れたりするとたぶん怒られるので
Windowsに最初から入ってるPowerShellを便利に使ってました
たまに、起動用のbatファイルとPowerShellスクリプトをセットにして同僚に渡すこともありました

498 名前:デフォルトの名無しさん mailto:sage [2025/07/16(水) 08:58:08.06 ID:83bEnGjZ.net]
いい加減ペイント3DみたいにPowerShellのアプローチは失敗でしたと認めちゃばいいのに(´・ω・`)

499 名前:デフォルトの名無しさん mailto:sage [2025/07/16(水) 12:43:16.16 ID:09DhhKQk.net]
もうログインスクリプトにも使われてるから
Windowsの終焉まで逃げ出せないよ

500 名前:デフォルトの名無しさん mailto:sage [2025/07/16(水) 22:06:02.34 ID:5d/ixC+9.net]
PowerShellのどのアプローチが失敗なのか具体的に



501 名前:デフォルトの名無しさん mailto:sage [2025/07/16(水) 23:17:35.03 ID:7/+dohrQ.net]
起動用のbatが必要になっちゃうってのがな
PowerShell単独では使いにくい

502 名前:デフォルトの名無しさん mailto:sage [2025/07/16(水) 23:57:41.77 ID:YcDGevHy.net]
ん?どういうこと?

503 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 00:10:22.13 ID:sGHKyXGW.net]
ダブルクリック実行できるようにするために手間がかかる

504 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 00:22:02.88 ID:Nf2HlQRn.net]
正直言ってexecutionpolicyの初期値は大失敗だろうなぁ
結局.batか.cmd経由でダブルクリック起動できるんだからマジで無意味
ネットから落としたファイルはzoneidがあるから設定に関係なく警告でるんだし

あとcmdもPowershellもWindowsのオマケであることに価値があるのにPowershell5.1までしか同梱されてないし

505 名前:デフォルトの名無しさん [2025/07/17(木) 07:33:01.42 ID:1VTmgFuN.net]
もう直接powershell.exeに関連付けしてる

506 名前:デフォルトの名無しさん [2025/07/17(木) 08:05:58.12 ID:9jYPg0KZ.net]
>>482
それはバージョン1として普及させただけ。

いまとなってはバージョンを表してはいない。

507 名前:デフォルトの名無しさん [2025/07/17(木) 08:06:51.20 ID:9jYPg0KZ.net]
>>486
それはWindowsしか知らない人間の発想

508 名前:デフォルトの名無しさん [2025/07/17(木) 08:08:24.36 ID:9jYPg0KZ.net]
>>491
Windowsはターミナルというアプリで統合された。

PowerShellはコマンドプロンプトも含めているので、あなたが気づいていないだけ。

509 名前:デフォルトの名無しさん [2025/07/17(木) 08:09:59.60 ID:9jYPg0KZ.net]
>>495
実行形式にする必要がない。UNIX、Linuxは実行形式ファイルを嫌う。

ブラックボックス化はやめろ!

510 名前:デフォルトの名無しさん [2025/07/17(木) 08:11:35.61 ID:9jYPg0KZ.net]
>>501
バッチファイルにする必要もないよ?
バッチファイルなどでラッピングするのはWindowsの使い方のひとつでしかない。



511 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 09:38:35.80 ID:+XuQIino.net]
>>506-510
全部元発言者を意図を読み取れてない馬鹿のレス
UNIX使いの印象を悪くするだけなのでやめてくれ

512 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 12:08:51.21 ID:uGnrWKuf.net]
powershellは小数点以下のバージョンアップでも毎回互換性を壊す
破壊的変更を入れてくるから普及させる気無いんじゃね

513 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 12:30:14.69 ID:l8YWhCPU.net]
実際、6以降は普及させる気無いと思うよ
Azure関連を中心にMS社内で使うために開発続けてるだけでしょ

514 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 21:54:18.35 ID:yTEYa8cJ.net]
PowerShellが失敗作じゃないと困る人がいるのは分かった

515 名前:デフォルトの名無しさん mailto:sage [2025/07/17(木) 22:59:18.52 ID:o0/3IwZx.net]
PowerShell自体の出来はともかく、6以降は周辺環境がね
PowerShellは.NETがWindowsの中核として位置付けられていた頃に設計されており、
システムワイドにインストールされた.NETに安定的に依存できることが大前提なのよ
知っての通りその前提は完全に覆されてしまい、存在意義を失おうとしている

516 名前:デフォルトの名無しさん mailto:sage [2025/07/18(金) 01:15:27.61 ID:T97Bau37.net]
知っての通りどころか.net frameworkは今もWindowsと一蓮托生だけど
.netと.net frameworkを分けて書かないと意味不明な文章が出来上がる

517 名前:デフォルトの名無しさん mailto:sage [2025/07/18(金) 22:16:02.55 ID:avd6O0J8.net]
Windows以外で.Netで作られたアプリやサービスなんてあんの?

518 名前:デフォルトの名無しさん mailto:sage [2025/07/18(金) 22:17:51.22 ID:r2egjf+1.net]
pythonで良くない?駄目?

519 名前:デフォルトの名無しさん mailto:sage [2025/07/19(土) 02:03:44.93 ID:QndlLNYI.net]
pwsh.exe

520 名前:デフォルトの名無しさん [2025/07/19(土) 08:55:57.75 ID:jBcCcJ6x.net]
>>518
Pythonがそこまで言い言語だとは思わないので



521 名前:デフォルトの名無しさん mailto:sage [2025/07/19(土) 10:16:02.54 ID:F2LZk1nd.net]
>>517
ゲームエンジンのUnity

522 名前:デフォルトの名無しさん mailto:sage [2025/07/19(土) 19:43:58.62 ID:PVxrNHN1.net]
>>517
GitHub Actions

523 名前:デフォルトの名無しさん mailto:sage [2025/07/20(日) 10:33:30.33 ID:8UONs9WI.net]
>>515は、元はシステム全体でひとつの.NETフレームワークを使ってPowerShellをCOMに対するWSHポジにするつもりだった、という意味だろうけど
.NETフレームワーク自体最初から複数バージョンを共存させる設計になってるので、果たしてそのような構想はあったのだろうか

524 名前:デフォルトの名無しさん mailto:sage [2025/07/20(日) 11:36:14.91 ID:nDfpIeCg.net]
>>523
5以前のPowerShellはサイドバイサイドに対応していないから、使用される.NET Frameworkは結局一つだけ

525 名前:デフォルトの名無しさん mailto:sage [2025/07/24(木) 02:44:32.63 ID:uw32EQ1Q.net]
>>523
> .NETフレームワーク自体最初から複数バージョンを共存させる設計になってるので、果たしてそのような構想はあったのだろうか
.net frameworkはそんな設計じゃないぞ…

526 名前:デフォルトの名無しさん [2025/07/24(木) 18:49:30.39 ID:bvlLnJ99.net]
コマンドレットを作ったが中途半端で.NET Frameworkを呼び出せばいいということにしたが、これではPowerShellを作った意味がないとしてPowerShellを拡張していまの混乱状態に至る。

527 名前:デフォルトの名無しさん mailto:sage [2025/07/24(木) 20:21:14.09 ID:3SMUfFNx.net]
PowerShell独自の構文や機能はいらん .Net実行できる部分だけでいい
C#Scriptがほしい

528 名前:デフォルトの名無しさん mailto:sage [2025/07/24(木) 21:28:50.84 ID:Ii6lkj2E.net]
C#コードを単一ファイルでスクリプトのように書ける言語機能が「.NET 10」でテスト中
従来のプロジェクトベースへの変換も簡単
https://forest.watch.impress.co.jp/docs/news/2018094.html

529 名前:デフォルトの名無しさん mailto:sage [2025/07/24(木) 22:28:33.22 ID:qxgm8L3v.net]
powershellのAdd-Typeを使えばC#を実行出来るらしいが

530 名前:デフォルトの名無しさん [2025/07/26(土) 11:52:54.27 ID:VPjMt5X4.net]
Add-TypeのC#は、Windows API使いたい時、局所的に処理速度を上げたい時によく使う。



531 名前:デフォルトの名無しさん mailto:sage [2025/07/26(土) 19:50:25.05 ID:kldGNMpl.net]
ぜんぜん分からないんですけどAdd-TypeでC#を書くのって
インテリセンスが効かなそうで、ちょっとしんどそうなんですけど
そうでもないんですか

532 名前:デフォルトの名無しさん mailto:sage [2025/07/26(土) 20:51:36.43 ID:eh3q3MEs.net]
PowerShellで使う程度のものなら余裕でバイブコーディングでいけるからどうでもいい

533 名前:デフォルトの名無しさん mailto:sage [2025/07/26(土) 22:09:50.67 ID:kldGNMpl.net]
なるほど

534 名前:デフォルトの名無しさん mailto:sage [2025/07/27(日) 01:39:44.77 ID:sXx2dSLi.net]
もっとc#に近い記法にしてほしかったのになんでそうならなかったんだろう
配列の宣言とかセミコロンがないとか

535 名前:デフォルトの名無しさん mailto:sage [2025/07/27(日) 05:42:54.86 ID:L6p6i+Me.net]
クラスはほぼC#だけど

536 名前:デフォルトの名無しさん mailto:sage [2025/07/27(日) 08:16:33.47 ID:/sb9ajQY.net]
PowerShellは名前の通りシェルだからな
単なるスクリプト言語が欲しいだけならWSH.NET的なものを作ってる

537 名前:デフォルトの名無しさん mailto:sage [2025/07/27(日) 09:15:11.85 ID:zaK1ilRt.net]
今のMSだったらRustあたりで作ったWindows CLIで一通りの管理タスクを一貫したコマンド体系でやれるようにした上で、
スクリプトはbashでもPythonでも何でも好きなの使えみたいにしてるだろうね
今となってはPowerShellはバルマー時代の古き悪きMSを象徴する遺産の一つ

538 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 09:16:16.29 ID:BMbzFeOA.net]
最初はbashの採用を検討してたけどWindowsには向かないって分かったからわざわざPowerShellを作ったんだが

https://x.com/jsnover/status/976904848162435072

539 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 10:39:54.16 ID:dloezDzP.net]
>>538
その理由はファイル指向のUNIXと違ってWindowsはAPI指向だからとJeffreyは述べてるんだけど、
一方でUNIX的なシェルで扱うのに適したCLIコマンドを整備するという方向もありえて、
実際MSがPowerShellにベットする以前はWMICのようにラッパーとしてCLIコマンドを整備していく方針だったんだよ
ただ、その方向で進む限りWindows上でのコマンドラインシェルは特殊なラッパーに依存することになり、決してWindowsスタックにおける主流になり得ない
そこで当時Windowsの新たな中核技術として喧伝されていた.NETプラットフォームに乗ることで、
MS社内にサービスしつつ一気にWindowsでのコマンドラインシェルを主流に押し上げようとしたわけだね
で現状はというと、肝心の.NETが主流から外されちゃって、PowerShellは一般のアプリの一つになっちゃいました(いまここ

540 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 11:02:51.49 ID:dloezDzP.net]
あと、現状について周辺の情勢も踏まえると、CLIを使ってAPI指向のプラットフォームを管理するスタイルはPowerShell 初期開発の当時と比較して遥かに市民権を得ているといえる
それはひとえにクラウドによるもので、現在ではクラウドプラットフォームのAPIをCLIを使って操作することは普通に行われており、しかもその多くはJeffreyの懸念に反して旧来のUNIXシェルを使用している
この現状を踏まえて今Windowsのコマンドライン管理を再考するとすれば、PowerShellのようなものが生まれる可能性は低いといえる



541 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 17:29:52.01 ID:CQsGHQXP.net]
Windowsは(少なくともOLE〜.NET全盛期の頃のWindowsは)APIもオブジェクト指向する方向性だったので
それを操作するスクリプト言語もCOMオブジェクトや.NETオブジェクトを長期保持できなければいけない
単発で終了するCLIコマンドを揃えてもだめだろう

542 名前:デフォルトの名無しさん [2025/07/28(月) 19:14:24.95 ID:7Fge/X80.net]
おっさんエンジニアが全然使わないから無理だわ

543 名前:デフォルトの名無しさん [2025/07/28(月) 19:32:06.85 ID:K95kqw+R.net]
>>528
それだとVBScriptの二の舞

544 名前:デフォルトの名無しさん [2025/07/28(月) 19:33:30.80 ID:K95kqw+R.net]
>>534
そこがマイクロソフトの変なところ
いろんなプログラミング言語を研究して最良のものを作ったというのが当初の売り文句だった

545 名前:デフォルトの名無しさん [2025/07/28(月) 19:34:24.66 ID:K95kqw+R.net]
>>538
それはプライドが許さなかっただけ

546 名前:デフォルトの名無しさん [2025/07/28(月) 19:35:04.74 ID:K95kqw+R.net]
>>538
グーグルおじさんじゃねえか

547 名前:デフォルトの名無しさん [2025/07/28(月) 19:37:29.63 ID:K95kqw+R.net]
>>541
WindowsはWindows SDK開発がC言語でもC++でもいいというところから始まったせいで、形だけオブジェクト指向のC++が基本になってしまった。

548 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 20:23:32.91 ID:0zFGFjxD.net]
後発だからいろんな言語を参考にできるという強みがある一方で
Windowsのシェルスクリプトという世界最大級のしがらみのもと
あらゆるステークホルダーが全方位から好き勝手なことを言い
無数の歴史的経緯を踏まえつつデザインしないといけない無理ゲーなプロジェクト
変なクセが多い言語だけど苦労が偲ばれるからあまり文句を言う気にはなれない

549 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 20:35:24.51 ID:n+5V5/p3.net]
CとB-Shellが混じったような半端な記法

550 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 21:11:45.32 ID:s3rviGhL.net]
今なら普通にTypeScriptになるだろうね



551 名前:デフォルトの名無しさん mailto:sage [2025/07/28(月) 21:57:11.64 ID:pEErs1kG.net]
bat埋込み技法とAdd-Typeでcsスクリプト化したった
スクリプトのくせに起動が遅いのが不満

552 名前:デフォルトの名無しさん mailto:sage [2025/07/29(火) 08:49:01.81 ID:zbO0uIbs.net]
パイプにバイナリが流せるようになったPowerShell 7.4 からは使える子になった






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<192KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef