1 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 06:30:02.67 ID:pZYy6q7Y.net] 前スレ 【最強CUI】PowerShell -Part 1 echo.2ch.net/test/read.cgi/tech/1378978504/
139 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 09:50:09.89 ID:ffAutXm5.net] メモ帳やサクラエディタでc#やるのはキツいって話から一気に統合開発環境まで飛躍するんだ
140 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 10:30:07.25 ID:WQxeemkA.net] 最近はVisual Studio Codeで書いてる
141 名前:デフォルトの名無しさん [2017/06/25(日) 11:06:37.53 ID:wnVI7vr5.net] >>133 俺はきついなどと言ってないが?
142 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 12:55:56.29 ID:lpQuvt0E.net] 珍しく伸びてると見てみればバカが大暴れしてただけだったw
143 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 13:12:09.69 ID:fMxhTN4O.net] >>135 お前が誰かは知らんけど>>115 には気が狂うほどキツイらしいぞ
144 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 13:20:58.23 ID:WQxeemkA.net] >>132 Designer.csやResourceを全部手書きしたりしてんの?
145 名前:デフォルトの名無しさん [2017/06/25(日) 15:20:14.95 ID:wnVI7vr5.net] >>138 全否定しているわけではない。そもそも毎回いちから作らない。
146 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 16:46:11.14 ID:ffAutXm5.net] PowerShellユーザーのレベルってこんなものか
147 名前:デフォルトの名無しさん [2017/06/25(日) 17:16:04.58 ID:wnVI7vr5.net] >>140 コード書きに時間をさく、重要視しすぎるのは経験の少ないひとの特徴。
148 名前:デフォルトの名無しさん [2017/06/25(日) 17:21:05.34 ID:cBKwT0iz.net] >>140 ちょっとこっちのレベル見て来て 【.cmd】 バッチファイルスクリプト %12 【.bat】 mevius.2ch.net/test/read.cgi/tech/1489207631/
149 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 17:30:49.30 ID:fMxhTN4O.net] >>140 2chで判断するバカ乙
150 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 17:42:26.66 ID:ffAutXm5.net] ん〜この反応の良さwww
151 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:09:14.46 ID:yXb23ZWN.net] 使えるなら便利なものを使えばいいけど フリーソフトなんかインスコ出来ないんだろ notepadでも仕方ないじゃんか 別の(自由な)PCが使えるならソッチで書けばいい
152 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:17:09.04 ID:RuMg9Z/7.net] IIS、asp.netが有効化出来るんなら大分楽になりそうなんだけど
153 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:18:59.11 ID:7Ebwbe24.net] PowerShell ISEは使えないの?
154 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:28:34.48 ID:yXb23ZWN.net] 良く読んだら、Visual Studio無いってことは、コンパイル環境も無いってことか じゃあJDKはあるんだからJavaで作るのが現実的じゃないかな
155 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:30:37.67 ID:1WC2t8my.net] だからコンパイルしなくても.NET Frameworkは使えるし Powershell ISEはPowershellと一緒に入ってるだろって話だよ
156 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:37:08.45 ID:ffAutXm5.net] >>148 今はJDKがあるけど次もあるとは限らない Windowsにデフォルトで入ってるPowerShellでやるということに意味がある
157 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:42:55.46 ID:yXb23ZWN.net] 将来を考えるんなら、今は面倒でも Visual Studioのインストールの許可を貰うのが一番だと思う
158 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:49:23.13 ID:yXb23ZWN.net] ああ業
159 名前:ア(会社内身内だけであっても)で使うんならVisual Studioを購入する稟議がおりないのか [] [ここ壊れてます]
160 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:57:22.49 ID:uMirXT24.net] プロジェクトルームのPCにろくなもん入ってないことは良くある ネットは使えないしインストール許可はもちろん下りない
161 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 19:12:53.84 ID:fMxhTN4O.net] >>148 > 良く読んだら、Visual Studio無いってことは、コンパイル環境も無いってことか 無知は黙ってなよ...
162 名前:デフォルトの名無しさん [2017/06/25(日) 21:18:31.50 ID:cBKwT0iz.net] ソースコードに書かれた、退職した人からの隠されたメッセージが怖いと話題に ttp://hayabusa3.2ch・sc/test/read.cgi/news/1498229496/ > 107 名前:名無しさん@涙目です。(栃木県)@\(^o^)/ [US][sage] 投稿日:2017/06/24(土) 00:25:14.51 ID:gtItCgjB0.net > 秀丸で開発は死にたくなるわ > もうIDEなしではなにもできない > 111 名前:名無しさん@涙目です。(静岡県)@\(^o^)/ [US][] 投稿日:2017/06/24(土) 00:27:21.91 ID:y67Dbtee0.net > >>107 > 生産性が全然違うわな… > これ、どんなシステムのソースなんだろね > もう人間にCのソース書かせるのは虐待レベルかもしれんな > 557 名前:名無しさん@涙目です。(チベット自治区)@\(^o^)/ [US][] 投稿日:2017/06/24(土) 14:13:41.00 ID:Mt7vWmnB0.net > >>107 > 会社にもいるわ秀丸使ってるの > ライセンス払ってないしやめて欲しいんだけど
163 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 21:32:51.85 ID:6to7bpK7.net] >>148 コンパイルしてんのはVisual StudioじゃなくてMSBuild(Roslyn)なんだが
164 名前:デフォルトの名無しさん [2017/06/26(月) 00:11:28.58 ID:q7GF7ZpN.net] SDKが入ってないとコンパイルできないだろ
165 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 00:41:32.93 ID:RgMKiEkv.net] >>127 を読んでくれ YouTubeにある、T Umezawa のプログラミング動画を見てくれ
166 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 06:01:36.01 ID:muOV6x9Q.net] >>158 そんな初歩的で有名な内容の動画は誰でも知ってるよカス
167 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 06:45:14.53 ID:0gJ2UQLe.net] >>156 MSBuild はコンパイラじゃねーし、Roslyn 言いたいだけやろ >>157 無知は黙ってな って言われただろ
168 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 07:45:09.96 ID:muOV6x9Q.net] PowerShellユーザーってレベル低すぎだろ こりゃ流行らんわけだわ
169 名前:デフォルトの名無しさん [2017/06/26(月) 08:11:40.80 ID:78rqJMYE.net] プログラムに詳しいID:muOV6x9Q「PowerShell ユーザーのレベルが低くて PowerShell が流行らない」 俺「PowerShell の実行速度知ってるのかな。」
170 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 08:22:22.12 ID:c0IFcJ5l.net] >>160 MSBuildはVisual Studioで使われてるビルドツールだから特に間違ってない
171 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 09:28:00.38 ID:ScEYSwyJ.net] >>162 おバカ自慢要らねぇ
172 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 12:34:32.67 ID:1MMeaTZS.net] >>163 cc がコンパイラーだと思ってる初心者が背伸びしてるのか? w
173 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 13:04:20.33 ID:DBzkOTjN.net] >>165 >>148
174 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 13:11:01.82 ID:Wgv2F8mm.net] >>165 背伸びしすぎ
175 名前:デフォルトの名無しさん [2017/06/26(月) 16:48:34.60 ID:78rqJMYE.net] >>164 PowerShell が流行ってないなら、何が流行っていると言うのか。 Python か? Ruby か?
176 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 18:25:37.00 ID:1MMeaTZS.net] >>166 だから無知は黙っとけよ Windows 7 なら初めから csc.exe は入ってる >>167 どこが背伸びしてるかも書けなくてクヤシー ってか w
177 名前:デフォルトの名無しさん mailto:sage [2017/06/26(月) 22:20:40.86 ID:ta2e2oUg.net] bashでいいんだよね 最近はwindowsでも当たり前のように動くし あの不恰好なハイフンケースも見なくて済む
178 名前:デフォルトの名無しさん mailto:sage [2017/06/27(火) 00:10:11.76 ID:i+35CN1y.net] bash はテキストを扱うけど、PowerShell はオブジェクトを扱う だから今では、Linux でも、PowerShell
179 名前:使う [] [ここ壊れてます]
180 名前:デフォルトの名無しさん mailto:sage [2017/06/27(火) 22:13:55.29 ID:yIuIIYT1.net] >>134 俺も 同じMSだし相性良い
181 名前:デフォルトの名無しさん mailto:sage [2017/06/27(火) 22:24:35.01 ID:yIuIIYT1.net] オブジェクトパイプラインは シェルスクリプトに相性最高だから PowerShell使ってる
182 名前:デフォルトの名無しさん mailto:sage [2017/06/27(火) 23:07:35.60 ID:9pQu4/DR.net] PowerShellで動くGradleみたいなタスクランナーないのか? 適当なタスクはPowerShellで書いて難しいのは.NETでプラグイン書いて拡張みたいな
183 名前:デフォルトの名無しさん mailto:sage [2017/06/30(金) 11:05:09.77 ID:4xsmuURB.net] スタート右クリック -> コンピュータの管理 -> サービス一覧にHomeGroupListenerがありますが Powershellのサービス表示コマンドgsvでHomeGroupListenerが出てきません 何故でしょうか?分かる方教えてください
184 名前:デフォルトの名無しさん mailto:sage [2017/07/01(土) 10:38:47.37 ID:365+VqkD.net] >>175 Powershellを管理者として実行してる場合は出てくる 標準ユーザーからだと見れない設定になってるみたい
185 名前:デフォルトの名無しさん mailto:sage [2017/07/01(土) 12:41:01.54 ID:nJF3cNqk.net] >>176 わっかりましたー、おかげさまで確認できました ありがとうございましたー^^
186 名前:デフォルトの名無しさん mailto:sage [2017/07/07(金) 00:02:12.03 ID:i4NCWQ7g.net] コマンドプロンプトでbatファイルで「powershell -command '〜'」の形式で実行したいと考えています。 Excelのセルの値にセル内改行が入っている場合、〜.text.replace("`n","")で取り除けないかと考えていたのですが、 シングルクォーテーションで囲っているからか「`n」の部分が改行コードと認識されないようで、うまくいきませんでした。 powershellのISEで「powershell -command」を除いて「'〜'」の部分をシングルクォーテーションを除いて実行すればできるらしいことは分かったのですが、 「powershell -command」を除かないbatファイル形式だと実行できないままで、じゃあbatファイル形式だと本当にできないのかどうかが判断できないでいます。 詳しい方がいたら、batファイル形式でExcelのセル内改行を除くことができるか、実現の可否を教えてもらえるとありがたいです。
187 名前:デフォルトの名無しさん mailto:sage [2017/07/07(金) 11:06:45.17 ID:FdUpDhVC.net] スクリプト書いたPS1ファイル呼び出すのはではいかんの?
188 名前:デフォルトの名無しさん mailto:sage [2017/07/07(金) 15:24:04.06 ID:ZubRvcdJ.net] >>178 セル内改行やらシングルクォーテーションやらを除いて何たらのくだりがよく分からないのですが とにかくbatファイルからPowerShellを呼び出して改行コードを消すのはできましたよ batファイルだとコマンド内のダブルクォーテーションをエスケープするのが面倒だし、>>179 が言われるように PS1ファイルにコマンドを書いて、それを呼び出すのが一番良いと思います REM 改行コードあり start cmd /k powershell -command "$a=\"hoge`nfuga\";$a" REM 改行コード削除 start cmd /k powershell -command "$a=\"hoge`nfuga\";$a.replace(\"`n\", \"\")"
189 名前:デフォルトの名無しさん mailto:sage [2017/07/08(土) 16:14:05.15 ID:fy9+Ir4c.net] >>179-180 別の言語環境からPowershellを実行しようと考えていました。 PS1を呼び出そうとしても管理者権限がなく、 客先なので権限的に難しいです; コードは試してみてうまくいきました。 ありがとうございました。
190 名前:デフォルトの名無しさん mailto:sage [2017/07/08(土) 16:29:51.81 ID:If7Rv9IA.net] 管理者権限は要らなくないか ExecutionPolicyじゃないの?
191 名前:デフォルトの名無しさん mailto:sage [2017/07/08(土) 23:33:03.82 ID:VtagckP8.net] `nを取り除くだけならコマンドプロンプトだけでできる >set a="hoge`nfuga" >echo %a% "hoge`nfuga" >echo %a:`n=% "hogefuga"
192 名前:デフォルトの名無しさん mailto:sage [2017/07/11(火) 21:26:19.29 ID:dObX9Tuu.net] >>182-183 客先でget-executionpolicyを実行した結果、restictedでした。 変更しようとしたらアクセス拒否されました(客先なので管理者権限無し)。 なおVersionは2.0です; Excelのセル内改行を処理することが目的でした。 コマンドプロンプトだとExcelを開いてその中身を操作することはできないはず (できるとしたら、方法知らないです)。
193 名前:デフォルトの名無しさん mailto:sage [2017/07/11(火) 22:19:00.44 ID:tVDhCjRI.net] じゃあ>>180 が採用されるわけだ
194 名前:デフォルトの名無しさん mailto:sage [2017/07/12(水) 07:03:56.26 ID:etjmSHNj.net] >>184 この辺は試してみた? qiita.com/alchemist/items/e6706cd425f8f5e5032e
195 名前:デフォルトの名無しさん mailto:sage [2017/07/14(金) 21:53:58.88 ID:c553lDJr.net] >>186 タイミング悪くて試すの来週になりそうです;
196 名前:デフォルトの名無しさん mailto:sage [2017/07/15(土) 11:47:00.67 ID:gU/I/qic.net] >>186 が完璧すぎてコレで解決すると思いますが、あえて、あえて欠点を言うならば batファイルとps1ファイルの2つを管理することになることです、、そこでbatファイルだけで済ませてみようのコーナー! rem -------------------------------------------------------------------------------- rem ダブルクォート内のダブルクォートは\でエスケープ rem アンパサンド、パイプ、括弧などの特殊文字は^(キャレット)でエスケープ rem %(ForEach-Object)は%% rem -------------------------------------------------------------------------------- set cmd=^ $a=\"hoge`nfuga\";$a.replace(\"`n\", \"\");^ gsv ^| ?{$_.status -eq \"stopped\"} ^| select-object -first 5 ^| %%{$_.displayname} start cmd /k powershell -command "%cmd%" いかがでしょうか、エスケープまみれで若干見難くメンテナンス性に欠けてる雰囲気を醸し出していながら あら?案外PowerShellのコマンド呼び出せるじゃん?結構複雑な処理もできるじゃん?という可能性を感じて頂けると思います
197 名前:デフォルトの名無しさん mailto:sage [2017/07/15(土) 12:12:56.60 ID:CHIBYjTE.net] JScriptをバッチで書こうってのと同じ発想だね ちょっと面白かったけど結局使わなくなったな、やっぱメンテナンス性が悪い
198 名前:デフォルトの名無しさん mailto:sage [2017/07/16(日) 00:34:24.44 ID:6e3IGmZV.net] >>188 そこに正規表現書こうとして破綻したわ
199 名前:デフォルトの名無しさん mailto:sage [2017/07/18(火) 00:43:14.54 ID:LF/cbAfz.net] https://ja.stackoverflow.com/questions/28565 これと同じ状況に直面して困っているのですが解決法って無いですかね? バッググラウンドで処理したいのですが
200 名前:デフォルトの名無しさん mailto:sage [2017/07/18(火) 19:39:55.11 ID:8H3gajGs.net] >>186 方法2が実行できることを確認しました。 知らなかったので、感謝です。
201 名前:デフォルトの名無しさん mailto:sage [2017/07/18(火) 20:10:46.16 ID:gVG2yFi+.net] >>186 横からだけど俺も知らなかった 参考になったわ、ありがと
202 名前:デフォルトの名無しさん mailto:sage [2017/07/19(水) 20:06:04.65 ID:eaxCHqjh.net] Microsoft、「PowerShell」のロードマップを公開 〜クロスプラットフォーム版へ一本化 - 窓の杜 forest.watch.impress.co.jp/docs/news/1071229.html
203 名前:デフォルトの名無しさん mailto:sage [2017/07/19(水) 20:10:29.98 ID:iHePPUWI.net] >>194 ゴミクズになりそう
204 名前:デフォルトの名無しさん mailto:sage [2017/07/19(水) 21:28:06.47 ID:54vs2xq7.net] >>194 ソースを一本化するって話だろ メンテ工数考えたらあたり前だわな
205 名前:デフォルトの名無しさん mailto:sage [2017/07/25(火) 13:13:50.66 ID:7WSyTY3M.net] スマホ開発の選択肢にPowershellが入るのはいいね
206 名前:デフォルトの名無しさん [2017/07/26(水) 15:57:09.64 ID:oWetxvTP.net] 「将来のリリースでは削除予定(中略) 削除 Outlook Express ペイント 非推奨 IIS用のRSA/AES暗号化 Windows PowerShell 2.0 ペイントが削除されることは大きな話題となり、これを受けて MicrosoftはペイントをWindowsストアで提供する計画を明らかにした」 Windows 10 Fall Creators Updateで
207 名前:除される機能が公表される。 ペイントは「非推奨」となりWindowsストアで提供 | スラド IT https://it.srad.jp/story/17/07/26/056231/ 2017年07月26日 14時42分 [] [ここ壊れてます]
208 名前:デフォルトの名無しさん mailto:sage [2017/07/26(水) 18:57:43.84 ID:5CdvSxCd.net] ペイント時々使うんだよね
209 名前:デフォルトの名無しさん mailto:sage [2017/07/26(水) 22:11:57.59 ID:gz+R3HSW.net] >>199 メモ帳、ペイント、電卓 はたまに使う
210 名前:デフォルトの名無しさん mailto:sage [2017/07/26(水) 22:23:47.20 ID:CHI9wvnv.net] これを期にペイントも変えるか Paint.netがクセ少なくてよかった気が
211 名前:デフォルトの名無しさん [2017/07/27(木) 00:20:15.41 ID:QED4HDCh.net] >>200 毎日使ってる。 メモ帳は F5で日時入れて日記 あと、書式を削除して文字列をコピペするときに中継につかう。 ペイントは保存だけだけどキャプチャしたサイズで保存できるから便利だった。
212 名前:デフォルトの名無しさん mailto:sage [2017/07/27(木) 07:04:28.87 ID:P1js1uXh.net] >>202 > 書式を削除して文字列をコピペするときに中継につかう。 これは俺もよく使ったな 2007 辺りから Office でテキストだけの貼り付けができるようになったのでだいぶ出番は少なくなったけど
213 名前:デフォルトの名無しさん [2017/07/27(木) 22:36:14.85 ID:wZCn8yX+.net] >>202 オレ書式消す時にはwebブラウザの検索欄使ってるわ。 メモ帳起動するのも面倒くさい。
214 名前:デフォルトの名無しさん mailto:sage [2017/07/28(金) 00:13:48.81 ID:BWZfnzS5.net] PSのスレとしてはこれを使いやすいとこに置いとくとかが正解では v5.0以降じゃないと動かないけど (Get-Clipboard)|Set-Clipboard
215 名前:デフォルトの名無しさん mailto:sage [2017/07/28(金) 08:25:38.61 ID:qWRZaL/E.net] >>204 コピペするのは一行だけとは限らんから
216 名前:デフォルトの名無しさん [2017/07/28(金) 12:33:26.50 ID:WvgdGCet.net] >>206 逆に言えば、ブラウザ検索窓で済むくらい、一行が多いって事じゃね?
217 名前:デフォルトの名無しさん mailto:sage [2017/07/28(金) 12:57:50.67 ID:qWRZaL/E.net] >>207 >>204 はそうなんだろうな でも>>202 とか俺(>>203 )は違うってだけの話
218 名前:デフォルトの名無しさん [2017/08/07(月) 09:28:31.23 ID:ZOe0YyE+.net] あまり仕様を理解してないせいかもしれませんが,オブジェクトのプロパティに最後のひと押しをしたい時に,よい書き方が分かりません。教えてください。 例えば chrome の プライベートメモリサイズの合計を調べたいとします >>> gps chrome | Measure-Object PM -sum ここまでは良いのですけど。 さらに総和を 1mb で割りたいとします。 果たしてもう一度パイプを通すべきなのでしょうか。 >>> gps chrome | Measure-Object PM -sum | % {$_.sum/1MB} この「パイプを通して foreach……」というのが,方法としておかしい気がするんです。 ただの考え過ぎかもしれませんが,似たようなケースで多々も同じ方法を使っていて……いつも不安になってます。 どなたかご教授いただければ幸いです。
219 名前:デフォルトの名無しさん mailto:sage [2017/08/07(月) 10:25:25.82 ID:LLOFEtR0.net] >>209 >この「パイプを通して foreach……」というのが,方法としておかしい気がするんです。 なぜおかしいと思うの?
220 名前:デフォルトの名無しさん mailto:sage [2017/08/07(月) 10:38:22.40 ID:aJuSimYa.net] >>209 自分もおかしくないと思うけど、パイプ使いたくないならこうすれば? (gps chrome | Measure-Object PM -sum).sum / 1mb
221 名前:デフォルトの名無しさん mailto:sage [2017/08/07(月) 23:13:09.50 ID:zeLxf/vG.net] >>210 一個しかデータが無いのが分かってるのにforeachってところじゃ無い?
222 名前:デフォルトの名無しさん [2017/08/07(月) 23:18:53.21 ID:ZOe0YyE+.net] そこまでおかしくないということでしたら安心しました。 おかしいかというよりかは PowerShell においてこれが自然な方法かどうかが気になっていました。 プロパティを調べるにはただ obj.sum と書くのが自然な気がし
223 名前:たからです。そのために別の手続きを幾つか経過させるべきなのか迷っていました。 その意味では >>211 さんの方法がより良い気がします。 PowerShell では,代入文などを使って素朴に書いたほうが綺麗にできているのかもしれません。 自然だとか綺麗だとかは個人的な美学の問題ですし,PowerShell が出始めたころに出し尽くした議論だとは思いますけど……。 どうもありがとうございました! [] [ここ壊れてます]
224 名前:デフォルトの名無しさん mailto:sage [2017/08/08(火) 01:16:03.36 ID:nf4mccFn.net] >>213 211の方法でも、さらに加工しようとするとややこしくなる 例えば文字列でMBを加えて出力しようとすると Write-Host "$((gps chrome | Measure-Object PM -sum).sum / 1mb)MB" これよりはパイプだけの方が見やすいと思う gps chrome | Measure-Object PM -sum | %{$_.sum/1MB} | %{"$($_)MB"} | Write-Host まあ変数使えよって話かもしれないけどw
225 名前:デフォルトの名無しさん mailto:sage [2017/08/08(火) 12:39:53.99 ID:7r69+AsT.net] >>214 好みだろうけど俺は上の方がわかりやすいと感じる
226 名前:デフォルトの名無しさん [2017/08/09(水) 08:38:50.59 ID:RoXwN+kA.net] 俺は下の方が読みやすいな。 左から順に読み下せるってのが、パイプの性質に合ってる気がする。 まあ、好みかもな。
227 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 09:28:52.63 ID:VOmW1luq.net] >>213 obj.sum的なことは$_.sumでやってるじゃん 1つの要素をForeachで回すのに違和感があるのかな? Foreachで回す時にいちいち要素数なんか考慮しないよ、要素なんてゼロの時もあるし1の時もあるし複数ある時もあるわけだし 要素が1つの時は、(hogehoge).sum と書いて、要素が2つ以上ある時は、hogehoge | %{$_.sum} と書き分ける方がおかしい よって、これは好みの問題ではなく正解は>>214 でいうところの下の書き方が正解 好みとか美学とかなんたらいう前にPowershellの流儀に従うべき、上の書き方はありえないよ、ありえない
228 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 12:52:34.22 ID:LnmC5B+P.net] Measure-Object が複数の結果を返すなんてあり得るのか?
229 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 14:52:18.37 ID:VOmW1luq.net] ふむ、、抽象概念を扱えないようだね、hogehogeは配列でも何でもいいんだよ world-fusigi.net/archives/8899496.html
230 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 16:33:47.42 ID:uHgJiGhi.net] たとえばカレントディレクトリににa.txtとb.jpg、c.jpgの3ファイルがあったとして $txt = ls *.txt と $jpg = ls *.jpg の型が違うのは気持ち悪い気はする $txt.Countとか$txt[0]とやったり、逆に$jpg.Nameとかもできるんだけど $jpg += $txtだとちゃんと追加される一方で、$txt += $jpgだとエラーになる
231 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 16:48:34.81 ID:xf4P4t8V.net] 好みや流儀より、単純にパイプの方がメンテナンス性が優れてるよ >>214 は実際やってみると小数点以下の羅列の後に"MB"が付いて見苦しくなる でもパイプなら一部の修正だけですむ %{"$($_)MB"} を %{"{0:.00}MB" -f $_} とか、 四捨五入して %{[math]::Floor($_+0.5)} | %{"$($_)MB"} とか 214の上でこれやろうとするとカッコばかりで暗号のようになる
232 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 16:52:13.45 ID:xf4P4t8V.net] >>220 それはまたちょっと違う問題だね その場合はこうやって強制的に配列にしろと教えられたよ $txt = @(ls *.txt)
233 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 17:52:19.40 ID:/WbeABcG.net] パイプの方がPowerShellらしいコードだと思う
234 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 18:25:18.43 ID:Dx5GkAI7.net] >>223 俺もそう思う とにかくパイプで処理を繋げていくのが
235 名前:PowerShell流 [] [ここ壊れてます]
236 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 18:47:27.63 ID:veHAq/rO.net] >>222 配列かスカラーか返される物が状況によって変わる気持ち悪さは昔からあちこちで散々言われてるね
237 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 19:38:02.86 ID:LnmC5B+P.net] >>221 暗号ねぇ w Write-Host ("{0:0.00}MB" -f (gps chrome | Measure-Object PM -sum).sum / 1mb)) ちなみに書式変換時は元々四捨五入なのでFloorとかは要らんよ
238 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 19:41:50.81 ID:LnmC5B+P.net] >>225 配列を便利に扱えるようにしてるのはわかるけどちょっとやり過ぎかな -eq 演算子なんてトラップ以外の何者でもないだろ あと全然関係ないけど -isnull 演算子が欲しい
239 名前:デフォルトの名無しさん mailto:sage [2017/08/09(水) 19:46:51.80 ID:xf4P4t8V.net] >>226 [int]だけで四捨五入になるのは知ってるけど、分かりやすくした 暗号は言い過ぎたかもしれんが、そんなん書くより一度変数に入れたくならんか?w