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


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

【最強CUI】PowerShell -Part 2



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






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

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

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