最近の.NETは言語非依存を放棄してるからな
例えばSpanはPowerShellから使えない
Question about System.Span
https://github.com/PowerShell/PowerShell/issues/5897
探検
PowerShell -Part 7
642デフォルトの名無しさん
2025/11/09(日) 09:43:41.33ID:9rrS+2ZK643デフォルトの名無しさん
2025/11/09(日) 10:23:37.05ID:VPZLG56/ .NET Frameworkって書いてあるからCore系の.NETは関係ないでしょ。Core系もサポートの方針は同じだろうけど。
PowerShell6以降のユーザーなんて5に比べりゃほとんどいないだろうし、
わざわざ6以降使ってる人はそんなに変な問い合わせしてこないだろうからサポート的にはあまり問題にならないんだろう
PowerShell6以降のユーザーなんて5に比べりゃほとんどいないだろうし、
わざわざ6以降使ってる人はそんなに変な問い合わせしてこないだろうからサポート的にはあまり問題にならないんだろう
644デフォルトの名無しさん
2025/11/18(火) 00:02:06.52ID:mC1Jcub0 c#14でファイルベースでスクリプトライクに書けるようになった
もうpowershellはオワコン!
もうpowershellはオワコン!
645デフォルトの名無しさん
2025/11/18(火) 17:30:44.99ID:d9hs+rsN それパイプは直感的に書けるか?
646デフォルトの名無しさん
2025/11/20(木) 16:43:19.74ID:11rVJeas 5ってまだ共存してるの?UTF8BOMの問題があるのでcmdでも使えばいい気がするが
647デフォルトの名無しさん
2025/11/20(木) 17:49:39.55ID:UDbnkgrO PowerShellは速度も使い勝手もこのbatに勝てなかった
@echo off
%windir%\Microsoft.NET\Framework64\v4.0.30319\csc.exe /nologo %1
if errorlevel 1 exit /b
"%~dpn1.exe"
@echo off
%windir%\Microsoft.NET\Framework64\v4.0.30319\csc.exe /nologo %1
if errorlevel 1 exit /b
"%~dpn1.exe"
648デフォルトの名無しさん
2025/11/20(木) 21:31:44.69ID:QY1RnXH9 C#はPowerShellみたいにWMIを簡単に扱えないじゃん
WMI インスタンスの取得
https://learn.microsoft.com/ja-jp/windows/win32/wmisdk/retrieving-an-instance
WMI インスタンスの取得
https://learn.microsoft.com/ja-jp/windows/win32/wmisdk/retrieving-an-instance
649デフォルトの名無しさん
2025/11/21(金) 09:24:25.92ID:+qc1E8Ol 比較
OS標準だとC#は古いやり方しかできなそう
<PowerShell>
Get-WmiObject -query "SELECT * FROM Win32_Process" | ForEach-Object {
$name = $_.Name
$id = $_.ProcessId
. . .
}
<C#>
foreach (var p in new System.Management.ManagementObjectSearcher("SELECT * FROM Win32_Process").Get())
{
var name = p["Name"];
var id = p["ProcessId"];
. . .
}
OS標準だとC#は古いやり方しかできなそう
<PowerShell>
Get-WmiObject -query "SELECT * FROM Win32_Process" | ForEach-Object {
$name = $_.Name
$id = $_.ProcessId
. . .
}
<C#>
foreach (var p in new System.Management.ManagementObjectSearcher("SELECT * FROM Win32_Process").Get())
{
var name = p["Name"];
var id = p["ProcessId"];
. . .
}
650デフォルトの名無しさん
2025/11/21(金) 10:03:57.43ID:3+xXClvM >>640
最初は分けて書いてるがそれ以降のPowershellが
Windows 付かない方のPowershell 限定なのか
Windows 付く方も含めてなのかよくわからない
>>641
無印 は.Net Framework 向けでないという表現なのか
無印も.Net Frameworkだめというのかどっちなのか
.NET Framework上で動くのがWindows Powershell
3.5.1(まだある) + 2(廃止)
4.8.1 + 5.1 現行のプリインストール
.NET 上で動くのがPowershell
core2or3 + 6-7.0
5.0 + 7.1 以降
やはり改めて確認しないとわからない
なんで分かりやすい別の名前にしなかったのか
最初は分けて書いてるがそれ以降のPowershellが
Windows 付かない方のPowershell 限定なのか
Windows 付く方も含めてなのかよくわからない
>>641
無印 は.Net Framework 向けでないという表現なのか
無印も.Net Frameworkだめというのかどっちなのか
.NET Framework上で動くのがWindows Powershell
3.5.1(まだある) + 2(廃止)
4.8.1 + 5.1 現行のプリインストール
.NET 上で動くのがPowershell
core2or3 + 6-7.0
5.0 + 7.1 以降
やはり改めて確認しないとわからない
なんで分かりやすい別の名前にしなかったのか
651デフォルトの名無しさん
2025/11/22(土) 10:00:08.95ID:X6U8TT// WMIって非推奨なんだっけ
普通に業務で使ってるけど
普通に業務で使ってるけど
652デフォルトの名無しさん
2025/11/22(土) 15:21:40.53ID:LaYCYKWP Windows クライアントの非推奨の機能
https://learn.microsoft.com/ja-jp/windows/whats-new/deprecated-features
WMIC ユーティリティは非推奨となり、今後の Windows リリースで削除される予定です。 このユーティリティは、WMI のWindows PowerShellに置き換えられます。 この非推奨は、 コマンド ライン管理ユーティリティにのみ適用されます。 WMI 自体は影響を受けません。
https://learn.microsoft.com/ja-jp/windows/whats-new/deprecated-features
WMIC ユーティリティは非推奨となり、今後の Windows リリースで削除される予定です。 このユーティリティは、WMI のWindows PowerShellに置き換えられます。 この非推奨は、 コマンド ライン管理ユーティリティにのみ適用されます。 WMI 自体は影響を受けません。
653デフォルトの名無しさん
2025/11/22(土) 19:36:43.52ID:F8YvH3R6 wmiなくなる話はないが使い方変わってる
Powershell 6以降WMI v1コマンドレット無い
今のところWindows Powershell 無くす話はないが
書き直すならPowershell でCIM (WMI v2)コマンドレットにしておいた方が無難?
https://learn.microsoft.com/ja-jp/powershell/scripting/whats-new/differences-from-windows-powershell?view=powershell-7.5#wmi-v1-cmdlets
Powershell 6以降WMI v1コマンドレット無い
今のところWindows Powershell 無くす話はないが
書き直すならPowershell でCIM (WMI v2)コマンドレットにしておいた方が無難?
https://learn.microsoft.com/ja-jp/powershell/scripting/whats-new/differences-from-windows-powershell?view=powershell-7.5#wmi-v1-cmdlets
654デフォルトの名無しさん
2025/11/26(水) 15:45:38.37ID:0sOrUy4b PowerShell のプログラムで時々見かける
if ( hoge ) {
hogehoge
}
else {
fugafuga
}
みたいな
elseのところを2行に書く書き方が気持ち悪いし
PowerShell にコピペでインタプリタ的に実行させると閉じ括弧で構文が終わったと判断されて実行されちゃう
(さらに外側に括弧があれば構文として成り立つけど)
if ( hoge ) {
hogehoge
}
else {
fugafuga
}
みたいな
elseのところを2行に書く書き方が気持ち悪いし
PowerShell にコピペでインタプリタ的に実行させると閉じ括弧で構文が終わったと判断されて実行されちゃう
(さらに外側に括弧があれば構文として成り立つけど)
655デフォルトの名無しさん
2025/11/27(木) 10:58:01.72ID:iSxBbXck オレは気持ち悪いと思ったことない
言語特有の文法とか個人個人の書き方とか色々あるし
それで別にいいじゃんって思ってる
仕事でプログラムやスクリプト使ってる人たちは
その職場のルールもあるだろうけど
素直に従っておけばいいだけ
改良の余地があるなら進言するだけだし
言語特有の文法とか個人個人の書き方とか色々あるし
それで別にいいじゃんって思ってる
仕事でプログラムやスクリプト使ってる人たちは
その職場のルールもあるだろうけど
素直に従っておけばいいだけ
改良の余地があるなら進言するだけだし
656デフォルトの名無しさん
2025/11/27(木) 12:30:08.06ID:Z/DnqSSi 普通じゃないし普通に気持ち悪いだろ
657デフォルトの名無しさん
2025/11/27(木) 12:58:20.26ID:tq5aNNAF ベストプラクティスにはそこまで細かい規約なかった
https://learn.microsoft.com/en-us/powershell/scripting/developer/cmdlet/strongly-encouraged-development-guidelines
C#、明示されてないがサンプルは三行
これに準じると閉じてエンターで走る
https://learn.microsoft.com/ja-jp/dotnet/csharp/fundamentals/coding-style/coding-conventions
https://learn.microsoft.com/en-us/powershell/scripting/developer/cmdlet/strongly-encouraged-development-guidelines
C#、明示されてないがサンプルは三行
これに準じると閉じてエンターで走る
https://learn.microsoft.com/ja-jp/dotnet/csharp/fundamentals/coding-style/coding-conventions
658デフォルトの名無しさん
2025/11/27(木) 15:27:32.59ID:Z/DnqSSi 普通(既存宗教):
} else {
または
}
else
{
奇形(新興宗教):
}
else {
} else {
または
}
else
{
奇形(新興宗教):
}
else {
659デフォルトの名無しさん
2025/11/27(木) 15:30:06.19ID:Z/DnqSSi660デフォルトの名無しさん
2025/11/27(木) 15:39:55.59ID:o+yFQZuV661デフォルトの名無しさん
2025/11/27(木) 16:35:40.04ID:/I+q4k2H powershell民なら
} else
と書いておく
こうすると解釈が延長するわけでelse節が無ければ次行で
{}
と書いて終わらすこともできる
これはpowershell民に限らず行志向言語の常識的イディオム
} else
と書いておく
こうすると解釈が延長するわけでelse節が無ければ次行で
{}
と書いて終わらすこともできる
これはpowershell民に限らず行志向言語の常識的イディオム
662デフォルトの名無しさん
2025/11/27(木) 16:51:14.83ID:o+yFQZuV663デフォルトの名無しさん
2025/11/27(木) 16:53:53.08ID:o+yFQZuV ああ、インタープリタ的な使い方ってことか
664デフォルトの名無しさん
2025/11/27(木) 16:58:55.38ID:o+yFQZuV ならとりあえず
} else {
と書いておくほうが良い気がする
} else {
と書いておくほうが良い気がする
665デフォルトの名無しさん
2025/11/27(木) 21:48:18.93ID:L4seW1+I elseは使わないようにする
666デフォルトの名無しさん
2025/11/27(木) 23:03:58.47ID:0ZpriLCv 5.xは三項演算子がないので他の言語よりelseを使う機会が多くなりがち
667デフォルトの名無しさん
2025/11/28(金) 10:07:39.92ID:YEOTrRQk Weekend Scripter: Best Practices for PowerShell Scripting in Shared Environment
https://devblogs.microsoft.com/scripting/weekend-scripter-best-practices-for-powershell-scripting-in-shared-environment/#use-consistent-indentation
PowerShellのコーディングスタイル
https://tech.guitarrapc.com/entry/2017/12/03/230119
https://devblogs.microsoft.com/scripting/weekend-scripter-best-practices-for-powershell-scripting-in-shared-environment/#use-consistent-indentation
PowerShellのコーディングスタイル
https://tech.guitarrapc.com/entry/2017/12/03/230119
668デフォルトの名無しさん
2025/11/28(金) 10:46:55.41ID:XwmNjHGj669デフォルトの名無しさん
2025/11/28(金) 11:06:29.89ID:mxO2kQAk if 真ならelse の中いかないし
if 偽ならelse の中やりたいし
else 閉じて走るのがまずい状況がすぐに思い浮かばない
if 偽ならelse の中やりたいし
else 閉じて走るのがまずい状況がすぐに思い浮かばない
670デフォルトの名無しさん
2025/11/28(金) 15:12:40.52ID:XwmNjHGj これだけアチコチで使われてるとなると新興宗教とは言えない雰囲気
671デフォルトの名無しさん
2025/11/28(金) 20:46:10.65ID:24RBB+24 なんにしろ行志向言語で中括弧を採用すること自体が悪手だったのは間違いない
672デフォルトの名無しさん
2025/11/28(金) 21:20:01.11ID:8z0qQ195 >>667
Stroupstrupって構文スタイルなのか…
しかもちゃんと「式解釈では問題ありませんが、PowerShellにはった時elseでエラーがでます。」って説明まで書いてる
いや、なんでこれが多いんだよ
意味わかんねぇよ…
Stroupstrupって構文スタイルなのか…
しかもちゃんと「式解釈では問題ありませんが、PowerShellにはった時elseでエラーがでます。」って説明まで書いてる
いや、なんでこれが多いんだよ
意味わかんねぇよ…
673デフォルトの名無しさん
2025/11/28(金) 21:59:10.04ID:YEOTrRQk https://ja.wikipedia.org/wiki/字下げスタイル
ストロヴストルップ・スタイルはビャーネ・ストロヴストルップがC++で使ったK&Rスタイルで、ストラウストラップのプログラミング入門 C++によるプログラミングの原則と実践やThe C++ Programming Languageといった彼の著書で使われている。
前述のスタイルと異なり、cuddled else (elseの前後に}と{を置くスタイル) を使わない。したがってストロヴストルップ式では次のようになる。
if (x < 0) {
puts("Negative");
negative(x);
}
else {
puts("Non-negative");
nonnegative(x);
}
ストロヴストルップ・スタイルはビャーネ・ストロヴストルップがC++で使ったK&Rスタイルで、ストラウストラップのプログラミング入門 C++によるプログラミングの原則と実践やThe C++ Programming Languageといった彼の著書で使われている。
前述のスタイルと異なり、cuddled else (elseの前後に}と{を置くスタイル) を使わない。したがってストロヴストルップ式では次のようになる。
if (x < 0) {
puts("Negative");
negative(x);
}
else {
puts("Non-negative");
nonnegative(x);
}
674デフォルトの名無しさん
2025/11/28(金) 22:18:41.05ID:HY2syTcn 誰だよスッポスッポ先生のことふざけた空耳日本語で呼ぶジャップは・・・
675デフォルトの名無しさん
2025/11/28(金) 23:42:10.29ID:8z0qQ195 else の後ろに括弧置いてるじゃん…
あ、いやそういう事じゃなくて不都合が発生しうる可能性があるスタイルをわざわざ使うってPowerShellにおいてはバカでしかないと思うって話
自分が良ければそれでいいって事?
少なくともインターネッツに載せるなら可能性が考慮されてなくてダメじゃね?
あ、いやそういう事じゃなくて不都合が発生しうる可能性があるスタイルをわざわざ使うってPowerShellにおいてはバカでしかないと思うって話
自分が良ければそれでいいって事?
少なくともインターネッツに載せるなら可能性が考慮されてなくてダメじゃね?
676デフォルトの名無しさん
2025/11/29(土) 10:54:08.34ID:ABxtwAdA ある人が書いたpowershellで動くスクリプトの書き方が
別の人がpowershellで動かしてエラーが出るのは困るよね
っていう話なの?
別の人がpowershellで動かしてエラーが出るのは困るよね
っていう話なの?
677デフォルトの名無しさん
2025/11/29(土) 12:36:08.79ID:RVWnFQqp スタイルだからそれぞれ拘りがあるってだけだろ
そのスタイルで統一されてれば問題ない
そのスタイルで統一されてれば問題ない
678デフォルトの名無しさん
2025/11/29(土) 14:43:58.37ID:nY8K5zGd 良いスタイル悪いスタイルがあるのになぜか悪いスタイルが流行ってるって話だろ
そもそもスタイルが分かれるような構文を採用したのがだめなんだけどな
そもそもスタイルが分かれるような構文を採用したのがだめなんだけどな
679デフォルトの名無しさん
2025/11/29(土) 15:48:53.71ID:RVWnFQqp おそらくC++から流れてきたんだろうと想像する
>>673にあるプログラミング入門 C++、The C++ Programming Languageが教科書になった人々
>>673にあるプログラミング入門 C++、The C++ Programming Languageが教科書になった人々
680デフォルトの名無しさん
2025/11/29(土) 16:28:37.98ID:m7OsZTNV C/C++のK&R派ではあるけど
文における{}
関数定義における{}
構造体/クラス宣言における{}
namespaceにおける{}
どれも扱いが違う
成形ツール使えばなんとでもなる
PowerShellなんてどうせ描き棄てだからどうでも良い
文における{}
関数定義における{}
構造体/クラス宣言における{}
namespaceにおける{}
どれも扱いが違う
成形ツール使えばなんとでもなる
PowerShellなんてどうせ描き棄てだからどうでも良い
681デフォルトの名無しさん
2025/11/29(土) 16:48:02.25ID:RvNmPLXk 例えば
先輩「PowerShell でこうやって IDE で書くこともできるけど普通に貼り付けて実行も1行ずつ実行する事もできる」
新人「ホントだ!ありがとうございます!」
新人「Windows標準で使えるし家でも勉強がてらやってみよう」
新人「うーん…よく分からない。検索するかぁ」
初心者向けWebサイト「(Stroupstrupスタイルで記述)」
新人「(貼り付けて)あれ?エラーが出る…よく分からない…」
みたいな話
初心者向けWebサイトはチームとかもないし誰が見るかも無いから、Stroupstrupスタイルは適していないってこと
ブログやQiitaとかならまぁええかとは思うし、チーム内で決めて使うならいいと思う
先輩「PowerShell でこうやって IDE で書くこともできるけど普通に貼り付けて実行も1行ずつ実行する事もできる」
新人「ホントだ!ありがとうございます!」
新人「Windows標準で使えるし家でも勉強がてらやってみよう」
新人「うーん…よく分からない。検索するかぁ」
初心者向けWebサイト「(Stroupstrupスタイルで記述)」
新人「(貼り付けて)あれ?エラーが出る…よく分からない…」
みたいな話
初心者向けWebサイトはチームとかもないし誰が見るかも無いから、Stroupstrupスタイルは適していないってこと
ブログやQiitaとかならまぁええかとは思うし、チーム内で決めて使うならいいと思う
682デフォルトの名無しさん
2025/11/29(土) 17:02:38.86ID:SvUt/JNW } をどんな構文でも常に行末としておき、if と else if を行頭に並べればブロックが対称的に見えるので美しく感じる
そんな理由があるという
けど全然共感できない
ifブロックが単に2つ続いているだけのパターンと、ifとelse ifが続いているパターンを取り違えるのは古典的なバグ
ならcuddled elseのほうがあえて相似形を崩して即座に峻別できるように喚起できるので合理的
そんな理由があるという
けど全然共感できない
ifブロックが単に2つ続いているだけのパターンと、ifとelse ifが続いているパターンを取り違えるのは古典的なバグ
ならcuddled elseのほうがあえて相似形を崩して即座に峻別できるように喚起できるので合理的
683デフォルトの名無しさん
2025/11/29(土) 18:21:27.95ID:UB7+qwb1 powershellなんて基本書き捨てだしスタイルなんて気にしたことない
vscodeのフォーマッタ任せ
vscodeのフォーマッタ任せ
684デフォルトの名無しさん
2025/11/29(土) 23:17:33.20ID:2Vwa6pZU 公式ドキュメントでも
}
else {
になってるな
about_If
https://learn.microsoft.com/ja-jp/powershell/module/microsoft.powershell.core/about/about_if
}
else {
になってるな
about_If
https://learn.microsoft.com/ja-jp/powershell/module/microsoft.powershell.core/about/about_if
685デフォルトの名無しさん
2025/11/30(日) 14:27:29.65ID:+PAfB5o2 }
else{
でしか理解出来ないってのは池沼
else{
でしか理解出来ないってのは池沼
レスを投稿する
ニュース
- 【芸能】「加害の歴史を直視しない政治家が国の顔に」 宍戸開の批判に議論勃! 高市発言で揺れる芸能界… [冬月記者★]
- 【日中対立】在日本中国大使館、サンフランシスコ講和条約「不法かつ無効な文書」とSNSに投稿 高市首相が党首討論で引用 ★2 [ぐれ★]
- 糖尿病疑い全国で1100万人、8年で100万人増…厚労省推計 [蚤の市★]
- 拳銃24丁を中国から日本国内に輸入した疑い 中国人の46歳の男逮捕 1丁約3000円で販売 [七波羅探題★]
- 【文春】AKB48『紅白歌合戦』出場へ! 前田敦子&大島優子が限定復活! 『ヘビロテ』など黄金期メドレー披露 神7の多くが出場 [冬月記者★]
- 【芸能】落合博満氏、『もし今の時代の選手だったらメジャーで活躍したか?』の質問に即答 会場どよめき [冬月記者★]
- 【悲報】日本政府、フランスに「習近平をG7に呼ばないで」と懇願していたwww [237216734]
- 【動画】普通の日本人「日本出身だと言うとこういうリアクションが来るw」 [394133584]
- 財務省の総務課長が現場に直接「改ざん」を指示したメールを次々と発見! 新たな開示で公文書は5万4000枚に【森友 [861717324]
- 【緊急】12月3日4時56分に>>78をゲットするスレ
- 高市を逐一擁護していたJSF、さすがに高市の「戦艦」発言に耐えきれず批判 ネトウヨ発狂へ [165981677]
- 【画像】女の子「きゃっ 転んでパンツ見えちゃうはずかしぃ」
