2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【最強CUI】PowerShell -Part 2

1 :デフォルトの名無しさん:2016/11/26(土) 06:30:02.67 ID:pZYy6q7Y.net
前スレ
【最強CUI】PowerShell -Part 1
http://echo.2ch.net/test/read.cgi/tech/1378978504/

2 :デフォルトの名無しさん:2016/11/26(土) 08:38:40.61 ID:bM77xh/N.net
> http://echo.2ch.net/test/read.cgi/tech/1378978504/995
お前がそう思うならお前の中ではそうなんだろう
ただ、前スレ972,984が主張しているのは同じ系列か違う系列かとは別次元の主張だと思うけどね
前スレ972,984は言語の違いに具体性をあげて主張し、お前(995)は「言語系が違うから考えるだけ無駄」と一刀両断してる
「言語系が違う」とは「具体的に何が違ってどう問題なのか」まで詰めないと反論にはならない

3 :デフォルトの名無しさん:2016/11/26(土) 12:21:03.02 ID:pZYy6q7Y.net
>>2
998 見たのか?

4 :デフォルトの名無しさん:2016/11/26(土) 13:25:00.87 ID:Xhkbzj96.net
pascalとobject pascalが同系統でないと言うなら一部くらいは認めてもいい

5 :デフォルトの名無しさん:2016/11/26(土) 13:32:13.97 ID:mgzn+G7H.net
前スレのやりとり(一部抜粋)

972:
VBよりPythonとかのモダンなヤツの方が言語として使いやすいのはあると思う

(俺注)この人はモダンなやつの方が使いやすいと言っている

983:
>>972
言語系が違うから
同じ系統と使っていた人はそちらが使いやすい

(俺注)この人は、モダンかどうかより「系統」だと言っている

984,985:
>>983
レスが付いたので一応返すけど。
自分が列挙したのは機能不足の例であって、あなたが言うような言語系の違いでは無いと思う。
自分はVBAの文法は不足点が多いと思うけど、後継のVBA.netにはそういう不足は感じない。

VBA.net→VB.netのtypo

(俺注)やっぱりモダンなやつの方が使いやすいと言っている
(俺注)VBAには不足があるがVB.netはそうじゃない(別もの)とも言っている

986:
>>984
VBA と VB.net じゃ全然違う言語だろ w

(俺注)変な横やりが入る

6 :デフォルトの名無しさん:2016/11/27(日) 02:39:10.63 ID:cSdhTM+D.net
powershellはモダンなのだろうか

7 :デフォルトの名無しさん:2016/11/27(日) 08:31:43.93 ID:sPwCN3IY.net
PythonやRubyよりはモダンだと思うよ

8 :デフォルトの名無しさん:2016/11/27(日) 14:08:51.55 ID:p8mIwYr3.net
>>7
クラスの継承もまともにできないのに?

9 :デフォルトの名無しさん:2016/11/27(日) 19:49:04.61 ID:sPwCN3IY.net
>>8
PowerShellでOOPせざるを得ない人達はほんとご愁傷様だと思う

10 :デフォルトの名無しさん:2016/11/27(日) 19:57:47.17 ID:p8mIwYr3.net
>>9
そんな奴いないだろ...

11 :デフォルトの名無しさん:2016/11/27(日) 20:39:57.59 ID:4NtVYg/G.net
>>8
基本クラスの宣言
https://msdn.microsoft.com/ja-jp/powershell/wmf/5.0/class_base

12 :デフォルトの名無しさん:2016/11/27(日) 21:12:10.43 ID:p8mIwYr3.net
>>11
でどうやって継承するの?

13 :デフォルトの名無しさん:2016/11/27(日) 23:07:57.33 ID:5uLlPcla.net
派生クラスを定義したいんじゃないの???

14 :デフォルトの名無しさん:2016/11/28(月) 06:23:35.13 ID:d2SeRThv.net
こういうのはOS標準で入ってるバージョンでそれなりのことができないと意味がないと思う

15 :デフォルトの名無しさん:2016/11/28(月) 20:04:04.40 ID:69hXfWEY.net
それなりのことはできるけどPSv2でやるのは辛すぎる…
batだのWSHに比べたら万倍マシなんだけどさ

16 :デフォルトの名無しさん:2016/11/28(月) 20:48:33.20 ID:i2zpQyTO.net
ネタあるやつ、誰か参加してやれよww

PowerShell Advent Calendar 2016
http://qiita.com/advent-calendar/2016/powershell

17 :デフォルトの名無しさん:2016/11/28(月) 22:04:09.61 ID:CyOV/kcr.net
>>16
タネも用意せずにネタ振れとか何を考えてるんだよ w

18 :デフォルトの名無しさん:2016/11/29(火) 03:34:35.62 ID:5xImsroJ.net
Windows 10 次期アップデートでコマンドプロンプト廃止
http://hayabusa8.2ch.net/test/read.cgi/news/1479719509/
> fossBytesに11月19日(米国時間)に掲載された記事「Microsoft Replaces Command Prompt
> With PowerShell As Windows 10 Default Shell」が、Windows 10のデフォルトシェルが
> コマンドプロンプトからPowerShellに変更されると伝えた。Windows 10 Insider Build 14971で
> すでに入れ替えが実施されたと説明がある。

19 :デフォルトの名無しさん:2016/11/29(火) 04:31:39.05 ID:RlyL1LQc.net
>>18
この嘘ニュースでAdvent Calendar一本書けるやん。

20 :デフォルトの名無しさん:2016/11/29(火) 09:54:45.69 ID:oCXf0b/G.net
>>15
v2唯一のメリット
それはコマンドレットのヘルプがv3+と違って日本語化されていることだww

https://technet.microsoft.com/ja-jp/library/dd347701.aspx

21 :デフォルトの名無しさん:2016/11/30(水) 02:32:30.35 ID:PeC/aWZc.net
imgur.com/a/XVI2u.jpg

22 :デフォルトの名無しさん:2016/11/30(水) 07:46:00.01 ID:ycotJF0t.net
アセンブリ読み込む前にクラスが見えたり見えなかったりするのはどういう理屈なん?

http://i.imgur.com/Aev8NFz.png

二回目の入力は

23 :デフォルトの名無しさん:2016/11/30(水) 07:47:24.54 ID:ycotJF0t.net
あれ切れた・・・

二回目の入力は
"[system.draw" + tab補完試す→何も起きない + "ing.image]"
というキー入力してるんだが、こうやると何故か見えるようになるみたい

大人しくアセンブリ読み込めばいいだけだしおま環事象かもしれないけどこうなるメカニズムが気になる

24 :デフォルトの名無しさん:2016/11/30(水) 08:14:04.76 ID:ycotJF0t.net
あーよくわからんが理由はなんとなくわかった
tab補完試したら勝手にアセンブリが追加されて増えてたみたい
powershellの仕様ってことかな、よくわからんけど

25 :デフォルトの名無しさん:2016/11/30(水) 13:19:03.28 ID:3Q1IinyT.net
>>22-23
2chのバグだろう

書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。
" の代わりに、\" とエスケープすれば、どうだろう?

それか、書き込み確認画面が出たら、1度キャンセルすれば、確認画面は出ないようになった

26 :デフォルトの名無しさん:2016/12/01(木) 00:50:22.04 ID:KhJS093x.net
rubyとかpythonのラッパーないの?とか言ってたやつまだいるのかね

27 :デフォルトの名無しさん:2016/12/03(土) 00:13:22.41 ID:55Oi6B7P.net
じゃあ。
rubyとかpythonのラッパーないの?

28 :デフォルトの名無しさん:2016/12/03(土) 14:13:51.52 ID:kCQb0c0Q.net
rubyとかpythonのラッパーって何?
IronRubyやIronPythonの事?

29 :デフォルトの名無しさん:2016/12/08(木) 13:37:02.95 ID:MkJf2qz2.net
今度、職場がオフライン環境となり、
これまで使っていたcygwin(シェル、ruby)をインストール出来なくなりそう。
powershellならWindows標準でついてくるみたいですが
代用になりそうですかね?
用途はテキスト加工がメインです

30 :デフォルトの名無しさん:2016/12/08(木) 13:56:17.78 ID:0Yf63N90.net
.NET CLIのregexpが使えるから何とかなるんじゃない

31 :デフォルトの名無しさん:2016/12/08(木) 19:32:39.61 ID:3zYsuSQR.net
.NETインストールされてる環境ならC#の方がいいでしょ
あえてps使う理由ってあるの?

32 :デフォルトの名無しさん:2016/12/08(木) 19:36:26.58 ID:WR2cMfp2.net
>>29
PSもシェルスクリプトだからシェルは問題なく代用できる

Rubyは本格的なOOPとかメタプログラミングとか
難しいことやらなければおおむね代用可能だと思う

33 :デフォルトの名無しさん:2016/12/08(木) 21:42:22.05 ID:q5VqGHc1.net
>>31
VS入れられない環境でも使える

34 :29:2016/12/09(金) 02:40:50.47 ID:rHK/kpVD.net
説明不足ですみません。
非プログラマー職なので、
powershell、エクセルvba、wsh(vbs,js)、バッチファイルみたいな
最初からWindowsに入ってる
プログラミング環境しか使えないという状況でした。

35 :デフォルトの名無しさん:2016/12/09(金) 06:40:12.38 ID:CLppIZfJ.net
>>31
オフラインって書いてあるのにどうやって開発環境を揃える気なんだろう...

36 :デフォルトの名無しさん:2016/12/09(金) 13:50:08.79 ID:wCfW6wuS.net
いやだから世の中プログラマばっかじゃないんだよ

37 :デフォルトの名無しさん:2016/12/09(金) 21:13:49.63 ID:EGB1gDys.net
>>36
そう言う人が来る板じゃないんだが...

38 :デフォルトの名無しさん:2016/12/10(土) 10:58:52.86 ID:m8d8Cjww.net
確かに、ここの存在価値は

Windows PowerShell Part5
http://echo.2ch.net/test/read.cgi/win/1474175184/

39 :デフォルトの名無しさん:2016/12/12(月) 18:53:22.19 ID:GhP5dmpO.net
一応Add-TypeでC#やVB.NETも使えないことはないがVS無しで書くのは本当に苦行だからおすすめしない

40 :デフォルトの名無しさん:2016/12/29(木) 03:05:33.41 ID:KJUJiytz.net
ファイルがダウンロードされたものか、ローカルで作成されたものかってどうやって判別してるんだろ

41 :デフォルトの名無しさん:2016/12/29(木) 03:10:31.23 ID:zJOypbPn.net
ADSのフラグ見てるだけ

42 :デフォルトの名無しさん:2016/12/29(木) 11:00:11.70 ID:BD9K+jOv.net
ZONE

43 :デフォルトの名無しさん:2016/12/29(木) 15:16:02.15 ID:fFqM3XL7.net
Get-Content -Path hoge -Stream Zone.Identifier

44 :デフォルトの名無しさん:2016/12/31(土) 16:47:59.77 ID:i7Y8czLd.net
>>37
別に来ていいと思うけど...

45 :デフォルトの名無しさん:2016/12/31(土) 17:05:35.32 ID:RP5GqFRc.net
>>44
プログラム技術@2ch掲示板
この板はプログラムを作る人のための板です。

46 :デフォルトの名無しさん:2016/12/31(土) 17:07:39.35 ID:MAfU3vVP.net
マ板は?

47 :デフォルトの名無しさん:2016/12/31(土) 19:44:21.14 ID:RP5GqFRc.net
>>46
自分で調べろよ

48 :デフォルトの名無しさん:2017/01/21(土) 18:05:10.76 ID:W/zpHkC+.net
PS ISE以外に開発環境ってある?
テンプレート、シンタックスハイライト、入力補完、デバッガあたりが揃ってるやつ

49 :デフォルトの名無しさん:2017/01/24(火) 20:07:56.75 ID:wqAMcCVq.net
パスの扱いがよくわからん
System.IOを使うときはフルパスで渡すのが基本なのか?

50 :デフォルトの名無しさん:2017/01/24(火) 20:10:15.91 ID:fUCXytHT.net
はい

51 :デフォルトの名無しさん:2017/01/24(火) 20:49:09.93 ID:HHZbO6eg.net
普通にカレントディレクトリからの相対もできたと思うが...
なんか変な挙動あったっけ?

52 :デフォルトの名無しさん:2017/01/24(火) 20:53:59.82 ID:QirY2NrM.net
PowerShellってみなさんどうやって覚えてる?
必要になったものをググって都度対応してるけど、
なんかおすすめの学習方法ないですか?

53 :デフォルトの名無しさん:2017/01/24(火) 21:46:31.63 ID:ELq8qfcr.net
コマンドレットって語感が気色悪い

54 :デフォルトの名無しさん:2017/01/24(火) 22:27:48.01 ID:LErlSC41.net
>>52
基本それしかないかな
後はabout_系のヘルプを片っ端から読んでみるとか
https://msdn.microsoft.com/ja-jp/powershell/scripting/core-powershell/core-modules/windows-powershell-core-about-topics

55 :デフォルトの名無しさん:2017/01/24(火) 23:12:30.12 ID:vfnHFTTm.net
>>51
よくあるのはPowerShell自身とCLRでカレントディレクトリの管理が別々なせいで祖対パスが通らない、とかかな

56 :デフォルトの名無しさん:2017/01/25(水) 00:33:26.03 ID:09UbFk9J.net
VBSみたいにchmファイル的なオフラインヘルプって作れないの?

57 :デフォルトの名無しさん:2017/01/25(水) 06:47:08.95 ID:fntd/u0o.net
>>55
CLR のカレントディレクトリなんてあるの?
詳しく教えてほしい

58 :デフォルトの名無しさん:2017/01/25(水) 22:51:46.01 ID:t2eusvsp.net
>>57
そういう言葉で表現があってるかは分からないけど
スタティックメソッドに相対パスを渡すとそのメソッドはGetCurrentDirectoryメソッドで返ってくるパスをカレントディレクトリとして認識するよって話
ttp://stknohg.hatenablog.jp/entry/2015/04/30/232255

59 :デフォルトの名無しさん:2017/01/26(木) 06:59:08.30 ID:A4ZgtzRu.net
>>58
ほえー、これは知らんかったわ
ひとつ勉強になった
サンクス

60 :デフォルトの名無しさん:2017/02/01(水) 03:21:38.21 ID:0Q4jk/+z.net
Show-Commandって何に使うの?

61 :デフォルトの名無しさん:2017/02/01(水) 12:56:50.43 ID:kNSk5VZr.net
>>60
Get-Help の GUI 版みたいな感じじゃね
うちはまだ Version 2.0 使ってるからよくわからんが

62 :デフォルトの名無しさん:2017/02/03(金) 21:42:08.19 ID://drF8hq.net
>>48
PowerShell Script の エディタ と Visual Studio
http://tech.guitarrapc.com/entry/2014/09/29/102211
Visual Studio Code を PowerShell 用にインストールする
http://www.vwnet.jp/Windows/PowerShell/2016111501/VSCode4PS_Install.htm

63 :デフォルトの名無しさん:2017/02/15(水) 21:19:49.53 ID:wfPvVi6q.net
会社の人が意地悪してRestrictedから変えてくれない(´;ω;`)

64 :デフォルトの名無しさん:2017/02/18(土) 03:43:07.08 ID:0VkJqvdT.net
C#でイナフ

65 :デフォルトの名無しさん:2017/02/27(月) 21:46:23.66 ID:62PirtiY.net
OSのLocalSystemアカウントでWinRMコマンドは動かないんですよね?

66 :デフォルトの名無しさん:2017/02/28(火) 04:23:14.83 ID:9miyuyTg.net
age

67 :デフォルトの名無しさん:2017/03/15(水) 03:25:58.68 ID:mD7g4mUz.net
変数 $? について質問です。

コマンドレットの終了ステータスを$?で取得する分にはいいんですが、
functionで定義した関数の終了結果を$?に反映するのはどうしたらいいんでしょうか?
コマンドレットは
Cmd -hoge
の直後に $? で判定できますが、
これが関数だと
$result = Cmd -hoge
とか
Cmd -hoge ([ref]$result)
とかやってわざわざ結果を受け渡さないといけないのがダルくて・・。
true/falseぐらいなんとかならないんですかね・・

無理やりやる場合、
throw "error"
とかやれば、$? にfalseは入りそうですが、trueの場合は・・?

何かスマートな解決方法がありましたら教えてください。

68 :デフォルトの名無しさん:2017/03/16(木) 23:01:24.01 ID:VxkBx001.net
関数の終了結果って何?戻り値の事?

69 :67:2017/03/17(金) 02:14:53.86 ID:hRDUDw/w.net
>>68
ああ、変な書き方してますね。すいません。

戻り値ではなく、関数実行の成否を
コマンドレットと同じように扱いたい、という意味です。
戻り値になるとWrite-Hostするとかいろいろあると思いますが、
呼び出し側で受け取らないといけないですし、

要は、おおざっぱに書くと

function hoge()
{
//なんかの処理
if ( exec )
{
// 成功
$? = true
}
else {
// 失敗
$? = false
}
}

みたいにできると
hogeの呼び出し側で
$?を見て判断できるので、
コマンドレットと統一したいなぁ、と。

関数やコマンドレットを別のテーブルにつっこんで、
連想配列呼び出しなどを行いたいので、
実行の成否判定を一つの方法に統一したいのです。

70 :デフォルトの名無しさん:2017/03/17(金) 09:55:31.77 ID:80x1YWgW.net
成功や失敗の定義が分からないけど、普通の関数呼び出しでも$?は更新されるでしょ

http://i.imgur.com/Xi3hIf9.jpg

71 :デフォルトの名無しさん:2017/03/17(金) 18:48:41.55 ID:dpI1G6OF.net
>>70
例外発生させずに $false に設定したいんでしょ

72 :デフォルトの名無しさん:2017/03/18(土) 14:54:47.02 ID:506uEQ55.net
$?は定数なのでユーザーが値を変更するのは無理

73 :デフォルトの名無しさん:2017/03/18(土) 17:24:00.94 ID:1jN6Nl4i.net
定数?

74 :72:2017/03/23(木) 21:20:42.65 ID:a5UvHPnh.net
定数じゃなくて読み取り専用だった
Set-Variable -Force で値を変更できるけど、
値を変更したっていう「処理に成功」したことを処理系が感知して上書きしちゃうから意味ない

http://i.imgur.com/oCyQDIB.jpg

75 :デフォルトの名無しさん:2017/03/28(火) 01:25:27.68 ID:OfwVHftk.net
みなさんInvoke-WebRequestって正しくダウンロードできますか?

以前は50MB程度のファイルでも正しく落とせていたのですが、
最近実行してみたら、50kB程度しかダウンロードしないですぐコマンドが完了します。
しかも終了ステータスはTRUEで、
try/catchで挟んでもなにも検出されないという・・・。

まったく同じURLで
Start-BitsTransferやbitsadmin
msys2のwgetなどでは正しくダウンロードできました・・。

こういうのって何が原因として考えられますかね?

ちなみにURLはこちらです。
http://jaist.dl.sourceforge.net/project/msys2/Base/x86_64/msys2-base-x86_64-20161025.tar.xz

76 :デフォルトの名無しさん:2017/03/28(火) 13:29:30.59 ID:eplQq0Of.net
PSでセルオートマトン作ってみた
ヒマな時に実行したってや

$x = 79;$L = 1,(2..$x|%{0})
0..36000|%{
($L|%{if($_){'@'}else{' '}}) -join ''
$L = 0..($x-1)|%{$L[$_] -xor $L[($_+$x-1)%$x]}
sleep -Milliseconds 100
}

77 :デフォルトの名無しさん:2017/04/07(金) 18:51:24.69 ID:qFjL5HdN.net
C#でOkというような
PowerShellとC#一緒にしてるような人ってなに?
使い分けもわからん人かな

78 :デフォルトの名無しさん:2017/04/08(土) 09:33:30.32 ID:MEx1rivP.net
なんでもExcelで作ろうとしちゃうおっさんと同じじゃなの

79 :デフォルトの名無しさん:2017/04/08(土) 09:40:11.22 ID:05fh3MNN.net
開発環境に恵まれてるんでしょ
ぼくはiseさんだけがたよりです

80 :デフォルトの名無しさん:2017/04/10(月) 22:06:32.07 ID:uKsodgl6.net
"$($a='abc')$a"
ってやったら
abc
が表示される
で、
"$($a=')abc(')$a"
ってやろうとしたら
文字列の終端記号 ' がありません
って怒られるんだけどなぜなんだろ?
とりあえず今は
$b = ')abc('
"$($a=$b)$a"
ってやってるんだけどなんかいい方法ある?

81 :デフォルトの名無しさん:2017/04/10(月) 22:41:24.99 ID:gkDuG+d4.net
>>80
"$($a=(')abc('))$a"

82 :デフォルトの名無しさん:2017/04/10(月) 22:49:14.71 ID:uKsodgl6.net
>>81
なるほど、これは気づかなかったわ
サンクス

83 :デフォルトの名無しさん:2017/04/27(木) 16:26:02.68 ID:DT2kwFTK.net
結局PSプロバイダとかPSドライブが良くわからないので
環境変数の見方やセットの仕方が未だに覚えられない

84 :デフォルトの名無しさん:2017/04/27(木) 18:45:36.36 ID:iGwy+Jnn.net
>>83
おバカ自慢いらない

85 :デフォルトの名無しさん:2017/05/08(月) 11:44:29.24 ID:6gSr/ulH.net
>>75
俺もそこに詰まってた。
Invoke-WebRequestが弾かれるから、Start-BitsTransfer使ったりしてかなりごちゃまぜな感じだけど、

Start-BitsTransfer使うと今度はHTTP ステータス 403: クライアントは要求されたサーバー オブジェクトに対する十分なアクセス権がありません

出てね。

86 :デフォルトの名無しさん:2017/05/08(月) 14:30:33.42 ID:nASEPquk.net
最近余計な追加ばかりしやがる。
・先頭までBSすると妙にでかいBeepが鳴る。
・curlへのエイリアス

87 :デフォルトの名無しさん:2017/05/08(月) 21:36:01.77 ID:iCbQx90b.net
>curlへのエイリアス

これって最近じゃないよね?

88 :デフォルトの名無しさん:2017/05/14(日) 10:29:23.44 ID:cfnkRKwu.net
>先頭までBSすると妙にでかいBeepが鳴る

Set-PSReadlineOption -BellStyle None

>curlへのエイリアス

Remove-Item alias:\curl

89 :デフォルトの名無しさん:2017/05/21(日) 23:32:44.95 ID:0rB2bxGq.net
まだpowerGUIってどこかでダウンロードできませんか?
ps1をexe化したいんですが

90 :デフォルトの名無しさん:2017/05/22(月) 16:03:54.37 ID:ZYotF7X4.net
https://chocolatey.org/packages/PowerGUI

91 :デフォルトの名無しさん:2017/05/22(月) 20:48:22.27 ID:0E7f0azY.net
>>90
ありがとうございますたすかりました!

92 :デフォルトの名無しさん:2017/06/02(金) 23:41:38.59 ID:2Map0wHE.net
質問です。

コマンドプロンプト経由でPowershellを使って、
既存のxlsxファイルの複数シート(もしくは全シート)を選択した状態にしてセーブ/終了したいのですが、
複数シート(もしくは全シート)を選択した状態にするコードが分かりません。
方法があれば、ご教示いただけるとありがたいです。

93 :デフォルトの名無しさん:2017/06/03(土) 03:19:51.11 ID:HOlIYUlS.net
>>92
全選択ならこれでできるよ
$book.Sheets.Select()

指定したものを選択だとなんかださい書き方になった

$sheet_number = 1
$selected_count = 0
foreach($sheet in $book.Sheets) {

if((1,2,4).Contains($sheet_number)) { # 1、2、4番目を選択
if($selected_count -eq 0) {
$sheet.Select($true)
$selected_count++
}
else {
$sheet.Select($false)
}
}
$sheet_number++
}

94 :デフォルトの名無しさん:2017/06/03(土) 07:02:30.23 ID:TQ/e2k0C.net
指定シート選択の方法で動きました。
ありがとうございました。

95 :デフォルトの名無しさん:2017/06/17(土) 22:39:02.28 ID:pgT8IBgc.net
Excelのシートの背景色をまとめて変えたいです。
セルで範囲を指定する方法は分かるのですが、Excelだと左上のボタンを押すと全指定になるように全てのセルを対象にして背景色を変えたいです。
Powershellでそういう方法ってあるのでしょうか?

96 :デフォルトの名無しさん:2017/06/18(日) 00:00:52.56 ID:2/zUBuGb.net
$book.ActiveSheet.Cells.Interior.ColorIndex = 20

97 :デフォルトの名無しさん:2017/06/22(木) 21:05:25.54 ID:T+mmOPfg.net
タイトルバー右クリック→プロパティ→画面の色
の16色カラーパレット各色の値を変更するコマンドってありますか?

98 :デフォルトの名無しさん:2017/06/22(木) 21:53:07.57 ID:TEp+wKkH.net
レジストリ編集くらいしか思いつかない

https://technet.microsoft.com/en-us/library/cc957409.aspx
https://technet.microsoft.com/en-us/library/cc957408.aspx

99 :97:2017/06/22(木) 22:55:13.89 ID:T+mmOPfg.net
>>98
ありがとう。でも設定は永続ではなく現在のプロセスだけ有効であれば良いです。

100 :デフォルトの名無しさん:2017/06/22(木) 23:13:48.36 ID:v7Y2NKOi.net
>>96
遅ればせながら。
今日試して、うまくいきました。感謝。

101 :デフォルトの名無しさん:2017/06/24(土) 10:14:00.84 ID:jPQQGq+C.net
PowerShellだけでローカルhttpサーバーって建てれる?
PythonとかNode.jsみたいにお手軽にローカルhttpサーバーを起動したいんだけど余計な開発者用wikiをローカルで動かしたいんだけど(コンテンツはリポジトリで共有)
余計なものをインストールするなって怒られるからPowerShellでやりたい

102 :デフォルトの名無しさん:2017/06/24(土) 10:59:32.01 ID:ikmrOfgV.net
>>101
PowerShellでもできると思うが普通にC#でいいんじゃね?

103 :デフォルトの名無しさん:2017/06/24(土) 11:24:00.67 ID:jPQQGq+C.net
>>102
Visual Studioが無い環境なのでc#はちょっとめんどくさい
JDKとEclipseがインストールされてるWindows 7環境
ツールのインストールは殆ど却下されるけどゼロから自作するのは問題ない

104 :デフォルトの名無しさん:2017/06/24(土) 11:32:28.31 ID:5sdiaxaL.net
何も入れなくてもC#の機能呼び出せるからそれでHttpListener呼べば

105 :デフォルトの名無しさん:2017/06/24(土) 12:10:39.19 ID:ikmrOfgV.net
>>103
> Visual Studioが無い環境なのでc#はちょっとめんどくさい
メモ帳 + csc.exe でできるだろ
ゼロからの自作ならなにもインストールする必要はないよ

106 :デフォルトの名無しさん:2017/06/24(土) 13:12:03.71 ID:M1pK/2YY.net
PowerShellでWebServerってこういうの?
http://community.idera.com/powershell/powertips/b/tips/posts/creating-powershell-web-server

107 :デフォルトの名無しさん:2017/06/24(土) 13:17:14.14 ID:jPQQGq+C.net
>>106
こういうの待ってた

108 :デフォルトの名無しさん:2017/06/24(土) 14:25:40.31 ID:cSElHmPp.net
Windows PowerShell を使用する場合とコードを記述する場合を判断する
https://msdn.microsoft.com/ja-jp/library/office/hh537936(v=office.14).aspx

明らかに Windows PowerShell が現実的な選択肢とならないシナリオもあります。
たとえば、Windows PowerShell を使用してカスタム アプリケーション ページ、
Web パーツ、または Web サービスを作成することは、通常、考えられません。
同様に、デザイン性に優れたユーザー インターフェイスを作成する場合に
Windows PowerShell はおそらく役に立ちません。

全体がコードであるソリューションを必要とする 1 つの具体的なシナリオは、
Windows PowerShell でできることを拡張する方法です。
SharePoint チームが Microsoft.SharePoint.PowerShell モジュールを使用して行ったように、
使用する独自のコマンドレットを作成できます。

109 :デフォルトの名無しさん:2017/06/24(土) 14:32:25.36 ID:jPQQGq+C.net
>>108
残念ですが今はそれが現実的な選択肢なんです
何でもかんでもインストールできる環境とは違います

110 :デフォルトの名無しさん:2017/06/24(土) 14:37:33.17 ID:Ttx92mnQ.net
なんでこんなに偉そうなんだこいつは

111 :デフォルトの名無しさん:2017/06/24(土) 17:46:31.14 ID:jJP9Xrk7.net
放置でいいだろ
インストールしちゃダメって言うならC#でもいいって書いてあるのにガン無視だし

112 :デフォルトの名無しさん:2017/06/24(土) 18:01:10.30 ID:jPQQGq+C.net
開発環境揃えられないのにC#のコンパイラだけじゃ現実的じゃないでしょ

113 :デフォルトの名無しさん:2017/06/24(土) 18:26:10.76 ID:AiSsJYjg.net
>>104
C#じゃなくて.NET Frameworkだろ。

114 :デフォルトの名無しさん:2017/06/24(土) 18:43:37.74 ID:ikmrOfgV.net
>>112
PowerShell でサーバー作るよりは現実的だよ w

115 :デフォルトの名無しさん:2017/06/24(土) 22:08:29.97 ID:jPQQGq+C.net
>>114
アホか
notepadやサクラエディタでプログラミングとか正気じゃないわ

116 :デフォルトの名無しさん:2017/06/24(土) 22:29:15.94 ID:AiSsJYjg.net
>>115
初心者?

117 :デフォルトの名無しさん:2017/06/24(土) 22:38:29.00 ID:5sdiaxaL.net
>>113
そだな^^;

118 :デフォルトの名無しさん:2017/06/24(土) 22:43:41.40 ID:ikmrOfgV.net
>>115 はPowerShell のソースを何で書くつもりなんだろう w

119 :デフォルトの名無しさん:2017/06/24(土) 22:52:36.56 ID:jPQQGq+C.net
単純なものだよ
psでhttpリクエストを待ち受ける
シンプルなルーティングルールでコンテンツに振り分ける
コンテンツをテンプレートに従い変換してレスポンスを返す
これで十分
他の言語なら10数行で書けるしpsでも大差ないだろ
このアイデアに比べたらNotepadでc#なんてバカバカしいよ

120 :デフォルトの名無しさん:2017/06/24(土) 22:54:17.14 ID:AiSsJYjg.net
>>119
メモ帳を使っているやつなんかいるかよw
学生?

121 :デフォルトの名無しさん:2017/06/24(土) 22:57:40.88 ID:jPQQGq+C.net
>>120
世の中は君が思うようなゆとり環境ばかりではないということ
厳しい制限の中で何ができるか模索することができないと君が卒業後キツいぞ

122 :デフォルトの名無しさん:2017/06/24(土) 23:00:55.63 ID:AiSsJYjg.net
>>121
サーバー上でメモ帳しかないならわかるが、わざわざサーバー上で書く必要もない。

123 :デフォルトの名無しさん:2017/06/24(土) 23:04:32.95 ID:jPQQGq+C.net
>>122
発想が貧弱

124 :デフォルトの名無しさん:2017/06/24(土) 23:05:18.10 ID:M1pK/2YY.net
え、そりゃもちろんISEじゃないの?

125 :デフォルトの名無しさん:2017/06/24(土) 23:11:41.81 ID:AiSsJYjg.net
>>123
あなたはサクラエディタが使える環境を想定しているのに、わざわざメモ帳でやろうとするところが変。

126 :デフォルトの名無しさん:2017/06/24(土) 23:15:04.67 ID:AiSsJYjg.net
>>123
統合開発環境がどこにでもあると思っているパターンだろ?

開発機と本番機が同じだったり、ネットワークでつながっていたりする環境しか知らない。

127 :デフォルトの名無しさん:2017/06/24(土) 23:32:04.17 ID:BBTzLwWV.net
YouTubeにある、T Umezawa のプログラミング動画では、
秀丸でJava、メモ帳でC#、などで作っている

土方を極めると、補完よりも、キータイプの方が速いw

128 :デフォルトの名無しさん:2017/06/25(日) 06:09:07.77 ID:wnVI7vr5.net
>>127
初心者はコード補完をありがたがるんだよな。あんなの覚えていたり、コピーで作るからなくてもいい。間違って選択する可能性もある。そんなにあわてて作ることなんてないもん。

129 :デフォルトの名無しさん:2017/06/25(日) 08:27:22.56 ID:q2vWG5qk.net
Programmer's Notepad
http://www.pnotepad.org/
C#入門
http://dotinstall.com/lessons/basic_csharp

130 :デフォルトの名無しさん:2017/06/25(日) 08:30:32.82 ID:ffAutXm5.net
アスペしかいねえな

131 :デフォルトの名無しさん:2017/06/25(日) 09:23:24.05 ID:fMxhTN4O.net
>>119
> 他の言語なら10数行で書けるしpsでも大差ないだろ
書いてから言えば?

132 :デフォルトの名無しさん:2017/06/25(日) 09:32:52.64 ID:wnVI7vr5.net
生産性向上のために統合開発環境が必要と言うやつほど、仕事が遅いという傾向がある。ようは時間をかけるところを間違っている。

133 :デフォルトの名無しさん:2017/06/25(日) 09:50:09.89 ID:ffAutXm5.net
メモ帳やサクラエディタでc#やるのはキツいって話から一気に統合開発環境まで飛躍するんだ

134 :デフォルトの名無しさん:2017/06/25(日) 10:30:07.25 ID:WQxeemkA.net
最近はVisual Studio Codeで書いてる

135 :デフォルトの名無しさん:2017/06/25(日) 11:06:37.53 ID:wnVI7vr5.net
>>133
俺はきついなどと言ってないが?

136 :デフォルトの名無しさん:2017/06/25(日) 12:55:56.29 ID:lpQuvt0E.net
珍しく伸びてると見てみればバカが大暴れしてただけだったw

137 :デフォルトの名無しさん:2017/06/25(日) 13:12:09.69 ID:fMxhTN4O.net
>>135
お前が誰かは知らんけど>>115には気が狂うほどキツイらしいぞ

138 :デフォルトの名無しさん:2017/06/25(日) 13:20:58.23 ID:WQxeemkA.net
>>132
Designer.csやResourceを全部手書きしたりしてんの?

139 :デフォルトの名無しさん:2017/06/25(日) 15:20:14.95 ID:wnVI7vr5.net
>>138
全否定しているわけではない。そもそも毎回いちから作らない。

140 :デフォルトの名無しさん:2017/06/25(日) 16:46:11.14 ID:ffAutXm5.net
PowerShellユーザーのレベルってこんなものか

141 :デフォルトの名無しさん:2017/06/25(日) 17:16:04.58 ID:wnVI7vr5.net
>>140
コード書きに時間をさく、重要視しすぎるのは経験の少ないひとの特徴。

142 :デフォルトの名無しさん:2017/06/25(日) 17:21:05.34 ID:cBKwT0iz.net
>>140
ちょっとこっちのレベル見て来て

【.cmd】 バッチファイルスクリプト %12 【.bat】
http://mevius.2ch.net/test/read.cgi/tech/1489207631/

143 :デフォルトの名無しさん:2017/06/25(日) 17:30:49.30 ID:fMxhTN4O.net
>>140
2chで判断するバカ乙

144 :デフォルトの名無しさん:2017/06/25(日) 17:42:26.66 ID:ffAutXm5.net
ん〜この反応の良さwww

145 :デフォルトの名無しさん:2017/06/25(日) 18:09:14.46 ID:yXb23ZWN.net
使えるなら便利なものを使えばいいけど
フリーソフトなんかインスコ出来ないんだろ
notepadでも仕方ないじゃんか
別の(自由な)PCが使えるならソッチで書けばいい

146 :デフォルトの名無しさん:2017/06/25(日) 18:17:09.04 ID:RuMg9Z/7.net
IIS、asp.netが有効化出来るんなら大分楽になりそうなんだけど

147 :デフォルトの名無しさん:2017/06/25(日) 18:18:59.11 ID:7Ebwbe24.net
PowerShell ISEは使えないの?

148 :デフォルトの名無しさん:2017/06/25(日) 18:28:34.48 ID:yXb23ZWN.net
良く読んだら、Visual Studio無いってことは、コンパイル環境も無いってことか
じゃあJDKはあるんだからJavaで作るのが現実的じゃないかな

149 :デフォルトの名無しさん:2017/06/25(日) 18:30:37.67 ID:1WC2t8my.net
だからコンパイルしなくても.NET Frameworkは使えるし
Powershell ISEはPowershellと一緒に入ってるだろって話だよ

150 :デフォルトの名無しさん:2017/06/25(日) 18:37:08.45 ID:ffAutXm5.net
>>148
今はJDKがあるけど次もあるとは限らない
Windowsにデフォルトで入ってるPowerShellでやるということに意味がある

151 :デフォルトの名無しさん:2017/06/25(日) 18:42:55.46 ID:yXb23ZWN.net
将来を考えるんなら、今は面倒でも
Visual Studioのインストールの許可を貰うのが一番だと思う

152 :デフォルトの名無しさん:2017/06/25(日) 18:49:23.13 ID:yXb23ZWN.net
ああ業務(会社内身内だけであっても)で使うんならVisual Studioを購入する稟議がおりないのか

153 :デフォルトの名無しさん:2017/06/25(日) 18:57:22.49 ID:uMirXT24.net
プロジェクトルームのPCにろくなもん入ってないことは良くある
ネットは使えないしインストール許可はもちろん下りない

154 :デフォルトの名無しさん:2017/06/25(日) 19:12:53.84 ID:fMxhTN4O.net
>>148
> 良く読んだら、Visual Studio無いってことは、コンパイル環境も無いってことか
無知は黙ってなよ...

155 :デフォルトの名無しさん: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
>   会社にもいるわ秀丸使ってるの
>   ライセンス払ってないしやめて欲しいんだけど

156 :デフォルトの名無しさん:2017/06/25(日) 21:32:51.85 ID:6to7bpK7.net
>>148
コンパイルしてんのはVisual StudioじゃなくてMSBuild(Roslyn)なんだが

157 :デフォルトの名無しさん:2017/06/26(月) 00:11:28.58 ID:q7GF7ZpN.net
SDKが入ってないとコンパイルできないだろ

158 :デフォルトの名無しさん:2017/06/26(月) 00:41:32.93 ID:RgMKiEkv.net
>>127
を読んでくれ

YouTubeにある、T Umezawa のプログラミング動画を見てくれ

159 :デフォルトの名無しさん:2017/06/26(月) 06:01:36.01 ID:muOV6x9Q.net
>>158
そんな初歩的で有名な内容の動画は誰でも知ってるよカス

160 :デフォルトの名無しさん:2017/06/26(月) 06:45:14.53 ID:0gJ2UQLe.net
>>156
MSBuild はコンパイラじゃねーし、Roslyn 言いたいだけやろ

>>157
無知は黙ってな
って言われただろ

161 :デフォルトの名無しさん:2017/06/26(月) 07:45:09.96 ID:muOV6x9Q.net
PowerShellユーザーってレベル低すぎだろ
こりゃ流行らんわけだわ

162 :デフォルトの名無しさん:2017/06/26(月) 08:11:40.80 ID:78rqJMYE.net
プログラムに詳しいID:muOV6x9Q「PowerShell ユーザーのレベルが低くて PowerShell が流行らない」

俺「PowerShell の実行速度知ってるのかな。」

163 :デフォルトの名無しさん:2017/06/26(月) 08:22:22.12 ID:c0IFcJ5l.net
>>160
MSBuildはVisual Studioで使われてるビルドツールだから特に間違ってない

164 :デフォルトの名無しさん:2017/06/26(月) 09:28:00.38 ID:ScEYSwyJ.net
>>162
おバカ自慢要らねぇ

165 :デフォルトの名無しさん:2017/06/26(月) 12:34:32.67 ID:1MMeaTZS.net
>>163
cc がコンパイラーだと思ってる初心者が背伸びしてるのか? w

166 :デフォルトの名無しさん:2017/06/26(月) 13:04:20.33 ID:DBzkOTjN.net
>>165
>>148

167 :デフォルトの名無しさん:2017/06/26(月) 13:11:01.82 ID:Wgv2F8mm.net
>>165
背伸びしすぎ

168 :デフォルトの名無しさん:2017/06/26(月) 16:48:34.60 ID:78rqJMYE.net
>>164
PowerShell が流行ってないなら、何が流行っていると言うのか。
Python か?
Ruby か?

169 :デフォルトの名無しさん:2017/06/26(月) 18:25:37.00 ID:1MMeaTZS.net
>>166
だから無知は黙っとけよ
Windows 7 なら初めから csc.exe は入ってる

>>167
どこが背伸びしてるかも書けなくてクヤシー
ってか w

170 :デフォルトの名無しさん:2017/06/26(月) 22:20:40.86 ID:ta2e2oUg.net
bashでいいんだよね
最近はwindowsでも当たり前のように動くし
あの不恰好なハイフンケースも見なくて済む

171 :デフォルトの名無しさん:2017/06/27(火) 00:10:11.76 ID:i+35CN1y.net
bash はテキストを扱うけど、PowerShell はオブジェクトを扱う

だから今では、Linux でも、PowerShell を使う

172 :デフォルトの名無しさん:2017/06/27(火) 22:13:55.29 ID:yIuIIYT1.net
>>134
俺も
同じMSだし相性良い

173 :デフォルトの名無しさん:2017/06/27(火) 22:24:35.01 ID:yIuIIYT1.net
オブジェクトパイプラインは
シェルスクリプトに相性最高だから
PowerShell使ってる

174 :デフォルトの名無しさん:2017/06/27(火) 23:07:35.60 ID:9pQu4/DR.net
PowerShellで動くGradleみたいなタスクランナーないのか?
適当なタスクはPowerShellで書いて難しいのは.NETでプラグイン書いて拡張みたいな

175 :デフォルトの名無しさん:2017/06/30(金) 11:05:09.77 ID:4xsmuURB.net
スタート右クリック -> コンピュータの管理 -> サービス一覧にHomeGroupListenerがありますが
Powershellのサービス表示コマンドgsvでHomeGroupListenerが出てきません
何故でしょうか?分かる方教えてください

176 :デフォルトの名無しさん:2017/07/01(土) 10:38:47.37 ID:365+VqkD.net
>>175
Powershellを管理者として実行してる場合は出てくる
標準ユーザーからだと見れない設定になってるみたい

177 :デフォルトの名無しさん:2017/07/01(土) 12:41:01.54 ID:nJF3cNqk.net
>>176
わっかりましたー、おかげさまで確認できました
ありがとうございましたー^^

178 :デフォルトの名無しさん: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のセル内改行を除くことができるか、実現の可否を教えてもらえるとありがたいです。

179 :デフォルトの名無しさん:2017/07/07(金) 11:06:45.17 ID:FdUpDhVC.net
スクリプト書いたPS1ファイル呼び出すのはではいかんの?

180 :デフォルトの名無しさん: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\", \"\")"

181 :デフォルトの名無しさん:2017/07/08(土) 16:14:05.15 ID:fy9+Ir4c.net
>>179-180
別の言語環境からPowershellを実行しようと考えていました。
PS1を呼び出そうとしても管理者権限がなく、
客先なので権限的に難しいです;

コードは試してみてうまくいきました。
ありがとうございました。

182 :デフォルトの名無しさん:2017/07/08(土) 16:29:51.81 ID:If7Rv9IA.net
管理者権限は要らなくないか
ExecutionPolicyじゃないの?

183 :デフォルトの名無しさん:2017/07/08(土) 23:33:03.82 ID:VtagckP8.net
`nを取り除くだけならコマンドプロンプトだけでできる
>set a="hoge`nfuga"

>echo %a%
"hoge`nfuga"

>echo %a:`n=%
"hogefuga"

184 :デフォルトの名無しさん:2017/07/11(火) 21:26:19.29 ID:dObX9Tuu.net
>>182-183
客先でget-executionpolicyを実行した結果、restictedでした。
変更しようとしたらアクセス拒否されました(客先なので管理者権限無し)。
なおVersionは2.0です;

Excelのセル内改行を処理することが目的でした。
コマンドプロンプトだとExcelを開いてその中身を操作することはできないはず
(できるとしたら、方法知らないです)。

185 :デフォルトの名無しさん:2017/07/11(火) 22:19:00.44 ID:tVDhCjRI.net
じゃあ>>180が採用されるわけだ

186 :デフォルトの名無しさん:2017/07/12(水) 07:03:56.26 ID:etjmSHNj.net
>>184
この辺は試してみた?
http://qiita.com/alchemist/items/e6706cd425f8f5e5032e

187 :デフォルトの名無しさん:2017/07/14(金) 21:53:58.88 ID:c553lDJr.net
>>186
タイミング悪くて試すの来週になりそうです;

188 :デフォルトの名無しさん: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のコマンド呼び出せるじゃん?結構複雑な処理もできるじゃん?という可能性を感じて頂けると思います

189 :デフォルトの名無しさん:2017/07/15(土) 12:12:56.60 ID:CHIBYjTE.net
JScriptをバッチで書こうってのと同じ発想だね
ちょっと面白かったけど結局使わなくなったな、やっぱメンテナンス性が悪い

190 :デフォルトの名無しさん:2017/07/16(日) 00:34:24.44 ID:6e3IGmZV.net
>>188
そこに正規表現書こうとして破綻したわ

191 :デフォルトの名無しさん:2017/07/18(火) 00:43:14.54 ID:LF/cbAfz.net
https://ja.stackoverflow.com/questions/28565
これと同じ状況に直面して困っているのですが解決法って無いですかね?
バッググラウンドで処理したいのですが

192 :デフォルトの名無しさん:2017/07/18(火) 19:39:55.11 ID:8H3gajGs.net
>>186
方法2が実行できることを確認しました。
知らなかったので、感謝です。

193 :デフォルトの名無しさん:2017/07/18(火) 20:10:46.16 ID:gVG2yFi+.net
>>186
横からだけど俺も知らなかった
参考になったわ、ありがと

194 :デフォルトの名無しさん:2017/07/19(水) 20:06:04.65 ID:eaxCHqjh.net
Microsoft、「PowerShell」のロードマップを公開 〜クロスプラットフォーム版へ一本化 - 窓の杜
http://forest.watch.impress.co.jp/docs/news/1071229.html

195 :デフォルトの名無しさん:2017/07/19(水) 20:10:29.98 ID:iHePPUWI.net
>>194
ゴミクズになりそう

196 :デフォルトの名無しさん:2017/07/19(水) 21:28:06.47 ID:54vs2xq7.net
>>194
ソースを一本化するって話だろ
メンテ工数考えたらあたり前だわな

197 :デフォルトの名無しさん:2017/07/25(火) 13:13:50.66 ID:7WSyTY3M.net
スマホ開発の選択肢にPowershellが入るのはいいね

198 :デフォルトの名無しさん: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で削除される機能が公表される。
ペイントは「非推奨」となりWindowsストアで提供 | スラド IT
https://it.srad.jp/story/17/07/26/056231/
2017年07月26日 14時42分

199 :デフォルトの名無しさん:2017/07/26(水) 18:57:43.84 ID:5CdvSxCd.net
ペイント時々使うんだよね

200 :デフォルトの名無しさん:2017/07/26(水) 22:11:57.59 ID:gz+R3HSW.net
>>199
メモ帳、ペイント、電卓
はたまに使う

201 :デフォルトの名無しさん:2017/07/26(水) 22:23:47.20 ID:CHI9wvnv.net
これを期にペイントも変えるか
Paint.netがクセ少なくてよかった気が

202 :デフォルトの名無しさん:2017/07/27(木) 00:20:15.41 ID:QED4HDCh.net
>>200
毎日使ってる。

メモ帳は F5で日時入れて日記
あと、書式を削除して文字列をコピペするときに中継につかう。

ペイントは保存だけだけどキャプチャしたサイズで保存できるから便利だった。

203 :デフォルトの名無しさん:2017/07/27(木) 07:04:28.87 ID:P1js1uXh.net
>>202
> 書式を削除して文字列をコピペするときに中継につかう。
これは俺もよく使ったな
2007 辺りから Office でテキストだけの貼り付けができるようになったのでだいぶ出番は少なくなったけど

204 :デフォルトの名無しさん:2017/07/27(木) 22:36:14.85 ID:wZCn8yX+.net
>>202
オレ書式消す時にはwebブラウザの検索欄使ってるわ。
メモ帳起動するのも面倒くさい。

205 :デフォルトの名無しさん:2017/07/28(金) 00:13:48.81 ID:BWZfnzS5.net
PSのスレとしてはこれを使いやすいとこに置いとくとかが正解では
v5.0以降じゃないと動かないけど

(Get-Clipboard)|Set-Clipboard

206 :デフォルトの名無しさん:2017/07/28(金) 08:25:38.61 ID:qWRZaL/E.net
>>204
コピペするのは一行だけとは限らんから

207 :デフォルトの名無しさん:2017/07/28(金) 12:33:26.50 ID:WvgdGCet.net
>>206
逆に言えば、ブラウザ検索窓で済むくらい、一行が多いって事じゃね?

208 :デフォルトの名無しさん:2017/07/28(金) 12:57:50.67 ID:qWRZaL/E.net
>>207
>>204はそうなんだろうな
でも>>202とか俺(>>203)は違うってだけの話

209 :デフォルトの名無しさん: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……」というのが,方法としておかしい気がするんです。
 ただの考え過ぎかもしれませんが,似たようなケースで多々も同じ方法を使っていて……いつも不安になってます。

 どなたかご教授いただければ幸いです。

210 :デフォルトの名無しさん:2017/08/07(月) 10:25:25.82 ID:LLOFEtR0.net
>>209
>この「パイプを通して foreach……」というのが,方法としておかしい気がするんです。
なぜおかしいと思うの?

211 :デフォルトの名無しさん:2017/08/07(月) 10:38:22.40 ID:aJuSimYa.net
>>209
自分もおかしくないと思うけど、パイプ使いたくないならこうすれば?

(gps chrome | Measure-Object PM -sum).sum / 1mb

212 :デフォルトの名無しさん:2017/08/07(月) 23:13:09.50 ID:zeLxf/vG.net
>>210
一個しかデータが無いのが分かってるのにforeachってところじゃ無い?

213 :デフォルトの名無しさん:2017/08/07(月) 23:18:53.21 ID:ZOe0YyE+.net
 そこまでおかしくないということでしたら安心しました。

 おかしいかというよりかは PowerShell においてこれが自然な方法かどうかが気になっていました。
 プロパティを調べるにはただ obj.sum と書くのが自然な気がしたからです。そのために別の手続きを幾つか経過させるべきなのか迷っていました。
 その意味では >>211 さんの方法がより良い気がします。

 PowerShell では,代入文などを使って素朴に書いたほうが綺麗にできているのかもしれません。

 自然だとか綺麗だとかは個人的な美学の問題ですし,PowerShell が出始めたころに出し尽くした議論だとは思いますけど……。

 どうもありがとうございました!

214 :デフォルトの名無しさん: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

215 :デフォルトの名無しさん:2017/08/08(火) 12:39:53.99 ID:7r69+AsT.net
>>214
好みだろうけど俺は上の方がわかりやすいと感じる

216 :デフォルトの名無しさん:2017/08/09(水) 08:38:50.59 ID:RoXwN+kA.net
俺は下の方が読みやすいな。
左から順に読み下せるってのが、パイプの性質に合ってる気がする。
まあ、好みかもな。

217 :デフォルトの名無しさん: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の流儀に従うべき、上の書き方はありえないよ、ありえない

218 :デフォルトの名無しさん:2017/08/09(水) 12:52:34.22 ID:LnmC5B+P.net
Measure-Object が複数の結果を返すなんてあり得るのか?

219 :デフォルトの名無しさん:2017/08/09(水) 14:52:18.37 ID:VOmW1luq.net
ふむ、、抽象概念を扱えないようだね、hogehogeは配列でも何でもいいんだよ
http://world-fusigi.net/archives/8899496.html

220 :デフォルトの名無しさん: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だとエラーになる

221 :デフォルトの名無しさん:2017/08/09(水) 16:48:34.81 ID:xf4P4t8V.net
好みや流儀より、単純にパイプの方がメンテナンス性が優れてるよ
>>214は実際やってみると小数点以下の羅列の後に"MB"が付いて見苦しくなる
でもパイプなら一部の修正だけですむ
%{"$($_)MB"} を %{"{0:.00}MB" -f $_} とか、
四捨五入して %{[math]::Floor($_+0.5)} | %{"$($_)MB"} とか
214の上でこれやろうとするとカッコばかりで暗号のようになる

222 :デフォルトの名無しさん:2017/08/09(水) 16:52:13.45 ID:xf4P4t8V.net
>>220
それはまたちょっと違う問題だね
その場合はこうやって強制的に配列にしろと教えられたよ

$txt = @(ls *.txt)

223 :デフォルトの名無しさん:2017/08/09(水) 17:52:19.40 ID:/WbeABcG.net
パイプの方がPowerShellらしいコードだと思う

224 :デフォルトの名無しさん:2017/08/09(水) 18:25:18.43 ID:Dx5GkAI7.net
>>223
俺もそう思う
とにかくパイプで処理を繋げていくのがPowerShell流

225 :デフォルトの名無しさん:2017/08/09(水) 18:47:27.63 ID:veHAq/rO.net
>>222
配列かスカラーか返される物が状況によって変わる気持ち悪さは昔からあちこちで散々言われてるね

226 :デフォルトの名無しさん: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とかは要らんよ

227 :デフォルトの名無しさん:2017/08/09(水) 19:41:50.81 ID:LnmC5B+P.net
>>225
配列を便利に扱えるようにしてるのはわかるけどちょっとやり過ぎかな
-eq 演算子なんてトラップ以外の何者でもないだろ
あと全然関係ないけど -isnull 演算子が欲しい

228 :デフォルトの名無しさん:2017/08/09(水) 19:46:51.80 ID:xf4P4t8V.net
>>226
[int]だけで四捨五入になるのは知ってるけど、分かりやすくした

暗号は言い過ぎたかもしれんが、そんなん書くより一度変数に入れたくならんか?w

229 :デフォルトの名無しさん:2017/08/09(水) 19:55:36.34 ID:xf4P4t8V.net
>>226
つか、カッコ一つ足らないw
あんた自身混乱してるわ

230 :デフォルトの名無しさん:2017/08/09(水) 20:10:17.94 ID:LnmC5B+P.net
>>228
> そんなん書くより一度変数に入れたくならんか?w
この程度でなるか?
って話
程度は人によって違うからまあ好きにしなよ

>>229
スマホから書き込んでるから細かいところは目を瞑ってくれ

231 :デフォルトの名無しさん:2017/08/09(水) 21:53:40.19 ID:VOmW1luq.net
課長 「SumをMBで出してくれ」
A君 "{0:0.00}MB" -f ((gps chrome | Measure-Object PM -sum).sum / 1mb)
B君 gps chrome | Measure-Object PM -sum | %{[String]::format("{0:0.00}MB", $_.sum/1mb)}

課長 「すばらしい! じゃあついでにMax値とMin値もMBで出してちょうだい」
A君 「ぐぬぬ・・・」
B君 gps chrome | Measure-Object PM -sum -Maximum -Minimum | %{[String]::format("Sum: {0:0.00}MB`nMax: {1:0.00}MB`nMin: {2:0.00}MB", ($_.sum, $_.maximum, $_.minimum | %{$_/1mb}) )}
明美 「きゃーB君ステキ ブッチュー」

232 :デフォルトの名無しさん:2017/08/09(水) 23:08:02.45 ID:VOmW1luq.net
C君 gps chrome | Measure-Object PM -sum -Maximum -Minimum | %{$_.sum, $_.maximum, $_.minimum | %{$_/1mb}} | %{"{0:0.00}MB" -f $_}
明美 「キャー 抱いてぇー」

233 :デフォルトの名無しさん:2017/08/10(木) 00:28:12.53 ID:6XCllBcj.net
自分ならこうするかな
一行で書かなきゃいけないルールでもあるのか、その会社は

gps vivaldi | Measure-Object PM -sum -Maximum -Minimum| %{
foreach($i in 'Sum','Maximum','Minimum'){
"{0}: {1:0.00}MB" -f $i.Substring(0,3),($_.$i/1mb)
}
}

234 :デフォルトの名無しさん:2017/08/10(木) 06:39:07.15 ID:G39ZUl5R.net
課長 「きゃーステキー ブッチュー」

235 :デフォルトの名無しさん:2017/08/11(金) 16:26:51.20 ID:99wg1jHM.net
>>231
課長「ああ、あと個数もお願いね」

236 :デフォルトの名無しさん:2017/08/13(日) 11:23:55.65 ID:i2h5TtLX.net
多少は実用的なやつを。サブスレッドも合計してメモリ食ってるアプリのトップ3

Get-Process|Group Name|%{$_|Add-Member Length ($_.group|measure PM -Sum|%{$_.sum}) -PassThru}|
sort length -Descending|select -First 3|%{'{0}: {1:#,0.}MB'-f $_.name,($_.length/1mb)}

237 :デフォルトの名無しさん:2017/08/16(水) 20:21:19.54 ID:TEzkLuqt.net
初心者ですが質問です
ISEでデバックした時とスクリプトで実行した時で
GUI?の見た目が違うのですが(スクリプト実行だとGUIが古い感じ)
デバックしてる時と同じGUIにするにはどうすれば良いのでしょうか?

238 :デフォルトの名無しさん:2017/08/16(水) 20:46:46.65 ID:qxnt2v0K.net
>>237
デバッグね

239 :デフォルトの名無しさん:2017/08/20(日) 16:38:06.37 ID:+qRmeWmG.net
「マイクロソフト社製の基本ソフトを使うパソコン
に搭載されたシステム管理機能パワーシェル(PS)を操る(中略)
ファイルレス攻撃は、実行形式でないLNKなど別の拡張子のファイルが添付されている。
ウイルスの本体ではないため、単体では情報収集などの目的を果たせないが、
PSに命令する不正プログラムが含まれている(中略)
ウイルスを勝手にダウンロード(中略)
自分の存在を隠す」

「ファイルレス」見えないサイバー攻撃急増 政府・金融機関など標的(1/3ページ) - 産経ニュース
http://www.sankei.com/affairs/news/170820/afr1708200002-n1.html
2017.8.20 06:38

240 :デフォルトの名無しさん:2017/09/05(火) 17:17:36.30 ID:NCuJt1Zi.net
>>237
スクリプトで実行って関連付けで実行ってこと?
ISEとはUIが別ものだと思うけど

241 :デフォルトの名無しさん:2017/09/05(火) 17:21:04.29 ID:NCuJt1Zi.net
>>237
ISEに関連付けするってことかな
おもすぎるしやったことないけど

242 :237:2017/09/08(金) 18:15:40.23 ID:fHkqyhXS.net
>>240
レスありがとうございます
https://letspowershell.blogspot.jp/2015/07/powershell_9.html
こちらのブログで質問させて頂きまして無事解決しました

[System.Windows.Forms.Application]::EnableVisualStyles();
を追加して無事デバッグと同じフォームになりました

243 :デフォルトの名無しさん:2017/09/08(金) 18:46:32.46 ID:v1oxBnRc.net
質問です

set-location でパスを入力する時、日本語が含まれていると文字化けしてしまい
「Set-Location : パス 'C:\Users\nashi\Desktop\SHO\PDF 繧「繝励Μ' が存在しないため検出できません。」
と言われてしまいます。

バッチファイル?からではなく、powershellに直接入力した時は起こらないのですが
どうしても回避する方法がわかりません。

どなたか分からないでしょうか。

244 :デフォルトの名無しさん:2017/09/09(土) 09:51:54.02 ID:JyXabSQN.net
ファイルのエンコードじゃね

245 :デフォルトの名無しさん:2017/10/08(日) 02:33:38.64 ID:L3khK+9u.net
画面のスナップショットをF9キー辺りに割り当てて、
キーを押す度に連番ファイルとして保存したいんだけど
powershellで簡単にできたりする?

246 :デフォルトの名無しさん:2017/10/08(日) 13:06:48.18 ID:HosRocIl.net
>>245
> 画面のスナップショットをF9キー辺りに割り当てて、
PowerShellを呼び出すバッチファイルを書いてショートカットで呼び出すように設定
https://s.news.mynavi.jp/articles/2011/01/25/memo/002.html

> キーを押す度に連番ファイルとして保存したいんだけど
https://stackoverflow.com/questions/2969321/how-can-i-do-a-screen-capture-in-windows-powershell

247 :デフォルトの名無しさん:2017/10/08(日) 17:51:50.69 ID:L3khK+9u.net
ありがとうございます。無事完成しました。

248 :デフォルトの名無しさん:2017/10/09(月) 15:36:12.56 ID:aT/bMCXY.net
ps1ファイルの関連付けとか弄らずに、ダブルクリックで実行させたい場合って
wscriptのrunとかから呼ぶのが一般的ですか?(ファイルが2つになってしまう感じですか?)

249 :デフォルトの名無しさん:2017/10/09(月) 18:30:22.51 ID:lHNYO6zv.net
>>248
バッチファイルの存在を無視ですか?

250 :デフォルトの名無しさん:2017/10/09(月) 18:32:07.85 ID:aT/bMCXY.net
>>249
コンソール窓が一瞬出るのが嫌なのでwscriptから呼んでます

251 :デフォルトの名無しさん:2017/10/09(月) 19:54:07.67 ID:nfbSpXzR.net
>>248
ExecutionPolicyも指定してラップできるから便利だね
ShellExecuteでrunas指定すれば管理権限で実行もできるし

252 :デフォルトの名無しさん:2017/10/09(月) 20:38:58.18 ID:pi4w3jwR.net
powershell.exeショートカットにオプション直書きで十分

253 :デフォルトの名無しさん:2017/10/09(月) 21:06:20.91 ID:TUH4S8FX.net
PSをダブルクリックで実行できれば便利だが
つねにそれが良いとは限らない

書きかけのバッチをうっかり実行して
データやマシンがおかしくなる場合もありえる

254 :デフォルトの名無しさん:2017/10/10(火) 10:39:20.69 ID:Lm1TOsWr.net
>>253
そんなレベルの人は他のことをしていてください。

255 :デフォルトの名無しさん:2017/10/10(火) 10:40:53.91 ID:Lm1TOsWr.net
だいたい間違って実行してしまわないようにクリックで実行できないようになっているというのに。

256 :デフォルトの名無しさん:2017/10/10(火) 12:17:00.45 ID:FT16hdt/.net
batもWSHもできるのにps1だけ対応しない理由はなんだろね
ポリシーなんてどうとでもなるのに

257 :デフォルトの名無しさん:2017/10/10(火) 17:50:27.32 ID:O+aWn4bz.net
>>252
ショートカットって記述的じゃないから嫌なんだよね
ショートカット作っても2ファイルだし、
それなら初めからwscriptから起動するよ

258 :デフォルトの名無しさん:2017/10/10(火) 17:52:15.08 ID:O+aWn4bz.net
記述的じゃないってのはちと違うか。
テキストベースで完結しないって意味ね

259 :デフォルトの名無しさん:2017/10/10(火) 18:09:29.72 ID:ACpNi8fa.net
>>254
いろんな事態を想定できない方がレベルが低いよ

>>256
普通のプログラミング言語のソースは
直接実行できないでしょ

>>257
記述的というならコマンドラインは記述的で良い

260 :デフォルトの名無しさん:2017/10/10(火) 20:30:07.68 ID:+oAYtlnk.net
今のところ右クリック→実行してもらうのが安全性からも利便性からもバランスが良い

261 :デフォルトの名無しさん:2017/10/11(水) 23:32:55.89 ID:rnTDWqK2.net
Powershellのスクリプトは部品だからどっかから呼ぶのでいいんだよ
単体起動するようなもんじゃないね

262 :デフォルトの名無しさん:2017/10/12(木) 01:44:18.85 ID:bkFDlrr0.net
>>259
たぶん、右クリックで表示される「Powershellで実行」という項目を見ないで
電話してくれるユーザーへの対応の話だと思う

ダブルクリックしたらなんか開いたふざけんな、実行しない、バグだ、と内線で……

263 :デフォルトの名無しさん:2017/10/12(木) 01:46:34.74 ID:bkFDlrr0.net
とりあえず関数切ったら引数に , つけるのか付けないのかは統一してほしい気分……
たまに間違う(function定義のほうだと , いるやん)

まぁbashとかでも似たようなもんで、俺の練度の問題かも知らんが

264 :デフォルトの名無しさん:2017/10/12(木) 03:29:50.53 ID:BE/Y4M/4.net
ダブルクリックだけで実行されて、システムが故障したら、
損害賠償しなければならない

そもそも、ダブルクリックだけで、スクリプトが実行されたら、
極めて危険だから、納品の基準を満たしていないし、損害賠償が確実

265 :デフォルトの名無しさん:2017/10/12(木) 12:35:03.43 ID:4QKX7vcz.net
実行して危険なモノならpsじゃなくても確認手段ぐらいその中に入れとくでしょ
前提がおかしいと思う

266 :デフォルトの名無しさん:2017/10/12(木) 12:41:05.39 ID:C4JHmerz.net
>>265
クスクス

267 :デフォルトの名無しさん:2017/10/12(木) 20:14:39.20 ID:rmq6lCFL.net
クリックで誤って実行してしまう点がよくないとマイクロソフトも思ったからクリックで実行できないようにさてるんだけどな。

268 :デフォルトの名無しさん:2017/10/13(金) 20:09:44.69 ID:ESvMC/no.net
exeにすればいいじゃない

269 :デフォルトの名無しさん:2017/10/25(水) 11:25:59.45 ID:fPe3kbbb.net
負荷テストのために下記コードを書いて見ましたがこれって音は全部鳴ってるのかな?
# 下記サイトより効果音をお借りしました。
# http://maoudamashii.jokersounds.com/archives/se_maoudamashii_explosion06.html
# d:\indexフォルダは好きなように変更してください。
$loopcont = 128
$list = New-Object 'System.Collections.Generic.List[System.Media.SoundPlayer]'
for ($i=0; $i -lt $loopcont; $i++){
$a = New-Object Media.SoundPlayer("d:\Index\se_maoudamashii_explosion06.wav")
$list.Add($a)
#$list[$i] = New-Object Media.SoundPlayer("d:\Index\se_maoudamashii_explosion06.wav")
Write-Output "サウンド $i を追加しました。"
}
for ($i=0; $i -lt $loopcont; $i++){
$list[$i].PlayLooping()
Write-Output "サウンド $i を再生しました。"
Start-Sleep -m 10
}
Start-Sleep -s 15
for ($i=0; $i -lt $loopcont; $i++){
$list[$i].Stop()
Write-Output "サウンド $i を停止しました。"
}
Start-Sleep -s 5

270 :デフォルトの名無しさん:2017/10/26(木) 22:48:35.59 ID:s7qcbuWd.net
つんぼなの?

271 :デフォルトの名無しさん:2017/11/16(木) 20:52:41.22 ID:T0n72mO9.net
初心者ですが教えてください
WIN32APIの GetFileInformationByHandle をPSから呼ぶにはどうしたら良いですか
やりたいことはハードリンクを考慮したディスク使用量計算です

272 :デフォルトの名無しさん:2017/11/16(木) 21:08:55.48 ID:T0n72mO9.net
https://technet.microsoft.com/ja-jp/sysinternals/du.aspx
これ使ったら普通にできたわ
邪魔したな

まあPSはクソってことで

273 :デフォルトの名無しさん:2017/11/16(木) 23:31:42.00 ID:KchxuJsd.net
余計な一言いらんだろ

274 :デフォルトの名無しさん:2017/11/18(土) 16:11:21.34 ID:cmYM+INK.net
的外れなちゃちゃ入れる人はどこにもいるもんですよ

275 :デフォルトの名無しさん:2017/12/05(火) 22:34:01.07 ID:k+S65OIc.net
powershellでお手軽にwebapi実装するツールって無いか?
C# AspNet WebApiで作るほどの物じゃない
短期間の使い捨てのちょっとしたローカルサービス
リクエスト受けたらurlにマッピングされたps1ファイルを実行するとかで十分なんだけど

276 :デフォルトの名無しさん:2017/12/05(火) 22:46:21.76 ID:9s0hJyul.net
>>275
ASP.NET Coreならめちゃめちゃお手軽だと思うけど

277 :デフォルトの名無しさん:2017/12/13(水) 20:58:28.53 ID:ZeopdAwf.net
Windows 10 Fall Creators Update になってから
$PSHOMEのpowershell.exe.configの編集ができないみたいだがどうすりゃいいの

278 :デフォルトの名無しさん:2017/12/14(木) 01:13:41.61 ID:qWY4CdFg.net
powershell.exe.configの所有がTrustedInstallerだから管理者でも編集できない
なんでそんなことになった

279 :デフォルトの名無しさん:2017/12/16(土) 01:09:23.97 ID:Vs3lXU98.net
所有者変えればいいんじゃないの

280 :デフォルトの名無しさん:2017/12/26(火) 01:08:50.05 ID:h/71yGJi.net
レジストリに書く環境変数設定
setx 変数 値
は問題ないが消す時の
setx 変数 ""
がなぜか設定できない
やり方あるの?
もちろんコマンドプロンプトからはできる

281 :デフォルトの名無しさん:2017/12/26(火) 01:14:34.23 ID:h/71yGJi.net
ありゃcmdからsetx 変数 ""やっても消えとらんな
まあpowershell関係ないからいいや

282 :デフォルトの名無しさん:2017/12/31(日) 04:59:46.55 ID:ewNY+pJH.net
"a[1-5]"とかでa1〜a5がヒットするどうでもいい機能のせいで
無駄に面倒くさくなったのどう考えても失敗だわ
角括弧なんてパスで割りと使う文字なのに

283 :デフォルトの名無しさん:2017/12/31(日) 13:49:10.30 ID:SxcWahjo.net
c#書ける機能がまだよく分からない

284 :デフォルトの名無しさん:2017/12/31(日) 15:17:36.20 ID:5u0blHAo.net
>>283
お前の日本語がわからない

285 :デフォルトの名無しさん:2018/01/01(月) 20:07:25.73 ID:2CgBQVZt.net
C#で作ったコンソールアプリのexeをクリックしたらコマンドプロントが開くけど
代わりにpowershellで開けないの?

286 :デフォルトの名無しさん:2018/01/02(火) 22:13:36.96 ID:cpIk9AtY.net
単純にcmdプロンプトのウインドウを開きたいだけでいいなら
star cmd

287 :デフォルトの名無しさん:2018/01/02(火) 22:14:25.04 ID:cpIk9AtY.net
タイプミスしちゃった
start cmd

288 :デフォルトの名無しさん:2018/01/02(火) 22:29:34.02 ID:4AlqWi6E.net
>>286
質問の意味わかってる?

289 :デフォルトの名無しさん:2018/01/02(火) 22:36:39.85 ID:cpIk9AtY.net
コマンドプロンプトを開きたいとしか読めない。
質問を見ると、コマンドプロンプトを出さないようにしたいという
意味にはなってないし。
なんなんでしょ?

290 :デフォルトの名無しさん:2018/01/02(火) 22:39:26.99 ID:cpIk9AtY.net
ああごめん、わかった。
単にexeを実行したいってことね。
start xxx.exe
これでいいんじゃない?

291 :デフォルトの名無しさん:2018/01/02(火) 22:58:55.67 ID:jMJmiv3g.net
と、おだやかなお正月風景がすすんでいます

292 :デフォルトの名無しさん:2018/01/02(火) 23:54:42.16 ID:BiuuD5uo.net
>>285
C#アプリ側でpowershell上で実行するように変更するか、スクリプトなりショートカットファイルなり使ってpowershell経由で呼べば良いんじゃないかな?
例えばショートカットのリンク先に powershell.exe -noexit C#アプリ.exe とか。
※powershellのフルパスは自動的に補完されると思うけど、C#アプリはフルパスで記入した方が良いよ。

293 :デフォルトの名無しさん:2018/01/03(水) 01:24:47.80 ID:E10k9nmq.net
>>285
C#とかのコンソールアプリは別にcmdが裏で動いてたりするわけじゃないよ
powershellも色が付いた単なるコンソールアプリだよ

294 :デフォルトの名無しさん:2018/01/03(水) 04:11:38.95 ID:LyakWDNT.net
そのアプリの中で、cmd というコマンドを使っていれば、コマンドプロンプト、
powershell というコマンドを使っていれば、PowerShell が起動する

コマンドプロンプトで、powershell と打てば、PowerShell に、
PowerShell で、cmd と打てば、コマンドプロンプトが起動する

295 :デフォルトの名無しさん:2018/01/03(水) 07:28:44.92 ID:r/sVYD0y.net
いわゆるDOS窓はConsoleAPIを使って生成していて
それに対してstdin/outで読み書きしてれば
自作のコンソールアプリ,cmd,powershell等のコンソールアプリ間で相互に呼び出して繋げられるようになっている

Console Functions - Windows Console | Microsoft Docs
https://docs.microsoft.com/en-us/windows/console/console-functions

296 :デフォルトの名無しさん:2018/01/04(木) 19:31:12.74 ID:53E7Fk1q.net
c#のcsi.exeで実行するスクリプトってすごい便利だな知らんかったこれ

297 :デフォルトの名無しさん:2018/01/05(金) 11:06:17.33 ID:zx9cp28q.net
たしかにC#のスクリプトはお手軽さはないがなんでもできるんだよなあ
ちょっと手のこんだことだとC#のほうが楽

298 :デフォルトの名無しさん:2018/01/05(金) 11:13:19.30 ID:zx9cp28q.net
inputboxはC#にないからpowershellからのほうが楽なのねなるほど

299 :デフォルトの名無しさん:2018/01/05(金) 14:42:36.77 ID:m3Niw8wH.net
>>298
これはC#から使えないの?

Interaction.InputBox メソッド
https://msdn.microsoft.com/ja-jp/library/microsoft.visualbasic.interaction.inputbox(v=vs.85).aspx

300 :デフォルトの名無しさん:2018/01/06(土) 12:35:04.57 ID:nVtZlcUN.net
http://itsukara.hateblo.jp/entry/2017/04/02/213525
すごいねこれ。GUIはwpfのほうがええんかな

301 :デフォルトの名無しさん:2018/01/07(日) 00:05:50.77 ID:X0qXwTa7.net
>>300
今後の問題ってのがWPFにもFormにもあるけど、
わたしゃ、DesktopではPowerShell+WPFでガンガン
作ってますよ。
xamlで書いて。

302 :デフォルトの名無しさん:2018/01/09(火) 03:02:58.55 ID:69Y93T5M.net
PowerShell+WPFなめてたけど
おもったより簡単に書けるな
だがPoserShell窓消せないのでC#でexeにしたほうがいいっぽい

303 :デフォルトの名無しさん:2018/01/09(火) 09:19:25.79 ID:4EiQrQ8s.net
>>302
WSHでラップすれば一応消せるで

304 :デフォルトの名無しさん:2018/01/10(水) 00:29:43.87 ID:NjZf1Ty6.net
>>302
スゲー便利よ。WPF表示関数化してる。
VSでデザインした時も、デザイナーのオブジェクトのNameをそのまま
PowerShellの変数で使用できるようにしちゃってるんで、すげー開発
効率高い。ちなみにその関数も20行くらいのもの。

デザインしたら、そのままPowerShellのデータとバインドして表示。

305 :デフォルトの名無しさん:2018/01/11(木) 01:24:15.68 ID:SytfDmnE.net
ジャグ配列を返す関数を作ったのですが、ルートの要素が1個の時に戻り値がおかしくなります
ルートの要素が2個以上の場合は起きません。どうしてででしょうか
以下再現コード
function test_jag_array() {
$jag = ,@(@("abc", "def", "ghi", @("jkl", "mno", "pqr", "stu")))
foreach($x in $jag) {
[void]("func " + $x[0] + " " + $x[1] | Out-Host)
for ($i = 3; $i -lt $x.length; $i++) {
$a= $x[$i][0]; $b= $x[$i][1]; $c= $x[$i][2]; $d= $x[$i][3]
[void]("func " + "a:" + $a + " b:" + $b + " c:" + $c + " d:" + $d | Out-Host)
}
}
return $jag
}

$jag = test_jag_array
foreach($x in $jag) {
[void]("res " + $x[0] + " " + $x[1] | Out-Host)
for ($i = 3; $i -lt $x.length; $i++) {
$a= $x[$i][0]; $b= $x[$i][1]; $c= $x[$i][2]; $d= $x[$i][3]
[void]("res " + "a:" + $a + " b:" + $b + " c:" + $c + " d:" + $d | Out-Host)
}
}

上の実行結果
func abc def          ←期待する結果
func a:jkl b:mno c:pqr d:stu ←期待する結果
res a b             ←なんじゃこれ・・・
res d e             ←なんじゃこれ・・・
res g h             ←なんじゃこれ・・・
res jkl mno          ←なんじゃこれ・・・
res a:s b:t c:u d:       ←なんじゃこれ・・・

306 :デフォルトの名無しさん:2018/01/11(木) 01:34:44.31 ID:SytfDmnE.net
↑をルート要素2で試す場合は$jagを以下に変えてください。
$jag = ,@(@("abc", "def", "ghi", @("jkl", "mno", "pqr", "stu")), `
@("abc", "def", "ghi", @("jkl", "mno", "pqr", "stu")))
要素1を回避するコードを加えて一応この問題は解決はしてますが、バグの特定で1日潰れました。

307 :デフォルトの名無しさん:2018/01/11(木) 03:42:54.09 ID:z0XvJ0+n.net
>>306
その辺の闇は以下によくまとめられてた

powershellの@()の謎を解く
https://qiita.com/jca02266/items/1ec920a7592a05cfd6f0

また以下記事のコメント欄でWrite-Output -NoEnumerateの例があった

powershell: 2次元配列が微妙
https://qiita.com/basso414f/items/67894003a666106ca806

308 :デフォルトの名無しさん:2018/01/11(木) 03:49:18.87 ID:z0XvJ0+n.net
こんな感じでいける

function test_jag_array() {
$jag1 = , ("abc", "def", "ghi", ("jkl", "mno", "pqr", "stu"))

$jag2 = , ("abc", "def", "ghi", ("jkl", "mno", "pqr", "stu")),
("abc", "def", "ghi", ("jkl", "mno", "pqr", "stu"))

$jag = $jag1 # jag1の場合

〜省略(元のまま)〜
Write-Output -NoEnumerate $jag
}

309 :デフォルトの名無しさん:2018/01/11(木) 05:37:21.95 ID:z0XvJ0+n.net
>>308
訂正
$jag2の右辺の最初のコンマ演算子いらないわ取り除いて
これだと最初の要素がさらに配列に包まれてしまう
なかなか一貫性のある書き方が難しいね

310 :デフォルトの名無しさん:2018/01/11(木) 08:50:32.05 ID:DUtiDslL.net
PowerShell Core 6.0: Generally Available (GA) and Supported!
https://blogs.msdn.microsoft.com/powershell/2018/01/10/powershell-core-6-0-generally-available-ga-and-supported/

311 :デフォルトの名無しさん:2018/01/12(金) 00:35:51.74 ID:9OW8M9wc.net
>>307
ありがとうございます。
実装(=仕様?)が変なんですね。
VBScriptのarrayのような順序付き汎用コンテナとして使うつもりでいましたが
他の手段も考えてみます。

312 :デフォルトの名無しさん:2018/01/12(金) 20:29:55.97 ID:05Vmz+vo.net
MacやLinuxでも動作する「PowerShell Core 6.0」が一般公開 - 窓の杜
https://forest.watch.impress.co.jp/docs/news/1100633.html

最強や

313 :デフォルトの名無しさん:2018/01/14(日) 13:52:57.20 ID:hvH7W8Dy.net
どうせならXPにも対応して欲しいな
古いマシン再利用できるかもしれん

314 :デフォルトの名無しさん:2018/01/14(日) 15:04:00.85 ID:h026DvON.net
OSSなんだからforkして自分でやればいい

315 :デフォルトの名無しさん:2018/01/14(日) 22:54:52.40 ID:rBzJ4J2v.net
まずは.NET Coreのforkからだな

316 :デフォルトの名無しさん:2018/01/20(土) 14:22:45.53 ID:5CcUAB6E.net
まとめ
PowerShell使いにくい

317 :デフォルトの名無しさん:2018/01/20(土) 15:07:18.35 ID:eJTcatAc.net
>>316
おバカ自慢は要らない

318 :デフォルトの名無しさん:2018/01/20(土) 20:09:32.77 ID:tb/5wFRb.net
馬鹿には使いこなせいPowerShell。つまりゴミ。

319 :デフォルトの名無しさん:2018/01/20(土) 20:12:33.64 ID:aYLVMpQq.net
> 使いこなせい
日本語もまともに書けない馬鹿 = >>318 は使えないってことか w

320 :デフォルトの名無しさん:2018/01/20(土) 20:18:39.25 ID:tb/5wFRb.net
そのとおり。馬鹿には使いこなせないPowerShell。vi並の粗大ゴミ。
WSH捨てたことを一生後悔することだろう。というかPowerShellなど普及することはない。WPF並の生ゴミ。悪臭がする。

321 :デフォルトの名無しさん:2018/01/20(土) 20:28:37.35 ID:CFAgCrzx.net
俺は使えるからなんの問題もない

322 :デフォルトの名無しさん:2018/01/20(土) 20:32:52.77 ID:tb/5wFRb.net
ほぼサーバ用途なのに自分だけ使えれば問題ないとか保守のことを全く考えないおれ天才君が作ったもの。

それがPowerShell。普及するわけがない。

323 :デフォルトの名無しさん:2018/01/20(土) 20:38:49.39 ID:CFAgCrzx.net
ごめんな、うちの会社は普通にみんな使えてるから w
底辺は色々大変だね
あとサーバー用途だけじゃなくて、ちょっとしたテキスト処理とかでも便利に使えるし
まあついていけない人はWSH使ってりゃいいんじゃね?

324 :デフォルトの名無しさん:2018/01/20(土) 21:28:13.84 ID:tb/5wFRb.net
嘘だね。使えてない奴が使えてるフリしてるだけ。そういうバグあり馬鹿コードを多くの大手SIerの保守案件で散々見てきた。
MSが提供するサンプルコードすら惨いときもあるのにおまえの会社だけは「普 通 に み ん な 使 え て る」という。

キミの口はジョブス並みだな。

325 :デフォルトの名無しさん:2018/01/20(土) 21:36:04.82 ID:87fvh5f6.net
PS万歳とは言わないけど
何出して来るかと思ったら結局WSHかよ…

326 :デフォルトの名無しさん:2018/01/20(土) 21:42:56.41 ID:tb/5wFRb.net
PowerShellを出すならNT4.0のときだったんだよ。昔のMSは互換性、保守を重要視してくれた。
ゲイツがいなくなって今ではまるでジョブスのように切り捨ての王様になってしまった。直にPowerShellもなかったことになるだろう。

もはやMSの凋落は必至。

327 :デフォルトの名無しさん:2018/01/20(土) 21:57:45.42 ID:ea7nxeEz.net
必死だな

328 :デフォルトの名無しさん:2018/01/21(日) 08:08:27.81 ID:rQmHQ7OM.net
>>326
> 直にPowerShellもなかったことになるだろう。
すでにオープンソースになっててLinuxですら動くことも知らないんだろうな w

329 :デフォルトの名無しさん:2018/01/21(日) 11:13:24.09 ID:W6oArJxs.net
MSがオープンソースにするものは捨てたということ

330 :デフォルトの名無しさん:2018/01/21(日) 11:17:54.20 ID:xo2ueQrN.net
ねーよwww

331 :デフォルトの名無しさん:2018/01/21(日) 11:28:24.25 ID:oGuWm1pn.net
>>329
ならWSHは安泰じゃん良かったな

332 :デフォルトの名無しさん:2018/01/21(日) 11:49:34.94 ID:mkWKfEkb.net
>>328
それだが、PowerShellはクソ言語と、悪いけど俺も思っていて、それでも使うのは素のMS-Windowsに載っていて、Windows操作に必要だからでしかないんだよね。
こんなモノのLinuxやMac版を誰が使うんだろう。
まともなC言語環境のあるLinuxやBSD(Mac)でC#みたいな劣化言語を使いたい人なんていない。PSも同様だと思うので、一体誰に向けた動きなのかと。

333 :デフォルトの名無しさん:2018/01/21(日) 12:00:01.51 ID:uiiSY3P/.net
>>332
理解できない言語を糞認定 w
どこが糞か書いてみ

334 :デフォルトの名無しさん:2018/01/21(日) 12:32:28.85 ID:JwhmWwix.net
PowerShellはPerlを弄ってた時のワクワク感を思い出させる。
「折衷主義者のガラクタ」って揶揄されてたPerlに似てるところが好きだ。

335 :デフォルトの名無しさん:2018/01/21(日) 15:36:03.00 ID:SnOHZgOX.net
で、LinuxのPerlに勝てると?

336 :デフォルトの名無しさん:2018/01/21(日) 16:04:27.13 ID:U0dzqAVa.net
しょーもな低スキルの低能丸出しのレスばっか
中身のある技術的な話を誰一人できないっていう

337 :デフォルトの名無しさん:2018/01/21(日) 16:06:20.87 ID:W6oArJxs.net
これは見てて恥ずかしいタイプのマウンティング

338 :デフォルトの名無しさん:2018/01/21(日) 16:11:36.64 ID:jvKKFqi6.net
おバカ自慢とか変な自治厨が住み着いてて居心地悪いわ
使いにくいのは事実なんだから仕方ねーじゃん

339 :デフォルトの名無しさん:2018/01/21(日) 16:34:53.49 ID:rQmHQ7OM.net
>>338
> 使いにくいのは事実なんだから仕方ねーじゃん
お前にはそうなんだろうな...

340 :デフォルトの名無しさん:2018/01/21(日) 16:40:03.11 ID:W6oArJxs.net
そもそもオープンソース化して喜ぶとかウニ厨でしょう。

341 :デフォルトの名無しさん:2018/01/21(日) 17:16:23.83 ID:Nniit6aA.net
>>338
おバカ自慢て言われた程度で自治厨とか繊細すぎるな
あんた2chに向いてないと思う

342 :デフォルトの名無しさん:2018/01/22(月) 03:30:40.49 ID:xAzFKy/K.net
馬鹿だから使えない理論はvi厨の論法。使いにくいという事実を受け入れられない共産主義者。

343 :デフォルトの名無しさん:2018/01/22(月) 06:19:54.05 ID:DO9KWhZf.net
MS-Windowsのデバイスドライバ辺りをオープンソース化してくれるならともかく、PowerShellよりマシなものが沢山ある環境にこんな糞を投入されて喜ぶウニ厨なんていないでしょう。

344 :デフォルトの名無しさん:2018/01/22(月) 08:38:15.63 ID:ckfaCAxk.net
プレーンテキスト至上主義のunixで使えたところでそんなにうれしくないのは確か

345 :デフォルトの名無しさん:2018/01/22(月) 15:04:01.00 ID:xAzFKy/K.net
デバドラのサンプルソースは一通り揃ってるし、WDFはオープンソース化したというニュースを昔に見たが。
というかドキュメント整備したくないからソース見てくれって話だろう。つまり手抜き。
MSDNライブラリもスナップショットの提供を止めてから崩壊してるし。
無能PGが増えてコード品質の低下が止まらなくなってんだよ、今のMSは。

346 :デフォルトの名無しさん:2018/01/22(月) 17:12:28.75 ID:+/nnDvsj.net
>>342
だからどこが使い辛いんだよ、具体的に書いてみなよ
よくわからずに語ってるんじゃないんでしょ?

347 :デフォルトの名無しさん:2018/01/22(月) 18:06:37.00 ID:ITXp9HeA.net
>>>>346
Perl使ってみて、それでもPowerShellが良いって思うんならもう言うことは無いな

348 :デフォルトの名無しさん:2018/01/22(月) 18:29:53.43 ID:4bmxr+CG.net
結局具体的なことなにもいえないっていう
どの言語もろくに使えないのでは?
ご自慢のPerlつかってればいいと思うよ

349 :デフォルトの名無しさん:2018/01/22(月) 18:34:06.79 ID:ITXp9HeA.net
使える使えないの議論はしてないってことが根本から分かってない奴には困ったもんだ

350 :デフォルトの名無しさん:2018/01/22(月) 18:38:20.36 ID:4bmxr+CG.net
ほう、どうゆう議論してるの?

351 :デフォルトの名無しさん:2018/01/22(月) 21:27:41.78 ID:vYNLhkYR.net
そんなにPowerShellがクソなら、なんでGoogleがPowerShellモジュールを作ったりしてるんだよ

Cloud Tools for PowerShell
https://cloud.google.com/powershell/

352 :デフォルトの名無しさん:2018/01/22(月) 21:44:39.43 ID:qSpJOl7I.net
結論ありきの言い逃げがしたいだけだから、そもそも議論になってないだけだよ

353 :デフォルトの名無しさん:2018/01/22(月) 22:35:18.60 ID:4cUHC1qI.net
PowerShellは世界最強のシェル。
ただ使う人が少ない、使いこなせている人が少ないのがどうにも。

354 :デフォルトの名無しさん:2018/01/23(火) 17:18:34.01 ID:eZkYRvtN.net
googleはただのパクり屋。google様が使ってるから素晴らしいみたいな
マカーのような価値観の人がいるようだが、MSのほうがよほどマシ。

355 :デフォルトの名無しさん:2018/01/24(水) 08:44:25.19 ID:Rwufea/L.net
そもそもなんでPowerSherllの比較対象がperlなんだ?
bashとかのunixシェルなら分かるが

356 :デフォルトの名無しさん:2018/01/24(水) 18:20:30.45 ID:cTEKAhE2.net
bash じゃ正規表現や連想配列も使えないだろ


って言う老害でしょ

357 :デフォルトの名無しさん:2018/01/25(木) 01:53:04.89 ID:WgYpUAx2.net
よほどPowerShellが気になってるんでしょうね
わざわざ来るくらいだから

358 :デフォルトの名無しさん:2018/01/25(木) 01:54:46.25 ID:WgYpUAx2.net
>>351
AWSもいっしょだよ

359 :デフォルトの名無しさん:2018/01/25(木) 02:58:09.47 ID:bbltRTAq.net
大学とかで勉強し始めたばかりの奴が自分のOSや言語を作りたいって人いるじゃん。
そんな奴が作った感じするんだよね、PowerShellは。使う側のことを何も考えてないっていうか。

PowerShellには期待してたけど、残念賞あげたいレベル。

360 :デフォルトの名無しさん:2018/01/25(木) 03:06:11.90 ID:+aT+OEjK.net
まあMSがこれだけ時間をかけて普及させようとがんばってきたのにちっとも普及しなかったからな
さらに.NET FrameworkベースのPowerShellで頑張ってればいいのに.NET Coreベースに移行するのは吉とでるか凶と出るか

361 :デフォルトの名無しさん:2018/01/25(木) 03:34:37.44 ID:xdveLU72.net
>>359
具体的に

362 :デフォルトの名無しさん:2018/01/25(木) 04:38:12.97 ID:bbltRTAq.net
リボンUIとかメトロUIもそんな奴が作った感じするんだよね。今まで便利で不満なかったものが、
今からおれが考えたこれ使えと言いつつ自分は碌に使ってないから何が不便かすら理解していない。
結局移行してもらえず、無料にしたり、オープンソースにしたり。

363 :デフォルトの名無しさん:2018/01/25(木) 06:02:25.02 ID:9nHFvuML.net
>自分は碌に使ってないから何が不便かすら理解していない。

おまえがなーw
PowerShellのイケてないところはたしかにあるんだよ
でもお前はなにひとつ具体的にあげられないから議論にならない
典型的な批判してる俺かっこいいのプログラミング初心者だろうw

364 :デフォルトの名無しさん:2018/01/25(木) 08:46:52.90 ID:jzQbwnAF.net
>>359
たとえばどんなところ?

365 :デフォルトの名無しさん:2018/01/25(木) 09:23:56.11 ID:QMrii+Ei.net
>>362
リボン導入前のOfficeがどんなUIだったか知らないのか?

ttp://www.aoky.net/articles/david_pogue/images/toolbars.jpg

366 :デフォルトの名無しさん:2018/01/25(木) 14:44:54.00 ID:bbltRTAq.net
評判が悪ければすぐ撤回するのはゲイツの思想。
移行してもらえないのをユーザが馬鹿だからって基本ジョブスの思想なんだよね。
そもそもなんでそういう奴がWindows使ってるのか謎。Macでも使ってろよ。

まぁゲイツが引退してからのMSはまるでアップルだけどね。欠陥品のゴリ押しばかり。

367 :デフォルトの名無しさん:2018/01/25(木) 18:38:14.54 ID:AIlmNuXT.net
結局具体的な使い辛さも言えずにぶつぶつ独り言を言うだけかよ...

368 :デフォルトの名無しさん:2018/01/25(木) 18:57:51.13 ID:bbltRTAq.net
そういうことは移行を拒否した大勢の顧客に聞くべきだったのだ。ゲイツならそうした。
Vista、Office2007、Windows8、WPF、PowerShell、ワンボタンマウス・・・いくらでも例はある。

369 :デフォルトの名無しさん:2018/01/25(木) 22:18:43.13 ID:jzQbwnAF.net
---ここまで具体例なし---

370 :デフォルトの名無しさん:2018/01/26(金) 00:20:26.36 ID:2qREz52g.net
説明するまでもないこと
具体例云々繰り返す奴はLinux板で良く見かけるよ

371 :デフォルトの名無しさん:2018/01/26(金) 02:32:53.30 ID:hKoymMP7.net
結局、PowerShellって何がしたかったんだ?Unixシェルの駆逐?

372 :デフォルトの名無しさん:2018/01/26(金) 08:27:51.42 ID:sFu+Ex6E.net
>>371
Unixシェルの駆逐(笑)が目的ならbash on Windowsなんか作らないだろ…

373 :デフォルトの名無しさん:2018/01/26(金) 15:16:39.51 ID:cWhgmMyM.net
駆逐どころか、(Unixのログインシェルに移植版PowerShellを使えるか知らんが)PSのログインシェル人口が絶滅危惧種のcshに追いつけたら大成功だと思うよ。

374 :デフォルトの名無しさん:2018/01/26(金) 16:26:08.29 ID:kUBhdwT4.net
なにいってんだ
bash on windowsもMacやLinuxでのPowershellも開発用
普段LinuxやMac使ってる人がWinでも開発しやすくするため、逆もしかり
なんで追いつけたら大成功なんてアホなこと言ってんの

375 :デフォルトの名無しさん:2018/01/26(金) 17:35:08.99 ID:Lzw6elJ8.net
シェアの話はしちゃダメだよ(笑)

376 :デフォルトの名無しさん:2018/01/26(金) 20:00:31.74 ID:hKoymMP7.net
単純にMSはコマンドプロンプトを完全にPowerShellに置き換えようとしたの?

377 :デフォルトの名無しさん:2018/01/26(金) 20:03:32.03 ID:8m7gdhLr.net
>>370
> 説明するまでもないこと
説明できない奴の常套句 w

378 :デフォルトの名無しさん:2018/01/26(金) 22:11:48.50 ID:xXSIxAPE.net
Cmdlet適当に組み合わせるだけでもいろんな事ができて便利なので使ってるけど、正直構文はちょっとキモいと思ってる
JScript/WSHの延長でTypeScriptっぽくしたほうが良かったんじゃ

379 :デフォルトの名無しさん:2018/01/26(金) 23:57:01.40 ID:8m7gdhLr.net
>>378
> 正直構文はちょっとキモいと思ってる
そうか?
まあ == の代わりに -eq とかはちょい見辛い気はする
あと関数内で単なる式を書くと戻り値になるとかも慣れないと気持ち悪いな
でもそれより配列の扱いが特殊な方が気になる

380 :デフォルトの名無しさん:2018/01/27(土) 00:21:36.31 ID:+1W3UINk.net
なんだかんだと言いながら
PowerShell利用は急激に増えてるのは事実なんで
それでいいんじゃないの

381 :デフォルトの名無しさん:2018/01/27(土) 01:48:16.16 ID:gGfEZXbc.net
結局、PowerShellがどういう意図で開発されたんだ?
なんでこの程度の基本的な質問すら誰も回答しないでスルーする?

382 :デフォルトの名無しさん:2018/01/27(土) 02:15:12.60 ID:AI3Ijs7Y.net
開発から10年以上になるってのに今更過ぎる話題
http://www.atmarkit.co.jp/ait/spv/1003/11/news090_2.html

383 :デフォルトの名無しさん:2018/01/27(土) 03:12:23.79 ID:C3HeL8rM.net
powershell覚えようかと思ったけど、bash使えるようになったからもういいや

384 :デフォルトの名無しさん:2018/01/27(土) 04:46:17.42 ID:gGfEZXbc.net
> なぜ新しいシェルが必要なのか?
> 理由その1:コマンド・プロンプトの進化が限界に来ているため
> 理由その2:コマンド・プロンプトのバッチ機能が不十分であるため

内容にガッカリ。Widnwosは開発環境、IDEが強力でコマンドプロンプトを使う場面が限られている。
しかも既にWSHがあってバッチ処理で困ることもない。WSHは言語は自由なのにvbscriptを持ち出して記述が冗長とかいうアホ指摘。

> Microsoftはシステム管理用に特化し、優れたスクリプト機能もあわせ持つ新しいシェルを開発する必要に迫られたわけである。

その解決手段がなぜか、「システム管理用に特化」のシェル。
この程度の理由じゃそりゃ移行してくれないはずだわ。誰も必要に迫られてないのだから。
こんな恥ずかしい技術記事持ってくんなよ。おまえはこの記事でPowerShellの必要性に納得したのかよ。

385 :デフォルトの名無しさん:2018/01/27(土) 04:56:49.67 ID:1VJSvYbm.net
>>384
サーバー使ったことなさそう。

386 :デフォルトの名無しさん:2018/01/27(土) 06:38:42.80 ID:y60tdrG2.net
>>374
開発用シェルというものを初めて聞いた。
すまないが、それはどういう定義か教えて貰えないだろうか。

387 :デフォルトの名無しさん:2018/01/27(土) 07:42:12.61 ID:+IHcDO2K.net
まあ爺はbashなりWSHなりを使っときゃいいんじゃね
もう新しい技術を取り入れる能力無さそうだし w

388 :デフォルトの名無しさん:2018/01/27(土) 08:28:47.77 ID:AI3Ijs7Y.net
無理して移行する必要は無いよって言ってくれてるから安心して
https://technet.microsoft.com/ja-jp/scriptcenter/powershell_owner01.aspx

ただ初学者に無理してcmdとWSHを勉強させるのは勘弁して欲しい

389 :デフォルトの名無しさん:2018/01/27(土) 08:30:36.32 ID:m1Wg2epk.net
知ったかぶるなら、こういうのを見てからにしとけばよかったのに

使う気が無い人向けのPowerShell入門
http://karino2.livejournal.com/69885.html

390 :デフォルトの名無しさん:2018/01/27(土) 10:35:01.25 ID:ZgMGVzLO.net
>>388
いいこと書いてるけど自動車乗れるようになったら自転車に乗らなくなるのと同じでPowerShellに慣れたらわざわざVBScriptなんて使わんわな

391 :デフォルトの名無しさん:2018/01/27(土) 19:09:24.76 ID:gGfEZXbc.net
新しい技術、新しい技術連呼で具体例は一切なしか。まさに詐欺師ジョブスと同じ手法じゃん。

しつこく聞いてやって出てきたのがこれだからな。
http://www.atmarkit.co.jp/ait/spv/1003/11/news090_2.html

> 理由その1:コマンド・プロンプトの進化が限界に来ているため
> 理由その2:コマンド・プロンプトのバッチ機能が不十分であるため

さらに突っ込んだらこれが理由だとさ。
https://technet.microsoft.com/ja-jp/scriptcenter/powershell_owner01.aspx
> その一方で例外もあります。たとえば、Microsoft Exchange Server 2007 の管理を自動化する場合は、PowerShell を使う必要があります。

つまりMSの製品にあれこれ制限かけて無理やり移行させようとしてるだけ。まさにAppleと同じ切り捨て手法ですな。MSオワタ

392 :デフォルトの名無しさん:2018/01/27(土) 22:43:30.80 ID:ZgMGVzLO.net
>>391
> 新しい技術、新しい技術連呼で具体例は一切なしか。
ん?
ちょっと調べりゃすぐわかるだろうに...

・パイプにオブジェクトを渡せる
・スクリプトの癖に型を強制できる
・一部の処理でループを記述せずに配列を処理するできる (-eq 演算子とか switch 文とか)

393 :デフォルトの名無しさん:2018/01/28(日) 00:29:40.36 ID:bTKnHnST.net
> パイプにオブジェクトを渡せる

すごいようでこれがあまりにもすごくないんだよな。残念大勝の一番の理由がこれ。

394 :デフォルトの名無しさん:2018/01/28(日) 01:08:47.49 ID:WtZFLS3w.net
>>393
馬鹿すぎ

395 :デフォルトの名無しさん:2018/01/28(日) 01:50:52.35 ID:bTKnHnST.net
>>394
具体的に

396 :デフォルトの名無しさん:2018/01/28(日) 03:00:11.13 ID:WtZFLS3w.net
>>395
具体的って?
.NETにオブジェクトとして渡せるだけで十分だろ。

397 :デフォルトの名無しさん:2018/01/28(日) 03:20:34.63 ID:bTKnHnST.net
なにひとつ具体的にあげられないから議論にならないな
典型的な人を馬鹿にした俺かっこいいのプログラミング初心者だろう

398 :デフォルトの名無しさん:2018/01/28(日) 07:17:45.41 ID:7YQDaT33.net
シェルスクリプトで苦労したことがないんでしょうね

399 :デフォルトの名無しさん:2018/01/28(日) 08:24:55.62 ID:C2Jb//yt.net
>>393
https://technet.microsoft.com/ja-jp/scriptcenter/powershell_owner04.aspx
を見ても便利さを理解できない老害ならおとなしくWSHでVBScript使っとけばいいと思うよ w

400 :デフォルトの名無しさん:2018/01/28(日) 08:42:15.20 ID:MFdZtZMl.net
unixシェルは同じコマンドでも作者やバージョンによって出力フォーマットが違うことがあるのがゴミ
.netはecmaで標準化されてるからどの環境でも同じように使える

401 :デフォルトの名無しさん:2018/01/28(日) 09:07:27.12 ID:i85SWwCT.net
PSは今やWindowsのシェルと言うよりも.NETのシェル
そしてMSには.NET以外のDOS由来だのActiveX/COMに割けるリソースは無い
そもそもcmdやWSHは別者過ぎて学習の指針となるべき一貫性が無い

そもそも.NETに興味ないならしょうがないけどね

402 :デフォルトの名無しさん:2018/01/28(日) 10:35:46.87 ID:ZKF4cQEu.net
>>379
関数だと括弧をつけると配列を第一引数として渡したことになるところは毎回ハマる
メソッドの使用と混在すると特に
というかアレは関数じゃなくてcmdletだから、生成構文を区別して、関数は関数で別に作れたら良かったのに

403 :デフォルトの名無しさん:2018/01/28(日) 10:48:43.15 ID:5COUzF1g.net
>>379
それは自分が何に成れているか次第ででょうね
私だと==を使う言語自体使っていなかったので
-eq以前に==自体に違和感感じるんだわ

404 :デフォルトの名無しさん:2018/01/28(日) 10:56:03.92 ID:5COUzF1g.net
msはかつて大きなシェアをとった時代に独禁法で規制された
関係で他の環境への進出を長い間やれなかった(また控えていた)。
そのために他のプラットフォーム上では企業として進出しなかった。
今はそういう環境から解放されたので、他のプラットフォーム上に
積極的に出ることができるようになったという流れ。
今後は、どんどん出てくるよ。
うまく行くかどうかは別として。

405 :デフォルトの名無しさん:2018/01/28(日) 11:53:02.48 ID:qzyVH/BM.net
>>402
括弧と言うかカンマ ',' の扱いが独特なのと一次元配列に対する親切機能(お節介機能とも言う)のお陰で今でも混乱してる俺

>>403
日頃どんな言語使ってるの?

406 :デフォルトの名無しさん:2018/01/28(日) 11:55:33.58 ID:7JwYicqf.net
>>405
複数だけど、一番多いのはSASかな。

407 :デフォルトの名無しさん:2018/01/28(日) 12:18:28.19 ID:qzyVH/BM.net
SAS なんて聞いたこともないからよく知らんけど統計処理用の言語みたいだから PowerShell みたいな言語と比較されてもそりゃ違うだろとしか言えんわな

408 :デフォルトの名無しさん:2018/01/28(日) 12:25:37.17 ID:jpmSjP1r.net
>>407
まあ特殊な管理用途以外でShell使う必要がないので
大規模なレガシーデータ処理だとまともに処理できるソフトが
余りないので、DB構築の前処理などに大変便利してる。
PowerShellも便利にしてるよ。

409 :デフォルトの名無しさん:2018/01/28(日) 13:04:36.95 ID:NipuMoZC.net
LISPみたいな印字書式を定義しなかったせいでオブジェクト毎に出力が無茶苦茶なのがな
適当なシリアライズ/デシリアライズなコンテナを探してこないと

410 :デフォルトの名無しさん:2018/01/28(日) 13:14:16.78 ID:FWMaXZJR.net
これ、
> ・パイプにオブジェクトを渡せる
蛇蝎のように嫌われているのだろうと思っていたが、意外にもこの界隈では評価されているんだね。
型を意識する必要のある点や、-output-string(だっけ?)が要ることもあったりする点が、他OS移植版普及のネックだろうと思う。

411 :デフォルトの名無しさん:2018/01/28(日) 13:21:04.03 ID:C2Jb//yt.net
>>410
???
当然だけど文字列を渡すこともできるんだが...

412 :デフォルトの名無しさん:2018/01/28(日) 13:27:41.20 ID:jpmSjP1r.net
>>410
そうやってメリットデメリット出して考えてゆくのが
良いような気がするな。開発者自体が別プラットフォーム間での
移植性を考えているなら当然の問題として、それを考えていることに
なるので、じゃどういう考えを持っているか見て行くのも面白いと思う。

413 :デフォルトの名無しさん:2018/01/28(日) 13:31:58.78 ID:jpmSjP1r.net
>>411
一つはそれはあるね
とはいえPowerShellの良さを生かそうとすると
別な手段も考え(てくる)気がする。

ま、.NETドライブするのが大きな目的だから、別プラットフォーム間で
.NET同士でオブジェクトで渡す方向があるでしょうね。

414 :デフォルトの名無しさん:2018/01/28(日) 14:05:22.62 ID:5h4UQWxR.net
>>409
Format-*の中から状況ごとに都合のいいのを選べばいいだけじゃないの?
自分で規定のフォーマットを定義してもいい

Format コマンドを使用した出力ビューの変更
https://docs.microsoft.com/ja-jp/powershell/scripting/getting-started/cookbooks/using-format-commands-to-change-output-view
about_Format.ps1xml
https://technet.microsoft.com/ja-jp/library/hh847831.aspx

415 :デフォルトの名無しさん:2018/01/28(日) 14:24:26.21 ID:vzdSAj0J.net
自分は事務職で、PowerShellを少しだけ使ってるんですけど、便利だなあと思う反面、
難しくてしんどいことも多いです。

最初にPowerShellを使ってみたのは、業務システムから出力されるCSVから、データの抽出をしたときです。
CSVのカラムが数百列あるうえに、下っ端の私が知らぬ間に仕様がたまに変わる。
(新規カラムがいくつか追加されている。しかもそれらが既存カラムの間に挿入されている)
そのCSVから複数条件で抽出するのに、以前はエクセルで毎回難儀してたのが、
2時間くらいかけて文法のさわりを勉強してPowerShellを使ってみたら超楽ちん!

それからはもう少し勉強して、Webからデータをとってきたり、毎度決まりきったファイルのリネームと移動、
みたいなことにも便利に使ってます。

しんどいのは、挙動の予測が難しい場合が多々あることです。
他の言語(VBA、C#)も少し勉強したことがあるのですが、初心者にわかりづらい挙動の多さという意味では
PowerShellが一番難しいです。
ちょっとしたことをするのにも大抵1つ2つ罠にはまって、毎回悩みながら解決する羽目になります。

そして文法はなんだか覚えづらい。
ここ何か月か新規スクリプトを作る機会がなかっただけでだいぶ忘れてしまいました。

OSに付属していることだし、職業プログラマーじゃない人も使うことを考えて、
できればもう少しシンプルで覚えやすい仕様にしてほしかった。

416 :デフォルトの名無しさん:2018/01/28(日) 14:27:55.14 ID:jpmSjP1r.net
>しんどいのは、挙動の予測が難しい場合が多々あることです。
>ちょっとしたことをするのにも大抵1つ2つ罠にはまって、
>毎回悩みながら解決する羽目になります。

そういうのを、ここに質問する場にしたらどうでしょ。

417 :デフォルトの名無しさん:2018/01/28(日) 15:12:22.02 ID:vzdSAj0J.net
>>416
ありがとうございます。
またハマってしまうことがあったら質問させていただきます。

418 :デフォルトの名無しさん:2018/01/28(日) 15:25:45.79 ID:C2Jb//yt.net
>>415
> 2時間くらいかけて文法のさわりを勉強してPowerShellを使ってみたら超楽ちん!
2時間とか超優秀な部類じゃね?

> 初心者にわかりづらい挙動の多さという意味では
> PowerShellが一番難しいです。
まあこれはあるわな
便利さとのトレードオフもあるけど配列回りはちょっとやり過ぎな気もする
・-eq とかがフィルター演算子になる
・switch に配列渡すと自動的に全要素を処理する
等々...

419 :デフォルトの名無しさん:2018/01/28(日) 15:27:16.79 ID:zxtgYYNU.net
>>417
なんか利用されるのに適したcmdletあったら便利という気がするもので
いまC#で関数(dll)にして、ちまちまと自分ツールにしてます。
dllにすれば、そのまま.netクラスになるので、C#でもPowerShellでも
(使ってないけどvbでも)共用できるんで。
あと、海外のサイトにはいろいろ転がってるみたいなもので。

420 :デフォルトの名無しさん:2018/01/28(日) 19:58:23.05 ID:bTKnHnST.net
>>399
なるほど。最近勉強を始めて歴史を知らないからすげーと思ったわけか。
パクり屋のジョブスを革新、すげーと思う若者みたいなものだな。
UNIXではオブジェクト間通信の普及に失敗したけど、Windowsでは20年前に成功しているんですよ。
もう一度なぜオブジェクト思考が必要になったか歴史を勉強してくださいな。これは歴史の逆行ですよ。

421 :デフォルトの名無しさん:2018/01/28(日) 20:37:11.09 ID:C2Jb//yt.net
>>420
> Windowsでは20年前に成功しているんですよ。
おそらくDDE辺りの話を知ったかしてるんだろうけど全く違う話だから w

422 :デフォルトの名無しさん:2018/01/28(日) 20:46:58.89 ID:aNbuPTeM.net
「ファイルサイズ1MB以上のファイルをTEMPフォルダに移動する」
という処理をそのまま書き下せるのがシェルでオブジェクトを扱える利点
凄い事ではなくて、単にやりたいことをより自然に書けるようになるってだけ
下らないテキストの加工やマジックナンバーが減って読みやすくなる

423 :デフォルトの名無しさん:2018/01/28(日) 20:48:14.20 ID:OJ4BeXJh.net
>>415
> そして文法はなんだか覚えづらい。
> ここ何か月か新規スクリプトを作る機会がなかっただけでだいぶ忘れてしまいました。

文法覚えづらいか?統一されてるからちょっと覚えるだけだと思うが。
補完も使ってないとかいうオチでは

424 :デフォルトの名無しさん:2018/01/28(日) 20:52:05.30 ID:C2Jb//yt.net
その程度なら unix の find コマンドでできる
逆に言うとオブジェクトを渡せなかったから find コマンドが色々なフィルター機能を持つ必要があったと言うことでもある

425 :デフォルトの名無しさん:2018/01/28(日) 21:00:28.05 ID:bTKnHnST.net
>>421
20年前はIE4アップデートの話だよ。Windowsが一気にCOM化したんだよw
なんでDDEが出てくるんだよw これだからUNIX屋は今でも20年遅れてる。
ストリームにオブジェクト流すなんて昔から普通に行われているのに、
シェルでオブジェクト流せるパイプライン!! 最新の技術!!! 老害は便利さを理解できない!!! だもんなぁ。

426 :デフォルトの名無しさん:2018/01/28(日) 21:07:16.09 ID:C2Jb//yt.net
>>425
20年前の話を後生大事を覚えてる老害乙 w
COMの話がどう関係するのか知らんけどストリームにオブジェクトを流せるとかはもう少し具体的に書いてもらえるかな

427 :デフォルトの名無しさん:2018/01/28(日) 21:28:00.62 ID:4reZ7e7j.net
ストリームにオブジェクト流すなんて昔から普通に行われている(笑)
そのわりにはあんたの大好きなWSHにはTextStreamはあるけどObjectStreamなんてものは見当たらないよね

428 :デフォルトの名無しさん:2018/01/28(日) 21:30:48.62 ID:7YQDaT33.net
同じような話をぼんやりした理解のまま混ぜてやってるから
誰が何を応援してるのかさっぱり分からん

429 :デフォルトの名無しさん:2018/01/28(日) 21:31:00.82 ID:cl7B8Mzd.net
>>405
今でもっていうがもうずっと前から同じヤツが言ってるだろ
5人はいないと思う

430 :デフォルトの名無しさん:2018/01/28(日) 21:31:06.24 ID:7kR+joeD.net
その人ジョブズがーゲイツがーとか意味不明な話ばっかで
突っ込まれることにびびって具体的なこと何も言えない人だから
構ってもしょうがないよ
XP最高秀丸最高とか言ってる老害と同類じゃないかな

431 :デフォルトの名無しさん:2018/01/28(日) 22:17:45.22 ID:bTKnHnST.net
> COMの話がどう関係するのか知らんけどストリームにオブジェクトを流せるとかはもう少し具体的に

ここまでド素人丸出しの質問されてもね。
C++でもCOMでもMFCでもC#でも.netでもオブジェクト思考に関連する技術書なら書いてるでしょってレベル。

それが自称デシタルネイティブで老害連呼だからね。
安っぽいブログ風の記事ばかり読んでないでMSの公式解説書を全部読めよ。知識薄すぎなんだよ、小便垂れ。

432 :デフォルトの名無しさん:2018/01/28(日) 22:20:25.43 ID:E2yhzBE8.net
ストリームてPSのコマンド群は単なるクラスライブラリなんだが…

433 :デフォルトの名無しさん:2018/01/28(日) 22:22:11.60 ID:C2Jb//yt.net
>>431
具体的に書けないなら黙ってろよ w

434 :デフォルトの名無しさん:2018/01/28(日) 22:29:49.73 ID:bTKnHnST.net
>>433
MSの基幹技術のCOMすら理解してなかったのになんでおまえはそんなに偉そうなの?
若さゆえの過ちというものを認めたくないのは分かるが背伸びし過ぎではないか。

435 :デフォルトの名無しさん:2018/01/28(日) 23:01:58.57 ID:pCbikq+O.net
シェルスクリプトでは、複雑なプログラミングは無理だから、PowerShell になる。
それよりもさらに複雑になると、Ruby になる

だから、Vagrant, Chef, Homebrew などの環境構築ツールは皆、Ruby で作られている

436 :デフォルトの名無しさん:2018/01/28(日) 23:24:29.92 ID:aNbuPTeM.net
一つのコマンドが肥大化してカオスになったのがこれまでのシェルだから、それに慣れてしまってる人は良さが分かりにくいだろうね
コマンドに引数渡す時に頭につけるのは / なのか - なのか -- なのか、順番はあるのかないのか
そういうところを初めに統一しておいたのが地味にPSのいいところだと思う

437 :デフォルトの名無しさん:2018/01/29(月) 05:04:35.04 ID:LFybAfxw.net
>>434
オブジェクトをパイプに流す話とCOMなんて関係ないだろ w
そんなのはどうでもいいからお前は
> ストリームにオブジェクト流すなんて昔から普通に行われている
の具体例書けよ

438 :デフォルトの名無しさん:2018/01/29(月) 05:26:47.04 ID:NLT8o8lu.net
ああ静かだと思ったら寝てたのね

439 :デフォルトの名無しさん:2018/01/29(月) 06:55:48.03 ID:rL5UybAs.net
>>436
> コマンドに引数渡す時に頭につけるのは / なのか - なのか -- なのか、順番はあるのかないのか
> そういうところを初めに統一しておいたのが地味にPSのいいところだと思う
それには同意、ヘルプも充実してるし
あと引数の型チェックとかヘルプをスクリプト内に書ける機能とか良くできてると思う

440 :デフォルトの名無しさん:2018/01/29(月) 10:31:25.70 ID:lrRcQbVC.net
コマンドレットのネーミングルールもあるのでそのあたりは楽だな。
考えてみれば旧来のshell言語は、覚えちゃったから使えるという
ところだもんな。

441 :デフォルトの名無しさん:2018/01/29(月) 10:33:16.34 ID:6aL5W79g.net
コマンドオプションはヘルプしっかりしてるし扱いもParamだけで楽チンでいいけど、演算子とメンバ関数が混在してくると何かもにょる
配列とか文字列の演算子多いし余計な変換するし

442 :デフォルトの名無しさん:2018/01/29(月) 15:58:03.39 ID:6RiX0lFa.net
>>435
LinuxではPythonじゃね?

443 :デフォルトの名無しさん:2018/01/29(月) 16:35:46.17 ID:6RiX0lFa.net
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=43441&forum=7
> OLE1.0の時代は、DDE(Dynamic Data Exchange)をベースアーキテクチャとしていました。
> OLE2.0(現在)では、COM(Component Object Model)をベースアーキテクチャとしています。
> そのCOMは、プロセス間通信に RPC(Remote Procedure Call)を利用しています。

https://msdn.microsoft.com/ja-jp/library/ms538074(v=vs.85).aspx
> Text Services Framework を使用することにより、アプリケーションのテキスト ストリームにオブジェクトを埋め込むことができます。

https://docs.oracle.com/javase/jp/7/platform/serialization/spec/output.html#933
> クラス ObjectOutputStream は、オブジェクト直列化を実装します。
この直列化は20年ほど前からあるっぽい。

https://ja.wikipedia.org/wiki/Java#実行環境の構成
> シリアライズ(serialization、オブジェクト直列化):
 オブジェクトの参照をたどって関連するオブジェクトをまとめてバイトストリームにすることができる。
 そのストリームをファイルに書き込めば、オブジェクトの状態をそのまま保存(永続化)できる。

でっていう。

444 :デフォルトの名無しさん:2018/01/29(月) 22:51:09.85 ID:wqG3dXej.net
プロセス間でオブジェクトを受け渡すのは前からあったけど、シェルでサポートしてめっちゃ簡単に扱えるようになったのが利点じゃないの?

445 :デフォルトの名無しさん:2018/01/30(火) 08:14:39.85 ID:GJ8uq/eW.net
PowerShellのコマンドってオブジェクトをパイプに流すときにいちいちシリアライズとかしてるのか?

つーか

446 :デフォルトの名無しさん:2018/01/30(火) 08:40:22.15 ID:gBU+LQhN.net
>>445
知りたきゃソース見ればいいかと

447 :デフォルトの名無しさん:2018/01/30(火) 11:33:08.90 ID:V86e/eZu.net
>>445
してないと言うかPSのコマンドはいちいちプロセス作ったりしない

448 :デフォルトの名無しさん:2018/01/30(火) 15:53:11.19 ID:LMuo1Zyp.net
>>445
そんなことせずに、直接やり取りできるところが
いいところだもんね。

449 :デフォルトの名無しさん:2018/01/30(火) 16:33:15.23 ID:3+EGv0E9.net
失礼、噛みマミった。

>>443 の下半分は、Java言語の話です。
MS以外は昔からあるというので検索してみました。

.net は Java をパクって作っているけど
MSがJavaを使えなくなったのは、
開発スピードがMSのが早くて仕様を勝手に作ってしまうので
かじ取りをSUNがするために裁判を起こして差し止めたからなので
Javaが最初の実装なら、MSもほぼ同時期に同様の実装をしていることになる。

450 :デフォルトの名無しさん:2018/01/30(火) 16:43:32.50 ID:3+EGv0E9.net
そうやってせっかくJavaの仕様を統一したのに
GoogleがAndroidに組み込んだのはJavaもどき。
おかげでCPUのJava命令を使えず、ソフトウェアエミュレーションしてて無駄にCPU食って遅いとか。

.net が ARM の Java 命令で実行できるようになったらすごいけど・・・

451 :デフォルトの名無しさん:2018/01/30(火) 19:45:29.59 ID:m1sp0N+k.net
>>447
どこからプロセスが出てきたんだ?

452 :デフォルトの名無しさん:2018/01/30(火) 20:56:43.36 ID:N5bBVQCj.net
android登場時からjazilleで動いてるi-appliなんかより断然早かったと思うけど

453 :デフォルトの名無しさん:2018/01/30(火) 21:56:58.31 ID:XEZ388GX.net
>>451
>>443がプロセス間通信云々言ってるからじゃね?
PowereShellのコマンドレットをパイプでつなげるときは
powershell.exeのプロセスだけで完結しててプロセス間通信しないから
シリアライズの必要もない

454 :デフォルトの名無しさん:2018/01/31(水) 21:07:01.54 ID:dWxBIZCx.net
ETH-w

455 :デフォルトの名無しさん:2018/02/03(土) 13:46:03.51 ID:Rohe4eLB.net
ipmo ちんこ
でちんこをパイプカットできるのは評価したい

456 :デフォルトの名無しさん:2018/02/12(月) 22:00:10.19 ID:spwyngle.net
使用頻度高いのに[pscustomobject]っていちいち全部手打ちしないといけないのがまどろっこしい
タブ補完か[pco]とかに省略できるかどっちかやってほしい

457 :デフォルトの名無しさん:2018/02/14(水) 07:28:57.51 ID:xNlz1dTb.net
外部プログラムのウインドウサイズを変更するのは、.Net Frameworkの機能だけでは無理なんですかね。

458 :デフォルトの名無しさん:2018/02/14(水) 22:12:05.64 ID:NrdtujHN.net
>>457
その質問自体がちょっとおかしいので
もう少し具体的に話してみて。

459 :デフォルトの名無しさん:2018/02/15(木) 11:16:12.91 ID:bNKwK/bs.net
Invoke-Sqlcmdコマンドを使って、データベースにINSERTやDELETEの結果を取得できる方法をどなたか教えて頂けませんでしょうか?

コマンドプロンプトでsqlcmdを使うと「(1 行処理されました)」等が表示されます。これを取得したいです。

460 :デフォルトの名無しさん:2018/02/15(木) 13:05:03.45 ID:4lKXUWzM.net
>>457
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--begin-maximized')

driver = Selenium::WebDriver.for :chrome, options: options

driver.navigate.to "〜URI〜"
driver.manage.window.maximize # 画面最大

Windows10, Ruby, Selenium::WebDriver::Chrome で、
ブラウザの自動操作を実行してるけど、画面を最大にできる

もちろん、画面サイズも変更できる

461 :デフォルトの名無しさん:2018/02/15(木) 15:41:36.95 ID:sVUOkVXF.net
Selenium使っているなら、PowerShellからSeleniunつかう
のじゃまずいのかな。

462 :デフォルトの名無しさん:2018/02/15(木) 17:01:21.28 ID:4lKXUWzM.net
シェルスクリプトよりは、PowerShell が良いけど、
これより複雑なものは、Ruby が良い

サクサク、プログラミングできて、バグが少ないのは、Rubyが断トツ!

Enumerable のメソッドが充実してる

463 :デフォルトの名無しさん:2018/02/15(木) 17:07:26.96 ID:4lKXUWzM.net
Selenium WebDriver は、PowerShell では出来ない

使えるプログラム言語は、Java/C#/Ruby/Python/Javascript

464 :デフォルトの名無しさん:2018/02/15(木) 18:02:19.40 ID:ZXhM7ba9.net
出来ますよ

465 :デフォルトの名無しさん:2018/02/15(木) 18:18:56.65 ID:ZXhM7ba9.net
>>463
それ、C#と書いてあるけど
.NETと解釈したらいいんですよ
それだけ。
それが.NETの良いところ

466 :デフォルトの名無しさん:2018/02/16(金) 07:20:11.08 ID:shLmPi2M.net
Win7 SP1 PowerShell 2.0の環境に隔離されたんだけどPSでGUIやるとしたら.NET 4.0のWinFormsが妥当?
セルフホストのHttpServerがあるならばブラウザアプリにするんだけどPS 2.0 .NET 4.0だとまだないよね

467 :デフォルトの名無しさん:2018/02/16(金) 15:20:24.69 ID:nkfY21W7.net
Windows7 SP1なら https://github.com/PowerShell/PowerShell/releases から
2018/01/25公開のPowerShell Core 6.0.1を入手し、今の内に慣れておくほうがいいのでは?

468 :デフォルトの名無しさん:2018/02/16(金) 16:51:14.69 ID:jq0LJPC+.net
>>467
『隔離された』と書いてあるんで
そうしなくてもできないという話じゃないの?

469 :デフォルトの名無しさん:2018/02/16(金) 19:11:11.01 ID:pw8u3FlN.net
そうです
ネットは監視されてます
インストールも自由にできません

470 :デフォルトの名無しさん:2018/02/16(金) 19:31:53.38 ID:jq0LJPC+.net
しかし、今後のネットなどを考えると
新たな発想の仕組みが出現してこないと
不自由でしかたないね。
いたちごっこの繰り返しだもんね。

471 :デフォルトの名無しさん:2018/02/16(金) 22:10:13.50 ID:pdOGHn5a.net
リモートで別のPCを操作したいという要求がある限り穴は無くならないのでは?

472 :デフォルトの名無しさん:2018/02/16(金) 22:42:52.85 ID:vp1KbUn5.net
今のところ、ネットがある限り穴はあるというところ。
でも今後ないと困るわけだからね〜。

それに対応する暗号利用技術は考えられているんだが
まだ実用化されないし。
といっても暗号化も対処技術に他ならないしね〜〜

473 :デフォルトの名無しさん:2018/02/16(金) 22:57:24.63 ID:TT/12OsV.net
>>448
してる決まってるだろ。いくらなんでも素人杉。

474 :デフォルトの名無しさん:2018/02/17(土) 01:10:35.41 ID:YxQ+FKPw.net
わたし448じゃないけど、基本してないでしょ。

475 :デフォルトの名無しさん:2018/02/17(土) 09:26:10.93 ID:RP1Lckbc.net
GUIだんだんわかってきた
WPFが動くからFormsよりWPF使うほうが簡単だった
別ファイルにXAMLとViewMode(C#)を書いてXamlReaderでパース、Add-Type
しかし今のところPowerShellスクリプトの出番がほとんどない
PSCustomObjectをバインドできれば使えるのかな

476 :デフォルトの名無しさん:2018/02/17(土) 09:31:46.64 ID:AgYT9x+M.net
>>475
私は、WPF利用して逆にPowerShellの出番がガンガン増えてるよ〜。

477 :デフォルトの名無しさん:2018/02/17(土) 14:55:08.94 ID:O2aJXn1j.net
.NET Coreには、WPF無いけどPowerShell CoreからWPF使えるのかな?

478 :デフォルトの名無しさん:2018/02/17(土) 15:32:09.98 ID:tJC3jvlA.net
んなわけない

479 :デフォルトの名無しさん:2018/02/17(土) 16:33:07.35 ID:/8k93ROr.net
>>475
簡単なGUIならXAMLもPowerShellに書いちゃえばいいじゃん?

480 :デフォルトの名無しさん:2018/02/18(日) 00:25:57.67 ID:mfQi5O1f.net
Visual StudioでWPF設計して
そのxamlをそのまま読みこんでPowerShellの表示に使えるように
PowerShell関数作ってます。
結構簡単に出来るよ

481 :デフォルトの名無しさん:2018/02/18(日) 07:28:07.73 ID:Stb7rhur.net
>>480
エライエライ

482 :デフォルトの名無しさん:2018/02/18(日) 21:06:46.31 ID:HOomNEjj.net
PowerShellで作る時に、使う最強のエディタは?

483 :デフォルトの名無しさん:2018/02/18(日) 22:10:00.84 ID:JlUJeRgg.net
VSCode

484 :デフォルトの名無しさん:2018/02/19(月) 00:49:35.13 ID:PsquRqu/.net
edlin

485 :デフォルトの名無しさん:2018/02/19(月) 05:38:51.91 ID:p/IhV2LV.net
>>482
VSCodeが決定版
やっぱ同じMS製だし
他言語でも使える

486 :デフォルトの名無しさん:2018/02/21(水) 21:50:44.89 ID:sytXW6IH.net
excelの選択範囲をpowershellに渡す方法教えて
ファイルに出力→powershellサブプロセス
はダサいから無しで

487 :デフォルトの名無しさん:2018/02/22(木) 03:26:54.69 ID:hk+HnqcW.net
$excel=New-Object -ComObject Excel.Application
$excel.Visible=$true
$wokbook=$excel.workbooks.open("なんとか.xlsx")
$woksheet=$wokbook.ActiveSheet
$actCells=$excel.Selection

488 :デフォルトの名無しさん:2018/02/22(木) 03:28:18.65 ID:hk+HnqcW.net
要は、最後の1行
$actCells=$excel.Selection

489 :デフォルトの名無しさん:2018/02/24(土) 01:27:05.92 ID:u/AYofsf.net
そういうのでよく使うのはGetObjectの方だと思う

490 :デフォルトの名無しさん:2018/02/24(土) 02:25:42.58 ID:EfAIzsYg.net
エクセルついでに、
csvをエクセルで開いて配列に一気に取り込んで、それをxlsx形式で新規保存する方法教えて。

491 :デフォルトの名無しさん:2018/02/24(土) 05:43:27.81 ID:4C8nRMYU.net
$excel=New-Object -ComObject Excel.Application
$excel.DisplayAlerts=$false
$workbook=$excel.workbooks.open(”入力path\なんとか.csv")
$workbook.SaveAs("保存path\かんとか.xlsx",51)
$workbook.Close()
$excel.Quit()

492 :デフォルトの名無しさん:2018/02/24(土) 09:43:41.67 ID:tzORDq38.net
ありがとう。
エクセルで開くときはcsv importみたいなコマンドレットは必要ないのね。その辺が調べてもよく分からなかった。

なお、配列にはデータ取り込んでる?
@()に入れる方法がよく分からん。
vbsだとarray=sheet.usedrange でできるけど。

493 :デフォルトの名無しさん:2018/02/24(土) 10:16:12.10 ID:4C8nRMYU.net
>>492
ごめん、いま明日の引っ越し準備で
対応できない。

494 :デフォルトの名無しさん:2018/02/24(土) 12:22:39.31 ID:NyTmnWgI.net
$array = $sheet.UsedRange.Value2
で良いんじゃね

495 :デフォルトの名無しさん:2018/02/24(土) 15:03:06.06 ID:EfAIzsYg.net
なるほど。
powershell だからパイプライン使うイメージだったけど、エクセル操作ではあまり使えない感じなんだね。

496 :デフォルトの名無しさん:2018/02/24(土) 15:07:47.88 ID:9oN2QzaC.net
20年近く前にvbscriptで散々やったものを今必死にPowerShellで再現してる最中なのか。

497 :デフォルトの名無しさん:2018/02/24(土) 22:59:13.75 ID:EfAIzsYg.net
ほんとそんな感じ。
サーバー管理するわけでもないなら、powershell そんなに覚える必要ないかな。ただパイプラインは面白いと思う

498 :デフォルトの名無しさん:2018/02/25(日) 00:32:11.83 ID:01COGLgI.net
ファイル操作には便利だよ
単機能のツール探すよりPSで書いた方が早いこと多い

499 :デフォルトの名無しさん:2018/02/25(日) 01:39:02.81 ID:pcyqC+jB.net
PowerShell より複雑なものは、Ruby を使え

Rubyから、Excel を扱うライブラリも、色々あるみたい

500 :デフォルトの名無しさん:2018/02/25(日) 01:40:14.58 ID:bSC8YYTG.net
>>499
Excelならc#で十分だわ

501 :デフォルトの名無しさん:2018/02/25(日) 01:46:43.42 ID:xNv2PYt4.net
pythonスレやpowershellスレでひたすらrubyすすめてくるキチガイはなんなんだw

502 :デフォルトの名無しさん:2018/02/25(日) 03:34:56.38 ID:X5QEzlQF.net
>>499
COM経由で一緒

503 :デフォルトの名無しさん:2018/02/25(日) 04:58:27.12 ID:5ohi2TD0.net
なんかrubyはずっといる

504 :デフォルトの名無しさん:2018/02/25(日) 04:58:51.59 ID:5ohi2TD0.net
>>500
VBAだろ

505 :デフォルトの名無しさん:2018/02/25(日) 06:53:28.67 ID:579ZQdUK.net
>>500
System.Runtime.InteropServices.Marshal.ReleaseComObject( ) 地獄に落ちてもいいならな

MSもMicrosoft.Office.Interop.Excelはアンマネージドなリソース使うんだからDisposeを真面目に実装しとけよ

506 :デフォルトの名無しさん:2018/02/25(日) 07:36:24.71 ID:xNv2PYt4.net
そうじゃなくて今はClosedXMLとかを使うんじゃないの

507 :デフォルトの名無しさん:2018/02/25(日) 07:44:46.15 ID:bSC8YYTG.net
>>505
いつの時代の話だよ

508 :デフォルトの名無しさん:2018/02/25(日) 08:14:51.73 ID:/V/K592r.net
客先で他になんにもないときにめちゃ助かる
VBAも悪くないけど基本ライブラリしょぼいし別プロセス連携とかオブジェクト指向やりにくいから

>>505
Book.CloseとかApp.Quitとか要点さえ守ればCOMラッパーが参照カウントを処理してくれるからReleaseComObjectは不要

509 :デフォルトの名無しさん:2018/02/25(日) 08:39:48.35 ID:RKRNLmY8.net
ただ本音を言うとCOMはもう直接触りたくない
裏方に徹してくれる分にはいいんだけど

そもそもOfficeが.NETのプラットフォームから逸脱してるのが面倒の素

510 :デフォルトの名無しさん:2018/02/25(日) 09:25:49.90 ID:Ydc/tL+D.net
データ取り込み->OleDb
帳票出力->サードパーティのマネージドライブラリ
操作性拡張->VBA

.NET相互運用は需要がない

511 :デフォルトの名無しさん:2018/02/25(日) 16:14:29.85 ID:4dYhkUpy.net
>>507-508
> Book.CloseとかApp.Quitとか要点さえ守ればCOMラッパーが参照カウントを処理してくれるからReleaseComObjectは不要
マジで言ってるの?
それとも最近便利な(まともな)ラッパーでもできたの?

512 :デフォルトの名無しさん:2018/02/25(日) 16:45:57.41 ID:f0GbsyKa.net
ラッパーなんてあるの?
webに転がってるpowershellの糞コードはまともに開放してないし
powershellで気を付けるレベルじゃどうやっても開放漏れは起こる
潔癖ならCOMと親和性の高いwshで処理したらいいし
大抵の人はEXCEL.EXEが残らなければOKって考えでしょ

513 :デフォルトの名無しさん:2018/02/25(日) 19:36:34.84 ID:Ydc/tL+D.net
逆に聞きたいんだが適切にCloseやQuitしててもリソースリークするエビデンスってある?

514 :デフォルトの名無しさん:2018/02/25(日) 19:37:48.11 ID:riORzo3z.net
>>511
NPOIとかClosedXMLすら使ったことないん?

515 :デフォルトの名無しさん:2018/02/25(日) 20:06:18.82 ID:Ydc/tL+D.net
そもそもエクセルプロセスが生きてる以外にリーク判定ってどうやってんだ?

516 :デフォルトの名無しさん:2018/02/25(日) 23:21:13.29 ID:97AlcoLv.net
質問です。EXCELファイル内のマクロコードをGREP検索したいのですが
powershellからそのようなことは出来るのでしょうか?
(powershell以外の方法でも構いません)

517 :デフォルトの名無しさん:2018/02/26(月) 08:48:04.46 ID:0MjsGOBH.net
>>513
C# の話な

> 逆に聞きたいんだが適切にCloseやQuitしててもリソースリークするエビデンスってある?
適切の意味にもよるけどシートを参照したままApplication.Quit() してもリソースリークするって言うのはググれば出てくる
(これはVB.NETの例だけど)
https://social.msdn.microsoft.com/Forums/ja-JP/3a296f83-4a49-4561-a735-570aa7430874/ecxel?forum=vbgeneralja

>>514
COMの話であることも理解できないアホは絡んでくるなよ

518 :デフォルトの名無しさん:2018/02/26(月) 08:55:33.76 ID:qQ1Da7Hp.net
>>517
どうも日本語が不自由なようだ

519 :デフォルトの名無しさん:2018/02/26(月) 09:29:44.47 ID:0MjsGOBH.net
>>518
お前が誰か知らんけどそんなレスしかできないなら黙ってなよ w

520 :デフォルトの名無しさん:2018/02/26(月) 09:57:08.97 ID:MMVJYAud.net
>>519
涙拭けよw

521 :デフォルトの名無しさん:2018/02/26(月) 10:12:54.85 ID:0MjsGOBH.net
なんだ、無能の煽りかよ

522 :デフォルトの名無しさん:2018/02/26(月) 12:17:43.07 ID:7zf74qFu.net
>>521
顔真っ赤にしてどうした?w

523 :デフォルトの名無しさん:2018/02/26(月) 12:21:47.40 ID:aBQXIVru.net
ゆとりはCOMやオブジェクト思考を理解できない。

524 :デフォルトの名無しさん:2018/02/26(月) 12:29:53.91 ID:LisqF3+Y.net
いまどきCOMとかwww

525 :デフォルトの名無しさん:2018/02/26(月) 12:32:03.28 ID:aBQXIVru.net
このとおり。COMが何かすら理解してない様子。

526 :デフォルトの名無しさん:2018/02/26(月) 12:49:39.49 ID:K3pn9bD4.net
今は2018年だった気がするが

527 :デフォルトの名無しさん:2018/02/26(月) 13:03:41.88 ID:byvTlEgJ.net
>>517
エビデンスって言うには弱いな
コードの断片だけ見せて開放されないんですって言ってる人が居たってだけで
それにこれたぶんGC回ったら回収されるパターンでしょ

528 :デフォルトの名無しさん:2018/02/26(月) 13:18:51.36 ID:aBQXIVru.net
MSのメモリリークのバグなんて昔から何度もあったのに。MSも随分と信用を得たものだ。

529 :デフォルトの名無しさん:2018/02/26(月) 13:26:17.87 ID:zI4VKzz4.net
まあ今時COMって言うのは間違ってはないとは思うがCOMの話してるのにNPOIとかClosedXMLととか言い出す>>514が頓珍漢であることは変わらない

530 :デフォルトの名無しさん:2018/02/26(月) 13:33:29.92 ID:aBQXIVru.net
VS2017にATLついてる。なぜならMSが必要だから。COMなしではWindowsは動かない基盤技術。

おまえらの2chブラウザも動かなくなる。

531 :デフォルトの名無しさん:2018/02/26(月) 15:06:05.67 ID:tmFMcABi.net
流れを見ると>>500のレスを>>505が勝手にCOMの話と勘違いしたからそもそも話しがおかしくなってるんだと思うけど
どっちにしろたいした話もできてないからもう終わりでよくね

532 :デフォルトの名無しさん:2018/02/26(月) 15:21:15.75 ID:9PwnP/L5.net
ClosedXMLはExcelを操作するんじゃなくてExcelファイルを操作するライブラリだしww
てかいつまで粘着するの?

533 :デフォルトの名無しさん:2018/02/26(月) 17:32:43.42 ID:JDadgspp.net
COMの話題でどっと混む

534 :デフォルトの名無しさん:2018/02/26(月) 18:04:10.90 ID:XspdtcWH.net
エクセルでcsvを開いて、名前変えてエクセルファイルとして保存したいんだけど、
c:/test.csv
から
c:/test_add.xlsx
って感じに。
このとき、split-path $_ -parent + "/" + $.basename + "_add.xlsx"
みたいな書き方してるんだけど、もっとカッコいい良い書き方ある?

535 :デフォルトの名無しさん:2018/02/26(月) 20:02:07.45 ID:tmFMcABi.net
>>534
かっこいいかは分からんけどjoin-path使ったり
Join-Path $_.Directory ($_.BaseName + "_add.xlsx")

置換したり
$_.FullName -replace "\.csv$", "_add.xlsx"

単に文字列内で展開してもいいだろうし
"$($_.Directory)\$($_.BaseName)_add.xlsx"

536 :デフォルトの名無しさん:2018/02/26(月) 23:11:59.96 ID:6edExPT+.net
>>535
ありがとうございます。
さらっと3通り出るのすごい。

joinがpowershell 使ってる感あって好き、けど文字列内の$$もいいな

537 :デフォルトの名無しさん:2018/02/26(月) 23:14:27.61 ID:cmg78qzM.net
PowerShellで画面の文字拡大率を変更する事は可能?
ノートPC使っていると、150%とか100%を変えたい時があるが
いちいちGUIで変更するのが大変

538 :デフォルトの名無しさん:2018/02/27(火) 10:39:21.42 ID:OXeiIV2T.net
PowerShell.exeのショートカット2つ作ってプロパティで色やらフォントサイズやらを別々に設定して
好きな方を起動するというのはできる

539 :デフォルトの名無しさん:2018/02/27(火) 14:22:33.25 ID:CzY5WQW+.net
顔を画面に近づけるだけだろ。どんだけデブなんだよ。

540 :デフォルトの名無しさん:2018/02/28(水) 14:27:13.44 ID:wxg4ntZg.net
文字の大きさなんて超基本なのに
その煽りはないわ

541 :デフォルトの名無しさん:2018/02/28(水) 21:26:18.73 ID:XB4appM3.net
好きに変更すりゃいいじゃねーか。GUIで変更は嫌だとか、キーに割り当てるのも嫌だとか、
顔近づけるのも嫌だとか、ほんとデブは馬鹿で横着だからヤダね。

メイドでも雇って変更してもらえや。

542 :デフォルトの名無しさん:2018/02/28(水) 21:35:16.05 ID:Gdb2LJhC.net
この句読点は無視でいいよ

543 :デフォルトの名無しさん:2018/02/28(水) 21:39:00.90 ID:XB4appM3.net
句読点の打ち方が分からない低学歴アピール乙。

544 :デフォルトの名無しさん:2018/02/28(水) 22:44:45.43 ID:updNaSP6.net
>>537 で言っているのは、何の画面のこと?
powershell.exeのコマンド画面も
powershell_iseのエディターも既定値設定できるんで
なんの話か理解できなくて。

545 :544:2018/02/28(水) 22:53:58.42 ID:updNaSP6.net
自分の文章理解力がなかった
Windowsの画面そのもののフォントサイズを
変更したいという話だったのね。

546 :デフォルトの名無しさん:2018/02/28(水) 23:12:12.84 ID:XB4appM3.net
GUIで設定するのも面倒、句読点を打つのも面倒。脳に障害があるレベルだな。

だが安心してください。Windowsには障碍者モードが実装されてます。

547 :デフォルトの名無しさん:2018/03/01(木) 01:21:24.03 ID:nHL6zjeN.net
まあ、PowerShellというよりもWindowsコンソールが機能不足かつ分かりづらいのは確か
ただ、フォントサイズくらいは変えられる

548 :デフォルトの名無しさん:2018/03/01(木) 01:23:11.44 ID:0hekOGPH.net
PPMとか生成したバイナリデータをリダイレクトで保存するのは難しいのかな
cmdはできるのに

549 :デフォルトの名無しさん:2018/03/01(木) 10:56:37.02 ID:tP9VZ2s0.net
句読点の付け方は別に間違っちゃいないけど、2chでそこまでしっかり打つのは少数派だから
ちょっと異様に見えるよ

550 :デフォルトの名無しさん:2018/03/01(木) 11:57:54.51 ID:lQ3pJcx7.net
単純に低学歴、低知能は句読点を打たない。
文章や論文を書く習慣がないし本も全く読まないから句読点がないことに違和感がない。つまり馬鹿。

ひろゆきすら打つ。くだらない知ったかして2ch素人にもほどがあるな。
しかも句読点があると異様だとかもはや脳みそに蛆でも沸いてるレベル。もはや日本人じゃないな。

1 名前:ひろゆき@どうやら管理人 ★[] 投稿日:2014/04/09(水) 14:47:55.24 ID:???
なんらかの不具合を見つけたら、
報告するスレッド。

118 名前:ひろゆき@どうやら管理人 ★[] 投稿日:2014/04/12(土) 02:48:58.08 ID:???
>>25
どうぞ、どうぞ。

551 :デフォルトの名無しさん:2018/03/01(木) 12:37:08.99 ID:tP9VZ2s0.net
ひろゆきも打つからなんだっつーの
本と2ch(というかメールやブログのコメントもだけど)は大きく違う
ソフトによって画面端での自動の改行がさされたりされなかったりするから、長い行はあまり書かない
「。」の代わりに改行で済ますように変化してる
行末に「。」を付けるのはかなり少数派だよ

552 :デフォルトの名無しさん:2018/03/01(木) 13:38:12.57 ID:Bn8v5XdY.net
>>550
そういう見方もあるだろうが
昔に戻ると、句読点は必須ではなく
文章に不慣れな人達のために使われるようになったそうで、
いまでいう高学歴というような人に対しては使わないもの
だったそうだ。
そのために、今でも表彰状などには句読点は一切使われない。

ちなみに、句読点が一般的に使われるようになったのは、
明治半ば以降だそうだ。


553 :デフォルトの名無しさん:2018/03/01(木) 15:34:24.24 ID:mJRDcTgH.net
読みづらくなきゃなんでもいいと思うよ
クッソ読みづらくても句読点のあるなしにしか拘らん方が問題ある
読みやすい文の組み立てを心がければいいでしょう

554 :デフォルトの名無しさん:2018/03/01(木) 15:34:48.45 ID:Bn8v5XdY.net
感謝状、招待状等あえて句読点をつけない文章の共通点とは?
https://woman.mynavi.jp/article/150205-71/

かつて、句読点を付けるのは『相手を見下す』
要は、句読点がないと文章も読めないだろうと相手を見なすことに
なることだったようだ。

ま、当時は漢字の利用頻度も高く、漢字ひらがな混じりでも
読みやすかったのでしょう。今はひらがななどの割合が高いので
やはり適切に句読点を使う必要あるんでしょうね。

555 :デフォルトの名無しさん:2018/03/01(木) 15:40:17.42 ID:mJRDcTgH.net
長文でひらがな比率高いと文の区切りが分からなくなりますからね。

556 :デフォルトの名無しさん:2018/03/01(木) 19:01:36.71 ID:5P8YUW6k.net
>>550
句読点の、打ち方が下手な香具師もよく、見かける

557 :デフォルトの名無しさん:2018/03/01(木) 19:41:09.89 ID:Bj3H1eP5.net
単に句読点はこのスレで低レベルな煽りを繰り返してるキチガイの特徴ってことだろ
IDかわってもすぐわかる

558 :デフォルトの名無しさん:2018/03/01(木) 19:50:29.18 ID:dLJOyeYF.net
句読点を適切に付与するスクリプト書いてよ

559 :デフォルトの名無しさん:2018/03/01(木) 20:40:16.88 ID:yqOkTTLk.net
powershellだけでプロジェクト組むとしたらどういうフォルダ構造にする?

560 :デフォルトの名無しさん:2018/03/01(木) 21:33:08.36 ID:cFY6likq.net
中東あたりだと母音を省略してしまうんだよね?

561 :デフォルトの名無しさん:2018/03/02(金) 12:53:13.17 ID:Bue9fMqJ.net
煽りうざいから話題換えよう

>>559
良い質問な気がする

ただオレ自身は単ファイルで済むバッチ
みたいなのを書くのがほとんどだから

もし本格的なプロジェクトのフォルダ構成を組むなら
JavaとかRubyとか他言語の構成をマネするかな

562 :デフォルトの名無しさん:2018/03/03(土) 09:41:45.03 ID:7F+xAEZY.net
PSCustomObjectで特定のinterfaceを実装したいんだがやりかたわからん

public interface IFoo {
int Bar(int x);
}

public static class Hoge {
public static void Fuga(IFoo foo) {
Console.WriteLine(foo.Bar(100));
}

$foo = new-object pscustomobject |
add-member -passthru -membertype scriptmethod -name Bar -value { param($p)
return 200 }

[Hoge]::Fuga($foo)

こういうことしたい

563 :デフォルトの名無しさん:2018/03/03(土) 22:48:42.40 ID:ApJ804E1.net
GoやTypeScriptじゃないんだからメソッドを持ってるからってinterfaceを実装してることにはならんよ
素直にIFooを実装するclassを定義すれば?

564 :デフォルトの名無しさん:2018/03/04(日) 08:59:59.87 ID:DH1b2y4q.net
>>563
そのやり方を知りたい

565 :デフォルトの名無しさん:2018/03/04(日) 09:31:45.51 ID:6fb5BRTO.net
>>564
実装されたインターフェイスの宣言
https://docs.microsoft.com/ja-jp/powershell/wmf/5.0/class_interface

566 :デフォルトの名無しさん:2018/03/04(日) 09:49:31.76 ID:DH1b2y4q.net
>>565
2.0でもできる方法教えてください

567 :デフォルトの名無しさん:2018/03/04(日) 10:53:23.51 ID:8KjE9Kl8.net
条件後出しというやつか

568 :デフォルトの名無しさん:2018/03/04(日) 11:29:41.66 ID:xMU3H7cs.net
>>566
むしろ今の内に5.1以降(できれば最新の6.0.1)に慣れておくほうが良いと思うけどな

569 :デフォルトの名無しさん:2018/03/04(日) 12:58:31.78 ID:D98mTqXy.net
業務で使うマシンはOSが最新とは限らない
PSもほとんどアップデートされてない
だから低いバージョンでも使えるように訓練したほうがいい
最新版は追いかけるメリットがない

570 :デフォルトの名無しさん:2018/03/04(日) 13:10:20.82 ID:7vnf9POv.net
企業ならクライアントもWindows 7とか珍しくないから配布するようなスクリプトだと2.0前提

571 :デフォルトの名無しさん:2018/03/04(日) 13:58:40.18 ID:9+M4xykP.net
>>566
add-typeあるんだから普通にC#で書けば良くね
https://pastebin.com/mnvdH77F
PSCustomObjectに実装しないといけないなら知らんけど

572 :デフォルトの名無しさん:2018/03/04(日) 15:05:09.28 ID:IHwduGqd.net
Windows PowerShell 2.0 Deprecation
https://blogs.msdn.microsoft.com/powershell/2017/08/24/windows-powershell-2-0-deprecation/

573 :デフォルトの名無しさん:2018/03/04(日) 17:24:27.69 ID:D98mTqXy.net
>>571
それじゃpowershellコマンド使えないじゃん

574 :デフォルトの名無しさん:2018/03/04(日) 21:56:10.13 ID:hNuDXfDM.net
句読点を多用するのは下手な日本語で嫌われる。

もともとどこが句切りかわからないひと向けの記号だから、句読点の使用は馬鹿にされることもある。

575 :デフォルトの名無しさん:2018/03/04(日) 22:04:18.45 ID:E9oZl2pC.net
pushd/popd 便利やなあ
わしゃずっとcd使っとったぞい

576 :デフォルトの名無しさん:2018/03/05(月) 05:26:47.07 ID:ZV3N5zu0.net
>>575
わたしゃ多用してますわ
push-location
pop-location
と省略せずにつかっておりますです

577 :デフォルトの名無しさん:2018/03/06(火) 18:11:54.95 ID:QwFmEXbL.net
c# scriptingのほうが楽とちゃうか?
ネイティヴコマンド連携だけは若干ps有利かなといった印象

578 :デフォルトの名無しさん:2018/03/06(火) 20:17:46.87 ID:Xwb93uOm.net
その時々で都合の良いほうを使えばいいよ
同じ.NETなんだから否定する理由も無い

579 :デフォルトの名無しさん:2018/03/07(水) 07:41:36.43 ID:E7Qx2uww.net
>>578
あ、議論から逃げたw

580 :デフォルトの名無しさん:2018/03/07(水) 07:47:27.99 ID:Bp6mjckS.net
>>577
C# scriptingその後の話題が無いところをみると
どうも今一つなんかな

581 :デフォルトの名無しさん:2018/03/07(水) 21:20:29.09 ID:6bAELGui.net
>>577
シェルのlsやらcatやらみたいなのもc# scriptingのほうが楽なの?

582 :デフォルトの名無しさん:2018/03/08(木) 00:59:56.29 ID:D0NacyLc.net
bashとかが駄目な理由に、bashで書きづらくても、そこからpythonとか他の言語にするなら全部書き直しになる

583 :デフォルトの名無しさん:2018/03/08(木) 01:13:22.32 ID:uJW9EWjF.net
CLIが嬉しいと言いたいのかな。ちょっと論旨が理解できないが。

584 :デフォルトの名無しさん:2018/03/08(木) 04:26:04.35 ID:OsiEjbqp.net
script vs shell scriptとか何十年前の話題だよ
進歩のない連中だ

585 :デフォルトの名無しさん:2018/03/15(木) 06:42:05.85 ID:D4RVJiAa.net
OSのシェルとプログラミング言語の区別がない人間ばかりだから仕方ない。

586 :デフォルトの名無しさん:2018/03/15(木) 12:26:16.83 ID:Vp0MsA86.net
シェルスクリプトをどちらかに分類したがるのは無理なのでは。

587 :デフォルトの名無しさん:2018/03/15(木) 15:36:12.78 ID:BVhm+pK4.net
basicはどっちなん?

588 :デフォルトの名無しさん:2018/03/15(木) 16:51:24.16 ID:2jkAdz6t.net
単に、UNIXなどで単機能インタープリターをシェルと
呼び始めたんで、シェルは別物と思う人たちが出てきて
しまっただけ。

589 :デフォルトの名無しさん:2018/03/15(木) 22:19:45.69 ID:NI14hTsx.net
OSのシステムコールとプログラミング言語の区別がない人間も多い

590 :デフォルトの名無しさん:2018/03/16(金) 08:54:28.41 ID:T21mXgK0.net
システムコールとライブラリ関数
http://jibun.atmarkit.co.jp/lskill01/rensai/fulinux/02/01.html

システムコールとライブラリ関数の区別は曖昧で、
昔はシステムコールだった手続きも今はライブラリ関数として実装されていることがありますし、その逆もあります。
そういった意味では、システムコールとライブラリ関数の違いを本気で意識しなければならないのは
カーネルや基幹ライブラリを書くプログラマくらいと言えるかもしれません。

システムコールとライブラリ関数の違いが実際に役に立つのは、manページを参照するときです。
例えば「printf」にはコマンドのprintfとライブラリ関数のprintfがあるので、
ライブラリ関数のprintfの解説が見たければ「man 3 printf」と入力しないといけません。
「write」にはコマンドのwriteとシステムコールのwriteがあるので、
システムコールのほうが読みたければ「man 2 write」と入力しないといけません。

591 :デフォルトの名無しさん:2018/03/17(土) 11:59:28.36 ID:4+yOSMEm.net
>>586
おまえはシェルがシェルスクリプトだと思っているのか?

592 :デフォルトの名無しさん:2018/03/17(土) 12:01:46.42 ID:4+yOSMEm.net
シェル用のスクリプトだからシェルスクリプトなのに。

593 :デフォルトの名無しさん:2018/03/17(土) 16:54:33.86 ID:gmKtMsY0.net
史上嘗て無い頭の悪そうな突っ込み

594 :デフォルトの名無しさん:2018/03/21(水) 11:12:47.74 ID:yOhpRYak.net
ps coreイイね

595 :デフォルトの名無しさん:2018/03/21(水) 12:31:30.05 ID:U1NUu6zm.net
>>594
そっすか

596 :デフォルトの名無しさん:2018/03/21(水) 12:38:11.67 ID:sjE01Nui.net
powershell_ise coreとかあったら良いのに
と思ったけど流石に需要ないか

597 :デフォルトの名無しさん:2018/03/21(水) 12:51:05.01 ID:kSqnsZIp.net
>>596
俺も欲しい
vscodeでも出来るけど、捨てコード書くには面倒なんだよね

598 :デフォルトの名無しさん:2018/03/22(木) 00:18:59.44 ID:tdHViWJs.net
VSCode の、Code Runner
ソースコードの範囲を選択して、実行できる

これは、便利なプラグイン!

599 :デフォルトの名無しさん:2018/03/22(木) 00:26:12.80 ID:2RoYBMkH.net
>>598
それ入れてないけど、範囲選択+F8で部分実行できたぞ
多分バージョンアップで不要になったプラグインだね

600 :デフォルトの名無しさん:2018/03/22(木) 01:00:47.33 ID:arhMS6Ve.net
部分実行できる言語もあるしできない言語もある
対象言語にも触れず「これは便利!」っつってる>>598もアホだし、対象言語もわかってないのに「バージョンアップで不要になったプラグイン」っつってる>>599もアホ

601 :デフォルトの名無しさん:2018/03/22(木) 01:18:02.22 ID:2RoYBMkH.net
スレタイも読んでない600が一番アホでは?

602 :598:2018/03/22(木) 04:55:52.14 ID:tdHViWJs.net
VSCode の、Code Runner
ソースコードの範囲を選択して、右クリックメニューから実行できる

便利なプラグイン!

PowerShell にも対応している

603 :デフォルトの名無しさん:2018/03/22(木) 06:41:35.55 ID:G0SZ4nh0.net
宣伝

604 :デフォルトの名無しさん:2018/03/24(土) 09:35:21.60 ID:9NxgdLlD.net
powershell coreでNuGetパッケージを使いたい場合ってどうすればいいの
Dapperを使う時にC#だったらdotnet add package Dapper; dotnet restoreだけどpowershellプロジェクトだとどうするのかな

605 :デフォルトの名無しさん:2018/03/25(日) 17:30:21.30 ID:rN4AhykW.net
dotnet add package Dapper
dotnet restore --packages ./packages
Add-Type $source -ReferencedAssemblies netstandard, ./packages/.../Dapper.dll

これでできたわ
お前らまじで使えねえなー

606 :デフォルトの名無しさん:2018/03/26(月) 07:20:39.22 ID:90OCo3hj.net
すみません。。

607 :デフォルトの名無しさん:2018/03/28(水) 21:08:11.49 ID:rexEOFUm.net
とあるフォルダ配下にあるテキストファイルだけ抽出して配列に格納
別のフォルダ配下にあるテキストファイルだけ抽出して配列に格納し配列同士を比較して同じファイルのみを抜き出してCompare-Objectで比較したいんですけどどうやったらできますか?

608 :デフォルトの名無しさん:2018/03/28(水) 22:43:30.34 ID:WBaBvJPO.net
>>607
$a = ls "フォルダ1" *.txt
$b = ls "フォルダ2" *.txt
$a + $b | group name | where count -eq 2 | foreach { $_.name; compare (gc $_.group[0] .fullname) (gc $_.group[1].fullname) | ft }

609 :デフォルトの名無しさん:2018/03/29(木) 01:53:06.95 ID:0KWZ/AkQ.net
>>608
>gc $_.group[0] .fullname

.fullname の前に、半角空白が入っているから、エラーになる

610 :デフォルトの名無しさん:2018/03/29(木) 04:02:59.38 ID:63+/4se6.net
>>608
似たようなことよくやるが、やっぱ癖が出るね
自分なら最初こうやるかな
@(
Get-ChildItem "フォルダ1" *.txt
Get-ChildItem "フォルダ2" *.txt
)|

変数あまり使いたくないし、lsは動作がUNIXとは違うから紛らわしくて

611 :デフォルトの名無しさん:2018/03/29(木) 07:16:54.73 ID:V1TivHhi.net
>>609
ありゃconemuだと折返し部分に勝手にスペース入っちゃうんだな

>>610
そのへんは好みだとしてもそれ見て気づいたけどファイルが一つしかなくて$aが配列じゃない場合 $a + $b だとエラーになるね
@($a; $b) とすべきだったか

612 :デフォルトの名無しさん:2018/03/29(木) 07:57:32.30 ID:0KWZ/AkQ.net
1つか複数かで、オブジェクトの型が違うのか

ややこしい言語やな

613 :デフォルトの名無しさん:2018/03/29(木) 12:10:52.44 ID:ZJ5ir4HC.net
そういう細かい変な挙動がめんどくさいからC#で書いてAdd-Typeしてるわ
Linqあれば大抵の処理はPowerShellより書きやすいし読みやすい

614 :デフォルトの名無しさん:2018/03/29(木) 21:42:00.78 ID:QJhSKNI2.net
>>608
ありがとうございます
これやったんですけどcountのところで型エラーになっちゃいました
>>610>>611でもダメみたいです

615 :デフォルトの名無しさん:2018/03/29(木) 22:03:31.09 ID:AdhamQsX.net
& {
ls foo
ls bar
}

616 :デフォルトの名無しさん:2018/03/29(木) 22:51:24.43 ID:V1TivHhi.net
>>614
powershellのバージョンは?
古いのはよくわからんけど Group-Object -Property Name とかしたらできるんかね 

617 :デフォルトの名無しさん:2018/03/29(木) 22:57:06.82 ID:V1TivHhi.net
もしpowershell2ならこれなら動くんじゃないかな、試してないけど
@($a; $b) | Group-Object -Property Name | Where-Object { $_.Count -eq 2 } | Foreach-Object { $_.Name; Compare-Object -ReferenceObject $(Get-Content $_.Group[0].Fullname) -DifferenceObject $(Get-Content $_.Group[1].Fullname) | Format-Table }

618 :デフォルトの名無しさん:2018/03/29(木) 23:14:54.79 ID:cCEUqbyZ.net
>>616

バージョンこんな感じです
> $PSVersionTable

Name Value
---- -----
CLRVersion 2.0.50727.8762
BuildVersion 6.1.7601.17514
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1

619 :デフォルトの名無しさん:2018/03/29(木) 23:18:05.53 ID:cCEUqbyZ.net
>>617
やると↓

$a=Get-ChildItem "D:\test\*.*" -include *.txt,*.dat
$b=Get-ChildItem "G:\test\*.*" -include *.txt,*.dat
@($a; $b) | Group-Object -Property Name | Where-Object { $_.Count -eq 2 } | Foreach-Object { $_.Name;
ompare-Object -ReferenceObject $(Get-Content $_.Group[0].Fullname) -DifferenceObject $(Get-Content $_.Group[1].Fullname
| Format-Table }

b.txt
Compare-Object : 引数が null であるため、パラメーター 'ReferenceObject' にバインドできません。
発生場所 行:1 文字:134
+ @($a; $b) | Group-Object -Property Name | Where-Object { $_.Count -eq 2 } | Foreach-Object { $_.Name; Compare-Object
-ReferenceObject <<<< $(Get-Content $_.Group[0].Fullname) -DifferenceObject $(Get-Content $_.Group[1].Fullname) | Form
at-Table }
+ CategoryInfo : InvalidData: (:) [Compare-Object]、ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.CompareObje
ctCommand

620 :デフォルトの名無しさん:2018/03/29(木) 23:45:57.68 ID:V1TivHhi.net
それ単に空ファイルだからでしょ

621 :デフォルトの名無しさん:2018/03/29(木) 23:54:26.21 ID:cCEUqbyZ.net
>>620
空ファイルとの差分も比較したいっす

622 :デフォルトの名無しさん:2018/03/30(金) 00:15:02.11 ID:8/UdoTgk.net
-ReferenceObject $(if ($_.Group[0].Length -eq 0) {"空ファイル"} else {Get-Content $_.Group[0].Fullname})
とかすればいい-DifferenceObjectも同様に

623 :デフォルトの名無しさん:2018/03/30(金) 00:55:45.74 ID:1oIUHR4g.net
>>622
おお!なんか求めてるものができました
ありがとうございます

624 :デフォルトの名無しさん:2018/03/30(金) 12:24:41.58 ID:87KFZNYL.net
PSVersion 2.0 って、古いな

漏れは、Windows10 で、5.1

625 :デフォルトの名無しさん:2018/03/30(金) 12:46:33.65 ID:MnRWcQoL.net
>>624
> PSVersion 2.0 って、古いな
Windows 7 の標準装備だから会社によっては今でもその縛りがあるところは珍しくない

626 :デフォルトの名無しさん:2018/03/30(金) 13:31:52.36 ID:CA1T1+Qn.net
むしろwin10なのに5.1は古い
6.01入れちまえ

627 :デフォルトの名無しさん:2018/03/30(金) 15:57:34.95 ID:BIk3pBCX.net
標準で入ってるから使うんであって
わざわざ入れるなんて許されない
それがPowershellの掟

628 :デフォルトの名無しさん:2018/03/30(金) 16:03:03.73 ID:GA8gSqY/.net
常時最新版は入れるけど開発は2.0で

629 :デフォルトの名無しさん:2018/03/30(金) 23:23:41.80 ID:v3STFQKk.net
個人で使う分にはいいんだろうけどね

630 :デフォルトの名無しさん:2018/03/31(土) 09:12:34.80 ID:9aphfiP0.net
2.0でも問題ないように勉強しつつ、案件が始まったら最新版のインストールを駄目元でお願いする感じ

631 :デフォルトの名無しさん:2018/03/31(土) 09:41:50.71 ID:PackIPAm.net
いつの間にか6.0.2がリリースされてた

https://github.com/PowerShell/PowerShell/releases/tag/v6.0.2

632 :デフォルトの名無しさん:2018/03/31(土) 20:24:07.76 ID:xiXxh7KM.net
ファイルの最後の文字のみ読み込んで
例えば最後の文字が

〇〇てすと

だったら

てすと

に置換して元から"てすと"だったそのままにしたいんだけどどうすればできますか?
ただし最終行が"てすと"じゃなかった場合は"てすと"を追記したいです
個人的にはループ処理で最終行から読み込んで意図した文字列なら置換って事がやれればいいと思ってます
※バージョンは2.0でお願いします!

633 :デフォルトの名無しさん:2018/03/31(土) 23:42:23.39 ID:ZBdPbw02.net
Ruby で作った

text = File.read ARGV[0] # 引数はファイル名

ary = []
# 文字列を1行ずつ、配列に入れる
text.each_line{ |line| ary << line }
p ary

# 戻り値は、置換が行われたときはレシーバ自身、置換されなかったときはnil
if ary[-1].sub!(/〇〇てすと$/, 'てすと')
# 処理なし。レシーバ自身を変更する
elsif /てすと$/ !~ ary[-1] # てすと で終わらない
ary[-1] += 'てすと'
else
return
end
p ary[-1]

File.write(ARGV[0], ary.join)

634 :デフォルトの名無しさん:2018/03/31(土) 23:55:40.86 ID:jgzyYqDp.net
>>633
ここPowershellスレなんだが…

635 :デフォルトの名無しさん:2018/04/01(日) 00:05:46.07 ID:QUrQa6Zt.net
>632をなんとなく作ってみたんですけど、
最後に出力された文字列だけを置換しての部分がうまくいかない
置換自体は出来るんだけどその部分だけ文字列に書き込む方法が分からん。。。

(Get-Content D:\test\a.txt)[(Get-Content D:\test\a.txt).length..0] | Foreach-Object {
if( $_.length ){
if(!($_ -like "*てすと*")){
Add-Content -Path D:\test\a.txt -Value "てすと"
break
}
$_ -replace ".*てすと.*", "てすと"
break}
}

636 :633:2018/04/01(日) 00:36:26.53 ID:ECJY99tL.net
>その部分だけ、文字列に書き込む方法が分からん
Ruby でも、ファイルを読み書き両用で開くと、
現在のシーク位置を、あれこれ移動しないといけないから、非常にややこしい。
シーク位置を変数に入れておいて、あれこれ考えるのは、ややこしい

だから、テキスト全体を改行区切りの配列に入れて、最後の行だけを変更してから、
全部を書き込む方が簡単

633 では、そうしている

637 :デフォルトの名無しさん:2018/04/01(日) 01:17:13.74 ID:XTr+hbom.net
趣旨に合っているかな?

$list=Get-Content sample.txt
$text="てすと"
foreach($line in $list){
if([string]::IsNullOrEmpty($line)){$line=$text}
$str=$line.Substring($line.length-3)
if($str -eq $text){ $newline=$str}
else{ $newline=$line }
$newline
}

638 :637:2018/04/01(日) 01:18:30.22 ID:XTr+hbom.net
最後の行についてわすれてた

639 :637:2018/04/01(日) 01:28:26.15 ID:XTr+hbom.net
再度

$list=Get-Content test.txt
$text="てすと"
foreach($line in $list){
if([string]::IsNullOrEmpty($line)){$line=$text}
$str=$line.Substring($line.length-3)
if($str -eq $text){ $newline=$str}
else{ $newline=$line }
$newline
}
if($str -ne $text){$text}

640 :デフォルトの名無しさん:2018/04/01(日) 01:34:17.86 ID:VsRAmkXY.net
ぱわーしぇる風にパイプかつメモリ最小で作ってほしーなんつって

641 :デフォルトの名無しさん:2018/04/01(日) 01:37:20.38 ID:VsRAmkXY.net
つーかバッチファイルスレで似たような質問してたアホだなこいつ

642 :637:2018/04/01(日) 02:13:27.25 ID:XTr+hbom.net
パイプよりこのほうがずっと高速なもんで

643 :デフォルトの名無しさん:2018/04/01(日) 02:32:32.46 ID:QUrQa6Zt.net
>>639
いいんだけどこれだと空白行全部"てすと"になっちゃてね?

644 :639:2018/04/01(日) 02:44:04.47 ID:XTr+hbom.net
そうしてる。
空白行は空白のままでよかったんだ
じゃIFのところだけ書き換え

$list=Get-Content test.txt
$text="てすと"
foreach($line in $list){
if(-NOT [string]::IsNullOrEmpty($line)){
$str=$line.Substring($line.length-3)}
if($str -eq $text){ $newline=$str}
else{ $newline=$line }
$newline
}
if($str -ne $text){$text}

645 :デフォルトの名無しさん:2018/04/01(日) 02:46:44.02 ID:XTr+hbom.net
考えたらこれだと文字数が3文字未満だとエラーになるな
ねむいが・・書き換えてみるかな

646 :639:2018/04/01(日) 02:54:07.64 ID:XTr+hbom.net
今度はどうだろう

$list=Get-Content test.txt
$text="てすと"
foreach($line in $list){
$newline=$line
if($line.length -gt 2){
$str=$line.Substring($line.length-3)
if($str -eq $text){ $newline=$str}
}
$newline
}
if($str -ne $text){$text}

647 :デフォルトの名無しさん:2018/04/01(日) 03:12:47.24 ID:QUrQa6Zt.net
>>646
最終行だけてすとじゃなくてその上にてすとの文字列が有るとそのあと全部てすとになっちゃうね

648 :デフォルトの名無しさん:2018/04/01(日) 03:38:49.54 ID:IR/E13YL.net
こんなもんかね
psv2.0に配列のcountあったっけか

$file = "test.txt"
$text = "てすと"
,@(Get-Content $file)|%{
foreach($i in 0..($_.count-1)){
if($i -eq ($_.count-1)){
if($_[$i] -like "*$text"){
$text
}else{
$_[$i];$text
}
}else{
$_[$i]
}
}
}|Out-File $file

649 :デフォルトの名無しさん:2018/04/01(日) 07:43:52.97 ID:dufOVYHg.net
>>641
あっちは、「最終行」じゃなくて「空行を除く最終行」だったからちょっと面倒だ

650 :639:2018/04/01(日) 07:45:20.17 ID:UUJ9t7Bj.net
>>647
なんと、寝ぼけてやってちゃだめだな。
あとで見直すわ

651 :デフォルトの名無しさん:2018/04/01(日) 08:53:40.41 ID:P1fWuhY2.net
PowerShellコード可読性低すぎワロタwww時代はC#ですわ

Add-Type -TypeDefinition @"
using System.IO;
using System.Text.RegularExpressions;
public class Hoge {
private static readonly Regex r = new Regex(@"[^\n]*てすと$", RegexOptions.Compiled | RegexOptions.Singleline | RegexOptions.CultureInvariant);
public static void ReplaceLastTest(FileInfo file) {
string s = File.ReadAllText(file.FullName);
s = r.Replace(s.TrimEnd(), string.Empty) + "てすと";
File.WriteAllText(file.FullName, s);
}
}
"@

[Hoge]::ReplaceLastTest((Get-ChildItem ./test.txt))

652 :デフォルトの名無しさん:2018/04/01(日) 10:49:38.76 ID:IR/E13YL.net
>>651
PSなら書く必要もないもの多過ぎ
ついでに普通の環境じゃ編集の補助まったくないだろ

653 :デフォルトの名無しさん:2018/04/01(日) 11:08:43.29 ID:P1fWuhY2.net
>>648>>646のほうがよっぽど無駄なコード書いてるじゃんwww
ループインデックスとか久々に見たわwwwwベタループも条件分岐もくっそ読みにくいしwww

編集の補助ってインテリセンスの事ならこの程度のコードに必要ないだろw
つかpowershellerならVSCodeとっくに入っとるやろwww
C#もサポートされとるやんけwwww

654 :デフォルトの名無しさん:2018/04/01(日) 11:37:50.84 ID:QUrQa6Zt.net
>>648
これだと"てすと"の後に無駄な空行があるとその無駄な空行の後に"てすと"って出力されちゃうね

655 :デフォルトの名無しさん:2018/04/01(日) 11:44:34.33 ID:XEaAmQBZ.net
エディタすら選べない様な残念な環境で頑張るのがPSですから
ってのは置いといてadd-typeで強引に解決するのは割と好き

656 :デフォルトの名無しさん:2018/04/01(日) 11:56:29.10 ID:IR/E13YL.net
>>654
最初の条件では空行を無視するとか書いてないけど

657 :デフォルトの名無しさん:2018/04/01(日) 12:07:38.92 ID:IR/E13YL.net
>>653
C#の別ファイル書いてadd-typeの中にコピペすんの?
それメンテナンス性最悪だよな

658 :デフォルトの名無しさん:2018/04/01(日) 12:23:46.08 ID:P1fWuhY2.net
つうかこれでええやんwwww
誰だよC#とか言ったアホwwwww

function Update-LastTest ([IO.FileInfo]$file) {
$s = Get-Content $file | Out-String
$s = ($s.TrimEnd() -replace '[^\n]*てすと$', '') + 'てすと'
$s | Out-File $file
}

Update-LastTest (Get-ChildItem ./test.txt)

659 :639:2018/04/01(日) 12:23:50.08 ID:y3W5ZkrO.net
何言われようと、めげずに
どうでしゃろ
$list=Get-Content test.txt
$text="てすと"
foreach($line in $list){
$newline=$line
if($line.length -gt 2){
$str=$line.Substring($line.length-3)
if($str -eq $text){ $newline=$str}
else{$newline=$line}
}
$newline
}
if($str -ne $text){$text}

660 :639:2018/04/01(日) 12:29:46.66 ID:y3W5ZkrO.net
>>658
てすとしてないけど、すばらしそう

661 :639:2018/04/01(日) 12:38:23.68 ID:y3W5ZkrO.net
>>658
あれ?
要求されてる仕様の理解が私とちがうな
どっちだろう?

662 :639:2018/04/01(日) 12:42:58.03 ID:y3W5ZkrO.net
ABCDてすと => てすと
XYX123 => XYX123
てすとのてすと => てすと
てすとのabc => てすとのabc

みたいな要望じゃないかな?

663 :デフォルトの名無しさん:2018/04/01(日) 12:54:30.97 ID:GlQ4Mmqm.net
2回実行したら全部の行がてすとになって区別付かなくなるけどそれでいい?

664 :デフォルトの名無しさん:2018/04/01(日) 12:56:34.68 ID:QUrQa6Zt.net
>>662
>>632の質問投げた本人ですけど最後はてすとでいいです
つまり
ABCDてすと => てすと
XYX123 => XYX123
てすとのてすと => てすと
てすとのabc => てすと
空行 => なにもしない

665 :デフォルトの名無しさん:2018/04/01(日) 12:59:57.46 ID:QUrQa6Zt.net
>>664に追記すると最後"だけ"を置換したいんです
途中に"〇〇てすと〇〇"
みたいな感じでてすとってワードが含まれていてもそれは無視したいんです

666 :639:2018/04/01(日) 13:00:29.09 ID:y3W5ZkrO.net
確認ですが

てすとのabc => てすと  

これあってます?
これだと単に文字列 "てすと" が含まれていたら "てすと" と
出力するように思うんですが。

667 :デフォルトの名無しさん:2018/04/01(日) 13:02:37.55 ID:QUrQa6Zt.net
>>666
はいそれで良いです

668 :デフォルトの名無しさん:2018/04/01(日) 13:03:50.82 ID:XEaAmQBZ.net
ごめん分かんなくなってきた

669 :デフォルトの名無しさん:2018/04/01(日) 13:13:00.52 ID:QUrQa6Zt.net
>>632
ごめんこれ質問が悪かったです
最終行が"てすと"ならじゃなくて最後の空行じゃ無い文字列に"てすと"が含まれていなかったら"てすと"を追記したい
が正しい

670 :デフォルトの名無しさん:2018/04/01(日) 13:15:43.22 ID:GlQ4Mmqm.net
だめだこりゃ

671 :639:2018/04/01(日) 13:29:09.09 ID:y3W5ZkrO.net
これはどうでしょう。
行に"てすと"という文字列が含まれていたら"てすと"だけを出力
含まれていなければ、そのまま出力
最後の行に"てすと"が含まれていなければ、その行はその出力し
つぎの行に"てすと"を追加
結果は$newlistに出力

function newfile{
param($text="てすと")
process{
if($_.ToString().Contains($text)){$newline=$text}
else{$newline=$_}
$newline
}
end{ if( -NOT $newline.Contains($text)){$text} }
}

$list=Get-Content ファイル指定
$newlist=$list|newfile

672 :639:2018/04/01(日) 13:30:56.72 ID:y3W5ZkrO.net
さいごに空の行もあり得るわけだ。<=これは入れていない
とするとそのはんていを1行追加するようだな。

673 :デフォルトの名無しさん:2018/04/01(日) 13:54:17.68 ID:Huwl0iS3.net
これだから日本語の仕様書は役に立たないって言われるんだな
テストケースを10個ぐらい書いてくれないと伝わらないパターンだ
コーディングはそれから始めても遅くない

674 :639:2018/04/01(日) 14:11:02.57 ID:y3W5ZkrO.net
最後の空白行orNull行の判定もいれてみたんだけど

function newfile{
param($text="てすと")
process{
if($_.ToString().Contains($text)){$newline=$text}
else{$newline=$_}
$newline
}
#end{ if( -NOT $newline.Contains($text)){$text} }
end{ if(-NOT($newline.Contains($text) -or [string]::IsNullOrWhiteSpace($newline)) ){$text}}
}
$list=Get-Content 入力ファイル
$newlist=$list|newfile

675 :639:2018/04/01(日) 14:12:35.94 ID:y3W5ZkrO.net
あってるかな?
あとは >>658 の方が綺麗なのを書いてくれることを期待。

676 :デフォルトの名無しさん:2018/04/01(日) 14:20:36.23 ID:IR/E13YL.net
>>674
空行は置いといて、最終行以外のとこに”てすと”が入ってても書き換わってしまうが
ただそれが望んだ動作かもしれん
もう分からんw

677 :639:2018/04/01(日) 14:51:08.96 ID:y3W5ZkrO.net
>>676
"てすと"という文字列を含む行は、"てすと"という文字列に置き換える
そうですよ。

678 :デフォルトの名無しさん:2018/04/01(日) 15:08:33.93 ID:IR/E13YL.net
>>677
>>665と矛盾してると思うが
"最後だけを置き換えたい" で行の最後か文章の最後か分からんが、
てすとのabc => てすと  
がOKなら行の最後じゃない、なら文章の最後だけって事じゃね?
なんか論理パズルやってる気になってきたなw

679 :デフォルトの名無しさん:2018/04/01(日) 15:17:38.93 ID:D0kqpvo1.net
>>676
最後に出てくる"てすと"以外は"てすと"があっても置き変えたくないです
あくまで最後だけ置き換えてください
>>677
置き換えないでそのままでいいです

680 :デフォルトの名無しさん:2018/04/01(日) 15:19:24.07 ID:D0kqpvo1.net
>>677
あー間違えた最後に出てくる"てすと"以外は"そのまま"でいいです

681 :デフォルトの名無しさん:2018/04/01(日) 15:23:08.10 ID:IR/E13YL.net
>>679
あ、来た
それと最後の空行はどうなの?
@"
aaa
bbbてすと

"@
が元ソースだとして

@"
aaa
てすと

"@

@"
aaa
bbbてすと

てすと
"@

@"
aaa
てすと
"@
の3パターンあるが、どれ?

682 :デフォルトの名無しさん:2018/04/01(日) 15:31:18.80 ID:D0kqpvo1.net
>>681
一番最初がいいですね


@"
aaa
てすと

"@

683 :デフォルトの名無しさん:2018/04/01(日) 15:39:31.01 ID:IR/E13YL.net
>>682
OK,やっと仕様が決まったね
めでたい

684 :639:2018/04/01(日) 15:39:47.10 ID:y3W5ZkrO.net
>>679
最後に出てくる"てすと"という意味ですが、したのようなとき
"てすと"を含む最後の行は5行目という意味ですか?

1行目 abmてすとxyz
2行目 1239xxxx
3行目 yyyyyてすと
4行目 xxxxyyてすとyy
5行目 てすとuuuu   <== "てすと"を含む最後の行
6行目 zzyyvv
7行目 練習123

685 :デフォルトの名無しさん:2018/04/01(日) 15:47:44.82 ID:D0kqpvo1.net
>>684
その場合だと7行目を判断して"てすと"以外の文字列なので"てすと"を追記してください。

686 :デフォルトの名無しさん:2018/04/01(日) 15:51:05.88 ID:IR/E13YL.net
>>684
君も読解力に問題あるぞw
途中の行は無視でしょ、「"てすと"を含む最後の行」なんて君しか言ってない
5行目はそのままで、8行目に"てすと"が加わるんでしょ

687 :639:2018/04/01(日) 15:52:48.10 ID:y3W5ZkrO.net
>>685
追記とは
8行目に"てすと"という文字列の1行ができるでよろしいですか?

688 :デフォルトの名無しさん:2018/04/01(日) 15:53:31.12 ID:D0kqpvo1.net
>>687
はいその認識で間違いありません

689 :デフォルトの名無しさん:2018/04/01(日) 16:00:22.19 ID:mWcRMyuA.net
はっきり言って>>665が非常に分かりづらい
"最後"って表現は何とかしてくれ

690 :デフォルトの名無しさん:2018/04/01(日) 16:05:52.05 ID:QUrQa6Zt.net
>>689
語彙が足らなくてごめんなさい。
最後っていうのをなんて伝えていいのかよくわからなかった
最終行っていうのも違うし、最後の文字列が入ってる行って言えばよかったんかな…

691 :デフォルトの名無しさん:2018/04/01(日) 16:08:07.63 ID:mWcRMyuA.net
>>690
>>649の表記はどう?

692 :デフォルトの名無しさん:2018/04/01(日) 16:11:53.66 ID:QUrQa6Zt.net
>>691
空行っていうのもなんか曖昧というか例えばスペース一個あって改行したらそれも空行だし

693 :639:2018/04/01(日) 16:21:25.05 ID:y3W5ZkrO.net
>>692
それははっきりした方がいいと思うよ。
一番最後の行が、スペースとしたとき
スペースとは、空白文字がありうるのか、nullなのかなど。

694 :デフォルトの名無しさん:2018/04/01(日) 20:51:38.49 ID:ih9TVGcf.net
>>688
ところであっちのスレと同一人物?
BATでも解決してたはずだけど、なんでまた同じ質問をこっちに?

695 :デフォルトの名無しさん:2018/04/02(月) 01:08:53.03 ID:4AdYvMWY.net
仕様があいまい

最後と言う言葉があいまい。
全体の文章の最後なのか、最終行を指すのか、どちらか分からないから

最終行だけがチェック対象なのか?
それとも、最終行以外も対象になるのか?

696 :デフォルトの名無しさん:2018/04/02(月) 01:16:27.17 ID:4AdYvMWY.net
>>632
>最終行が"てすと"じゃなかった場合は、"てすと"を追記したいです

これも、最終行が改行で終わっている場合と、終わっていない場合で、動作が変わる

abc\n → abc\nテスト
abc → abcテスト

上は、最終行の次の行に追加されるけど、
下は、最終行に追加される

697 :デフォルトの名無しさん:2018/04/02(月) 10:47:05.22 ID:qOetNhN3.net
$path = "Documents\hoge.txt"
$text = "てすと"
$file = @(Get-Content $path)

for($i = $file.count; $i -ge 0; $i--)
{
if($file[$i] -match "^\s*$")
{
continue
}

if($file[$i] -match ".*$($text).*")
{
$file[$i] = $text
} else {
$file[$i] += "`n" + $text
}

break
}

$file | Out-File $path

Powershell勉強中なんだけどこんな感じ?

698 :デフォルトの名無しさん:2018/04/02(月) 11:17:36.79 ID:hxQiBYMY.net
正直今のところ頂いた回答の中では>>658さんの回答が模範解答でした。

699 :デフォルトの名無しさん:2018/04/02(月) 11:22:46.38 ID:hxQiBYMY.net
>>697いいですね!!!

700 :デフォルトの名無しさん:2018/04/02(月) 11:50:24.39 ID:M5QFId2x.net
>>698
良いんだけど、>>658>>681で言う三番目で、希望は一番目らしいから、あと一工夫だね
正直もう飽きたから他の人がんばって

701 :デフォルトの名無しさん:2018/04/02(月) 11:56:01.83 ID:M5QFId2x.net
>>697でいいやん
自分の趣味じゃないから読みにくいけど、条件は満たしてる

702 :デフォルトの名無しさん:2018/04/06(金) 06:46:32.07 ID:lsq7GlrL.net
PSはマルチスレッド気軽に使えないの?
ググるとリモート、マルチプロセスとRunspaceのサンプルばっかり出てくるんだが
2.0だとTaskも無いからキビシイのかね

703 :デフォルトの名無しさん:2018/04/06(金) 09:32:58.70 ID:j6pN+emA.net
>>702
つかえるんじゃない?
どんな処理をしたいということなの。

704 :デフォルトの名無しさん:2018/04/07(土) 08:02:18.06 ID:qEuioEYI.net
いやーなんかねHttpListenerのBeginGetContextでクラッシュするんです
マルチスレッド対応してないのかなと

705 :デフォルトの名無しさん:2018/04/07(土) 17:09:59.62 ID:q5Iu4RDV.net
マルチスレッドというより(マルチスレッドだけど)
それが非同期に対応しているかという話ね。

706 :デフォルトの名無しさん:2018/04/07(土) 21:26:24.68 ID:qEuioEYI.net
原因わかった
別スレッドだとrunspaceが無いからpowershellコードが動かんのだとさ

707 :デフォルトの名無しさん:2018/04/07(土) 21:35:48.91 ID:aBoyVqLJ.net
こんな記事あるけど使える?
RunspacePoolを使って、PowerShellを非同期実行
https://www.gmo.jp/report/single/?art_id=195

708 :デフォルトの名無しさん:2018/04/07(土) 23:31:41.22 ID:qEuioEYI.net
>>707
今日はそれを調べてた
GetContext使ってメインスレッドで同期的にコンテキストを受けて
ルーティング処理〜レスポンス閉じるまでをrunspaceでOneWay非同期処理するといい感じで動作してるっぽい

709 :デフォルトの名無しさん:2018/04/22(日) 08:09:34.07 ID:kKNIjb5q.net
>>279
こいつアホすぎてムカつく
わからんなら黙ってろかす!

710 :デフォルトの名無しさん:2018/04/22(日) 10:30:51.82 ID:H/AU6k7y.net
どんだけロングパスなんだよ w

711 :デフォルトの名無しさん:2018/04/22(日) 16:41:59.07 ID:T8IjF/fs.net
TrustedInstallerのままなのはOS不具合かな
最近こういうの放置でアップグレードしてくから困る

712 :デフォルトの名無しさん:2018/04/27(金) 00:02:08.86 ID:H5AR7ZMg.net
聞いてくれやおじさん
UIautomationとやらを探して2日たらし回しにされた
psのgui自動化ツールはこれでええのか

713 :デフォルトの名無しさん:2018/05/03(木) 08:13:52.50 ID:Fo+ItQuC.net
確かに探すの難しくなってるな

UI Automation PowerShell ExtensionsのDownload(再配布)
ttps://www.code-lab.net/?page_id=21648

714 :デフォルトの名無しさん:2018/05/03(木) 21:30:36.66 ID:nUgTWhrN.net
更新されてないってことは失敗なのか

715 :デフォルトの名無しさん:2018/05/05(土) 08:53:20.47 ID:GHjIUW8T.net
UIautomationって旧来技術ってことでWin10では
あらたなことは行わないんじゃないのかな。
たしかGUIがWPFだよね。

716 :デフォルトの名無しさん:2018/05/09(水) 04:43:48.03 ID:EuvUccmD.net
ISE
VSCode
Visual Studio 2017
でPowerShell開発やってみたけど一番快適にDebugできるのはVSCodeだった

717 :デフォルトの名無しさん:2018/05/10(木) 12:17:12.51 ID:p0Nf4Eeh.net
実行ポリシーを変更をBypassに変更してるんだが
.ps1ファイルを実行しようとすると1日1回くらい(その日の最初?)は以下の文章が出る
出なくする方法ありますか?

実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"):

ちなみにGet-ExecutionPolicyすると
ちゃんとBypassと表示される

718 :デフォルトの名無しさん:2018/05/10(木) 21:32:31.45 ID:RfBSBg1R.net
コンテキストメニューから実行してるなら、関連付け設定が
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "if((Get-ExecutionPolicy ) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'"
になってるから、Set-ExecutionPolicy -Scope Process Bypass を実行するところでそれが出るんだと思う
関連付け設定を変えれば出てこなくなるよ

719 :デフォルトの名無しさん:2018/05/10(木) 22:47:10.05 ID:p0Nf4Eeh.net
ありがとう
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "%1"に変えてみた
ついでにダブルクリックだけで実行できるように変えたら便利になった

720 :デフォルトの名無しさん:2018/05/23(水) 08:17:44.44 ID:fJ1IdiGY.net
csvの中に時間とデータの2列あって、それの直線近似した切片を取りたいんだけどアルゴリズム組まないとだめ?
なおエクセルは入ってないパソコンで使いたい。

721 :デフォルトの名無しさん:2018/05/23(水) 12:32:03.51 ID:p1Tm41m3.net
pythonでpandas+leastsquare

722 :デフォルトの名無しさん:2018/05/23(水) 16:20:34.21 ID:xYq3JC1R.net
>>720
単に公式に当てはめればいい

$data = import-csv "csvのパス" -Header X,Y

$meanX = $data.X | measure -Average | select -expand Average
$meanY = $data.Y | measure -Average | select -expand Average

$sd = $data | foreach { ($_.X - $meanX) * ($_.X - $meanX) } | measure -Average | select -expand Average
$cd = $data | foreach { ($_.X - $meanX) * ($_.Y - $meanY) } | measure -Average | select -expand Average
$slope = $cd / $sd

$meanY - $slope * $meanX

723 :デフォルトの名無しさん:2018/05/23(水) 17:50:18.83 ID:nRn5Zijg.net
>>720
Accord.Net使えばいいよ
それか今ならML.NETが良いのかね?

724 :デフォルトの名無しさん:2018/05/23(水) 18:35:19.02 ID:V6P0Rj+x.net
>>722
ありがとうございます。簡潔に書かれていてすごい。

>>721
pythonでも出来るのですが、エクセル含めソフトインストールできないPCでの運用なので

725 :デフォルトの名無しさん:2018/05/23(水) 19:04:26.17 ID:zdZwe3wq.net
そんな環境でなぜ線形回帰分析を?

726 :デフォルトの名無しさん:2018/05/23(水) 19:19:58.76 ID:PUSKgIep.net
エクセルも使えない環境でデータ分析なんて
とんでもなく非効率だな
現実にはよくありそうな話だけど

727 :デフォルトの名無しさん:2018/05/23(水) 19:26:40.12 ID:Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

GWRI8

728 :デフォルトの名無しさん:2018/05/24(木) 07:56:41.44 ID:zQgi4Vqc.net
>>726
装置とそれを制御するソフトウェアが入った専用PCが連動して動く仕組みのシステムで、そのPCのデータをその中で処理したいと思ってて。
大型の装置で、もし誤作動を起こしたら火災や死亡事故もあり得るのでソフト導入は難しい状況。エクセルくらいは問題ないと思うんだけど、許可下りず。

729 :デフォルトの名無しさん:2018/05/24(木) 09:57:30.14 ID:fftgGS82.net
人命にかかわるならPowerShellでもだめだろ

730 :デフォルトの名無しさん:2018/05/24(木) 12:22:12.99 ID:6ROz+TzN.net
線形回帰分析のためだけにエクセルを導入しようとする高レベルVBAエンジニアさん命を握られてしまった従業員さん

731 :デフォルトの名無しさん:2018/05/24(木) 13:10:55.11 ID:dChwsR57.net
>>730
日本語で

732 :デフォルトの名無しさん:2018/05/24(木) 18:11:34.30 ID:CzEEKu6Z.net
今回だけじゃなくて別のデータ分析する
機会も出てくるかもしれないだろ

エクセルに限らずソフトがインストールできないんじゃ
いろいろ車輪の再発明することになりそう

733 :デフォルトの名無しさん:2018/05/24(木) 18:17:30.66 ID:5HLXkVSJ.net
そういう機会がなんども出てきてから検討すればいいよ
まあそうなったらエクセルじゃなくてデータ解析に適したツールを導入するべきだろうけどね
VBAerさんはとにかくVBAを使いたいって目的が先行するから困る

734 :デフォルトの名無しさん:2018/05/24(木) 18:47:46.05 ID:5HLXkVSJ.net
なんでもかんでも再発明が悪という風潮はよろしくない
少量の些細な再発明を避けるために大規模なソリューションを導入すると
そのソリューションの管理コストや障害リスクの方が高くなってしまう

735 :デフォルトの名無しさん:2018/05/24(木) 18:52:23.87 ID:YkaVpFZu.net
なんで制御PCと同じのでやろうとしてるのか?

そもそもwi

736 :デフォルトの名無しさん:2018/05/24(木) 19:37:16.12 ID:8RmhyhjF.net
そういう設定なんだなというのは皆わかった上でディスカッションしてる
なので野暮なツッコミは無しにしようや

737 :デフォルトの名無しさん:2018/05/24(木) 19:58:22.10 ID:HJmOkmLD.net
勉強とは再発明することだと思うんがなあ

738 :デフォルトの名無しさん:2018/05/24(木) 21:09:40.32 ID:zQgi4Vqc.net
>>735
今はデータをUSBで他のPCに移してから処理してる。
制御PCでやりたい理由は、USBはパスワード付きっていうのもあって面倒で、しかも常に最新の情報を求められるため日に数回USBで出し入れすることになるのでより面倒。
それが毎日となるとめちゃくちゃ面倒。
ということで不慣れなpowershell でやろうとした次第です。

739 :デフォルトの名無しさん:2018/05/24(木) 22:23:06.92 ID:A0AqRoYu.net
別PCでC#の解析用アセンブリ作ってPowerShellから呼び出したらいいんじゃないの

740 :デフォルトの名無しさん:2018/05/24(木) 22:34:04.69 ID:JOD0E1R+.net
ネットも禁止な所?

741 :デフォルトの名無しさん:2018/05/24(木) 22:42:20.58 ID:OVWSg8Eh.net
オフラインです。C♯は難しそうなので。

すみません、私事を語り過ぎました。元の話題に戻ってどうぞ

742 :デフォルトの名無しさん:2018/05/24(木) 22:53:30.12 ID:6yspu/tD.net
死亡事故が起こるようなマシンだろ
俺なら通常はネットから切り離しとくわ

743 :デフォルトの名無しさん:2018/05/25(金) 02:05:25.85 ID:gztHcn54.net
>>742
オフラインって書いてますやん

744 :デフォルトの名無しさん:2018/05/25(金) 03:37:02.75 ID:JRXZZDGl.net
会話がかみ合ってないな
頭悪そう

745 :デフォルトの名無しさん:2018/05/25(金) 03:58:22.29 ID:cDmsKy0H.net
いや現実の問題設定は良い刺激になったよ
そういうのないと同じ話題がループしちゃうし

746 :デフォルトの名無しさん:2018/05/25(金) 06:29:46.18 ID:zDcEhAN3.net
そのPCで処理しても結局USBで持っていかないと駄目なんじゃ

747 :デフォルトの名無しさん:2018/05/26(土) 18:35:06.63 ID:2fyQupuv.net
AddTypeでNuGet Packageを参照に追加できれば便利だと思うんだがなぜないんだろ
いちいちpackageダウンロードしてzip解答してdll探してAddTypeするの面倒くさい

AddType -PackageSource https://api.nuget.org/v3/index.json -PackageName Oracle.ManagedDataAccess -Version 12.2.1100
$connection = New-Object -TypeName Oracle.ManagedDataAccess.Client.OracleConnection

こんなんできたら絶対便利だろ

748 :デフォルトの名無しさん:2018/05/27(日) 01:15:09.38 ID:ek08JVnr.net
そういうコマンドレットを作ればいいんじゃないの

749 :デフォルトの名無しさん:2018/05/27(日) 10:22:45.07 ID:FRc1Igvs.net
こういうのは末端のユーザーじゃなくMicrosoftが責任持って整備すべき仕事だよなぁ

750 :デフォルトの名無しさん:2018/05/27(日) 10:32:40.51 ID:uKjxyzN7.net
>>747
Visual Studioだと全部やってくれるのにな

751 :デフォルトの名無しさん:2018/05/27(日) 10:54:12.69 ID:kiqwqKPT.net
https://www.powershellgallery.com/items?q=nuget&x=0&y=0
この中にお望みの物ないの?
俺は調べてないけど

752 :デフォルトの名無しさん:2018/05/28(月) 20:48:57.60 ID:ANh8mcyB.net
csv読み込みのときに、♯が入ってる行が消えるのですが回避方法あるでしょうか?
バージョンは2のため、cat|convertfrom- csv を使っています。

753 :デフォルトの名無しさん:2018/05/29(火) 10:01:43.76 ID:JWI1PS/k.net
cat|♯を消す処理|convertfrom- csv

754 :デフォルトの名無しさん:2018/05/29(火) 13:59:12.26 ID:/wWb7+KW.net
半角井桁でも全角井桁でもなくシャープがダメ文字ってことなら、いわゆる機種依存文字に対して内部的に文字化けしてるのかね
Get-Contentの-Encodingパラメーターを変えて試行錯誤してみるのはどうだろ

755 :デフォルトの名無しさん:2018/05/29(火) 20:04:16.63 ID:uVfBdj0+.net
>>753
おっしゃる通りcat時点ではシャープのある行も問題なく表示されていたのでそこでシャープを適当な文字列に置換する事で回避出来ました。
なお文字化け等では無かったためencodingは関係ありませんでしたが、お二方ともアドバイスしていただきありがとうございました。

756 :デフォルトの名無しさん:2018/05/29(火) 21:24:14.97 ID:NIS7bYGB.net
csvでシャープで始まる行はコメントとみなされる

757 :デフォルトの名無しさん:2018/05/29(火) 21:48:09.49 ID:JDVJC7kx.net
C#をAddTypeする#だけに

758 :デフォルトの名無しさん:2018/05/29(火) 22:37:29.79 ID:DjF05HP4.net
>>756
そんな仕様初めて聞いた
Excelは#で始まる行も読み込むよ

759 :デフォルトの名無しさん:2018/05/29(火) 23:17:16.03 ID:uVfBdj0+.net
>>756
そういう仕様なんだね。
プログラム内じゃないんだから勝手にコメントアウトしないで欲しい

760 :デフォルトの名無しさん:2018/05/30(水) 01:59:47.06 ID:yjZg0US2.net
RFCではCSVのコメントなんて定義されてないんだがな
#がコメントとか方言です

761 :デフォルトの名無しさん:2018/05/30(水) 07:47:42.04 ID:fRdW4Y4e.net
「♯を含む行」が消えるって言ってるんだから、実は「#で始まる行」が消えてた、なんてことは流石にないでしょう

762 :デフォルトの名無しさん:2018/05/30(水) 08:14:02.91 ID:fRdW4Y4e.net
と思って検証したらマジじゃねーかバーロー
v2では使えないけどcat -raw|convertfrom-csvなら無視されなくなるから、#がCSVコメントとして無視されてるのではなくて、#をコメント行相当のオブジェクトとして返しているGet-Content側がタチ悪いという話じゃないだろうか

763 :デフォルトの名無しさん:2018/05/30(水) 10:30:58.30 ID:962OkqnQ.net
" で囲んだら大丈夫とか?

764 :デフォルトの名無しさん:2018/05/30(水) 22:12:34.15 ID:8qi2Khqy.net
PCに入ってるPowerShellのバージョンを簡単に切り替える方法はないのでしょうか?
作成したスクリプトがバージョン2でも3でも動くか等の検証を行いたいのですが?

765 :デフォルトの名無しさん:2018/05/30(水) 22:36:17.40 ID:JXGp/YkD.net
旧バージョン互換で動かすオプションあった気がする

766 :デフォルトの名無しさん:2018/05/31(木) 17:20:46.88 ID:ZTEAvdsG.net
そのCSV は各列を、" " で囲んでないのか?

767 :デフォルトの名無しさん:2018/05/31(木) 21:31:21.76 ID:3wC9yI4G.net
Windows PowerShell 2.0 エンジンの開始
https://docs.microsoft.com/ja-jp/powershell/scripting/setup/starting-the-windows-powershell-2.0-engine

768 :デフォルトの名無しさん:2018/06/01(金) 19:12:06.06 ID:j/MM0qyt.net
ISEがインテリセンス使ったら落ちてたのが
KB4100403で修正されたらしい(未確認)

769 :デフォルトの名無しさん:2018/06/04(月) 18:18:51.32 ID:duSCMV5/.net
エクセルに書き込む時、例えば
for(i=1; -le 1000;i++){
sheet.cells.item(i,1)=i*5

こんな感じにすると非常に動作が遅いのですがもっと高速にする方法はあるでしょうか。
なおvbaでは、
for i=1 to 1000
arr(i,1)=i*5
next
と配列に入れておいてから、
oSheet.Range(oSheet.Cells(1, 1), oSheet.Cells(UBound(arr, 1), UBound(arr, 2))) = arr
と一括で書き込むと速いのですが、PSでもこのような書き方はあるでしょうか。

770 :デフォルトの名無しさん:2018/06/04(月) 19:50:56.49 ID:gQR1ea5z.net
>>769
速いかは知らんけどそれと同じようにするならこんな感じかね

$n = 1000
$arr = New-Object "object[,]" $n,1
1..$n | foreach { $arr[($_-1),0] = [int]$_*5 }
$sheet.Range($sheet.Cells.Item(1, 1), $sheet.Cells.Item($n, 1)) = $arr

771 :デフォルトの名無しさん:2018/06/04(月) 23:24:00.90 ID:OF0qTMZ9.net
>>770
ありがとうございます。多次元配列を使えばよいのですね。
webで調べると多次元配列と多段階配列(ジャグ配列)がごっちゃになってるサイトもあって混乱していましたが、770さんの簡潔な記述をみて理解出来ました。

772 :デフォルトの名無しさん:2018/06/06(水) 23:07:10.85 ID:N8yiaTQz.net
gradle的なタスクランナーDSLは無いの?

773 :デフォルトの名無しさん:2018/06/09(土) 16:51:36.72 ID:XSSJlv/Q.net
PowershellからExcelのユーザフォーム(コマンドボタン)を非表示かクリックできないようにしたいのですが、いくつか試してもうまく設定できませんでした。

ご存知の方がいたら、ご教示いただければ。

774 :デフォルトの名無しさん:2018/06/09(土) 17:03:33.87 ID:Tjb3C0On.net
試したコードを晒せば修正してあげるよ^^

775 :デフォルトの名無しさん:2018/06/09(土) 18:02:05.59 ID:54mp5fzV.net
>>773
別のインスタンスからフォームを操作するってこと?
参考にVBAだとどうやるの?

776 :773:2018/06/11(月) 12:16:46.97 ID:vpJG/a5Y.net
以下で動くことは確認しましたが、できたらPowershellだけで完結したいです。

$excel = New-Object -ComObject Excel.Application;
$book = $excel.Workbooks.Open('〜ファイル名〜');
$num1 = $excel.Worksheets.count ;
$array = @() ;
for ( $i1 = 1 ; $i1 -le $num1 ; $i1++ ){ ;
if ( $excel.Worksheets.Item($i1).name.substring( 0, 4 ) -eq 'xxx_' ) { ;
$array += $excel.Worksheets.Item($i1).name ;
} ;
} ;
for( $i2=0; $i2 -lt $array.count; $i2++){ ;
$shtname = $array[$array.count-$i2-1] ;
$MDB_index = $excel.Worksheets.Item('MDB').index ;
$excel.Worksheets.Item($shtname).move( $excel.Worksheets.Item( $MDB_index ) ) ;
$excel.Worksheets.Item('MDB').move( $excel.Worksheets.Item( $shtname ) ) ;
$excel.Worksheets.Item($shtname).name = 'yy_' + $shtname.substring( 4, $shtname.length - 4 ) ;
} ;
$excel.run("Unable")

777 :773:2018/06/11(月) 12:17:21.17 ID:vpJG/a5Y.net
* VBAのUnableの中身 ;
Sub Unable()
Dim SHTNAME As String
Dim NUMBER As Integer
Dim I1 As Integer

NUMBER = ThisWorkbook.Worksheets.Count
For I1 = 1 To NUMBER
SHTNAME = ThisWorkbook.Worksheets(I1).Name
If Mid(SHTNAME, 1, 3) = "yy_" Then
ThisWorkbook.Worksheets(I1).CBT1.Enabled = False
End If
Next
End Sub

778 :デフォルトの名無しさん:2018/06/11(月) 23:51:03.62 ID:gcU8d3qp.net
>>776
xxx_のシートをMDBの後ろに並べたいってことでいいんかね?

$book.Sheets[$book.Sheets.Count..1] | where { $_.name -like "xxx_*" } | foreach {
$_.move([Reflection.Missing]::Value, $book.Sheets("MDB"))
$_.name = $_.name -replace "^xxx_","yy_"
$_.OLEObjects("CBT1").Enabled = $false
}

779 :773:2018/06/12(火) 12:30:53.64 ID:ekyc4Iri.net
>>778
VBAに依存せず実行できました。感謝。

780 :デフォルトの名無しさん:2018/06/21(木) 19:07:26.37 ID:K/kbKit1.net
windows10ですが
Get-ItemPropertyでLastWriteTimeを見てみると
エクスプローラで表示される更新日時と異なるファイルが有りました

更新日時の方が作成日時より前の日付になってるので
おそらく LastWriteTimeの方が正しい日付だと思います

これを訂正するためにPSからエクスプローラの更新日付を取得したいのですが
エクスプローラの更新日時がどこから来ているものかさっぱりわかりません

781 :デフォルトの名無しさん:2018/06/21(木) 19:25:07.20 ID:UNnnYLs6.net
Utc?

782 :780:2018/06/21(木) 20:21:17.18 ID:K/kbKit1.net
いくつかファイルを調べてみると、更新日時とLastWriteTimeの差が一週間離れているのも有るので
タイムゾーンの問題とは考えにくいです
よく見ると、作成日時もCreationTimeと10日くらいのずれが有りましたw

エクスプローラが詳細プロパティ以外の日付を参照してる意味が分かりません
windowsの強制メジャーアップデートで何度かクラッシュした影響でファイルが壊れてるのかも

783 :デフォルトの名無しさん:2018/06/23(土) 00:44:45.99 ID:Ut6U9K8s.net
代替データストリームじゃね?

784 :デフォルトの名無しさん:2018/07/04(水) 22:21:13.01 ID:gFgZc5FG.net
JBF

785 :デフォルトの名無しさん:2018/07/04(水) 23:23:31.98 ID:acN7B5+I.net
なんでこんなに過疎ってるんですか

786 :デフォルトの名無しさん:2018/07/05(木) 22:43:24.58 ID:KzEq2oHL.net
「書き込みがあったら反応しよう」と思ってる人がたくさんいるからかな?

787 :デフォルトの名無しさん:2018/07/08(日) 03:18:34.99 ID:3ZrH1Hyw.net
わしはね、ローカルの小物guiでps始めよう思ってたらhtaというものを発見してしまったんじゃ

788 :デフォルトの名無しさん:2018/07/08(日) 04:04:12.13 ID:UfjkVwX1.net
失われた古代技術

789 :デフォルトの名無しさん:2018/07/14(土) 21:56:02.39 ID:RVDUVOmY.net
若者が「HTAって使えるんじゃね?」と思ってしまうのは仕方がない。
オッサン〜ジジイが「HTAを発見した」つったら「今まで何して生きてきたの?」としか言いようがない。

Windowsでのローカルの小物GUIは、今、滅亡の危機ですらある。
WordやExcelを使った自動化すら、今後もできるかどうか怪しい。

790 :デフォルトの名無しさん:2018/07/14(土) 22:29:26.95 ID:LxoRiW+E.net
HTA軽くていいよね機能追加も楽だし
ランチャーにしてる

791 :デフォルトの名無しさん:2018/07/14(土) 22:38:50.55 ID:utl6Xayz.net
ローカルの小物GUIってなんだよ

792 :デフォルトの名無しさん:2018/07/14(土) 22:50:10.64 ID:P6K2NPR4.net
GUI付のしょうもないアプリ

793 :デフォルトの名無しさん:2018/07/14(土) 23:12:51.46 ID:RVDUVOmY.net
ローカル実行できるスクリプトで動くGUIアプリに決まってるだろ。
Excel や Access の VBA がその代表格。
COM がベースだから切られる方向なのは分かる。
でも代替できるものがない。

いっとき PowerShell+WPF が期待を担ったが…
・呼ばれる側のアプリにコマンドレットの実装が必要
・.NET ごとオープンソースの世界に行ってしまって Windows そのものが切られそう
・そういうのは C# で書いて配れ、と明示的に言ってくれた方がまだ楽。

が、MS はダンマリを決め込んでいるんだよなぁ…

794 :デフォルトの名無しさん:2018/07/15(日) 00:32:04.05 ID:X2092vNg.net
>>791
なんなんでしょうね

795 :デフォルトの名無しさん:2018/07/15(日) 01:35:23.34 ID:0pMWk4zA.net
>>793
>COM がベースだから切られる方向なのは分かる。
>でも代替できるものがない。

よく調べてないんだけどVisual Studio Tools for Officeとかはダメ?

796 :デフォルトの名無しさん:2018/07/15(日) 01:35:37.01 ID:SEkGxxwq.net
powershell入ってないXP以下で使えるんすよ
判ってくださいよ

797 :デフォルトの名無しさん:2018/07/16(月) 21:11:22.99 ID:HqjsUdw9.net
とりあえず、PowerShellが「最強CUI」とかいう寝言は取り下げた方がいい。誤解を招く。

798 :デフォルトの名無しさん:2018/07/16(月) 21:19:57.77 ID:Qq5myI16.net
はいはい、しゅごいでちゅねー

799 :デフォルトの名無しさん:2018/07/16(月) 21:42:32.84 ID:h7LXYR/p.net
最強だが。
ただ使っている人は少ない。

800 :デフォルトの名無しさん:2018/07/16(月) 21:51:20.37 ID:XBIjWYki.net
>>797
誤解してるのはお前だけだからお前がどっかに行けば解決

801 :デフォルトの名無しさん:2018/07/17(火) 23:10:59.27 ID:yoTx9oxy.net
>>798-800
管理目的なら最強だろう。確かに。
が、それ以外の目的にはおおよそ優しくない。てゆーか元の開発陣がそう言ってる(管理目的、API指向)。
OSSになったから 6以降も(3でもやったけど…)破壊的な仕様変更をゴリゴリやりそう。

特に PowerShell Desktop は今後バージョンアップは無さげだから、管理系以外の Win系のユーザーは手を出す理由がない。
Win系ですら 「引き継ぎを考えたら VBScript で書いておこうか…」てなる。
WPF は死亡寸前だし。

Winユーザーはバッチや VBScript の後継としての役目を捨てようとしている PowerShell に文句を言う筋合いはあると思うがね。
純粋な対話型CUI の最強は bash系列だし。

何言ってんの??
どこがどう最強なのか言って欲しいわ。

特に、Office系の自動化なんて COMオブジェクトに頼らないと無理だろ。
PowerShell で書くといちいち Excel のセルですらリソース開放が必要でクソ面倒。
Set objExcel = Nothing
とサクッと書けるほうがいいに決まっている。

PowerShell は万能じゃねーんだよ!馬鹿ども。

802 :デフォルトの名無しさん:2018/07/17(火) 23:14:01.71 ID:fhQFSH5P.net
>>801
管理目的とは?

803 :デフォルトの名無しさん:2018/07/17(火) 23:20:39.18 ID:fwrxWQ2y.net
C#erだから.NETライブラリがそのまま使えるPowerShell好きだわ

804 :デフォルトの名無しさん:2018/07/17(火) 23:25:15.93 ID:fhQFSH5P.net
>>803
どんな用途で使ってる?

805 :デフォルトの名無しさん:2018/07/17(火) 23:32:27.62 ID:fwrxWQ2y.net
>>804
最近作ったのはCのヘッダーからC#ラッパー生成するやつ

806 :デフォルトの名無しさん:2018/07/18(水) 12:45:25.76 ID:xS6rtIKl.net
vbsからpsをキックする

807 :デフォルトの名無しさん:2018/07/19(木) 23:44:42.87 ID:puBIzWD6.net
>>806
生理的に嫌すぎる

808 :デフォルトの名無しさん:2018/07/22(日) 13:00:02.17 ID:ZN+SAgqe.net
VBAスレに来てるPowerShellゴミクズ荒し何なの?

PowerShellの工夫はより良くするための工夫でVBAの工夫は欠陥を補う工夫って、どのロで言うんだろうね。
VBAだとソース管理出来ないというから、ソース抜き出してソース管理ツールに渡すのはダメという意味なんだろうけど、その割にPowerShellだとVisualStudioと連携できるとか言い出すダブスタ。

PowerShellでC#コンパイル出来るとか、バカ丸出し。
csc使うんだったら何だって出来るだろう。
コイツがムカつくのはそういう工夫を全て否定する所。
それを否定するならPowerShellだってゴミクズだろう。

そういう工夫こそが大事なのに。

809 :デフォルトの名無しさん:2018/07/22(日) 13:30:20.53 ID:FoHjHQaV.net
スクリプトなんて適材適所で何使ったっていい
他人がなんかいちゃもん付けてきたら、
「こいつ初心者で一時的に心酔してバカ発言してるんだな、
 あと数ヶ月もすればこのときのことを思い出して恥ずかしさにそこらへんを転げまわるんだろうな」
程度に気の毒がってりゃいいさ

810 :デフォルトの名無しさん:2018/07/22(日) 13:32:06.23 ID:G9t5vsVs.net
エクセルなんて要らん工夫して紙と電卓を使いこなせば事務作業はできる

会社に支給されたパソコンを目の前置いて、こう主張するおじいさんが居たらどう思う?
馬鹿だねーエクセルなんて簡単なのになんで電卓使うの?
社員ならエクセル使っていいのになんで?
そう思わないかな?

もし思わないなら根本的に感覚がズレてるので同意を得るのは難しいと思うよ

811 :デフォルトの名無しさん:2018/07/22(日) 13:33:43.75 ID:/fuF+goF.net
つかわざわざこっちにきて何がしたいん?
そいつに言えばいいやん
お前もゴミだろう

812 :デフォルトの名無しさん:2018/07/22(日) 13:35:02.58 ID:G9t5vsVs.net
>>811
ことごとく論破されたので逃げてきたんだろう

813 :デフォルトの名無しさん:2018/07/22(日) 14:06:13.49 ID:YGqHpPTt.net
>>811
VBAのスレが荒れるのが嫌だからでしょ
考えたらわかるじゃんw 脳みそあるの?

814 :デフォルトの名無しさん:2018/07/22(日) 14:07:05.72 ID:YGqHpPTt.net
>>812
PowerShellユーザが迷惑かけてるんだから
スレとしての責任が問われてる

815 :デフォルトの名無しさん:2018/07/22(日) 14:07:45.01 ID:ZN+SAgqe.net
散々論破しているのに最後まで居座られて迷惑してスレが終わったからだよ。
そしてPowerShellの立場はExcelと被るわけでどっちも適材適所だろ。
その場に合ったのを使えば良いんだ。

奴は自分がPowerShellを貶めてるのに気付いて無い。

816 :デフォルトの名無しさん:2018/07/22(日) 14:15:13.20 ID:/fuF+goF.net
責任とって立ててきてやったぞ
存分にレスバを楽しんでくれ

Excel VBA 質問スレ Part55
https://mevius.5ch.net/test/read.cgi/tech/1532236398/

817 :デフォルトの名無しさん:2018/07/22(日) 14:16:06.18 ID:WPYgWuMH.net
読んできた
Rubyキチが紛れてるのが無理矢理すぎて笑える

818 :デフォルトの名無しさん:2018/07/22(日) 14:17:54.05 ID:YGqHpPTt.net
>>816
馬鹿野郎、てめんとこの人間が迷惑かけてんだから
うちの者がご迷惑おかけして申し訳ありません
と謝罪するのが筋だろうが

819 :デフォルトの名無しさん:2018/07/22(日) 14:19:08.41 ID:YGqHpPTt.net
ほんとPowerShellは他人に迷惑かけてバッカやな
ほんまクズやな、PowerShellのせいやろな

820 :デフォルトの名無しさん:2018/07/22(日) 14:20:41.76 ID:/fuF+goF.net
照れんなよ
立ててくれてうれしいんだろ

821 :デフォルトの名無しさん:2018/07/22(日) 14:23:23.96 ID:YGqHpPTt.net
行動は早いけど間違ってる人っているよね

822 :デフォルトの名無しさん:2018/07/22(日) 14:24:51.70 ID:1tw3f2DK.net
オマエやんそれ
レスは早いがトンチンカン

823 :デフォルトの名無しさん:2018/07/22(日) 14:26:02.34 ID:YGqHpPTt.net
>>822
ぼくは何も行動してないからね、完全に無害だけど
スレ立てしちゃった人がいるんだよ、ぼくはその人を知ってるんだ

824 :デフォルトの名無しさん:2018/07/22(日) 14:26:31.77 ID:YGqHpPTt.net
>>816
こいつです、こいつVBAのスレを立てやがりました

825 :デフォルトの名無しさん:2018/07/22(日) 14:27:18.37 ID:/fuF+goF.net
褒めすぎんなよ
当然のことをしたまでよ

826 :デフォルトの名無しさん:2018/07/22(日) 14:27:57.35 ID:YGqHpPTt.net
自分がどれだけ悪いことをしたのかについてもわかってないと思います
頭の悪い人っているんだなって思いました

827 :デフォルトの名無しさん:2018/07/22(日) 14:28:40.17 ID:YGqHpPTt.net
https://pbs.twimg.com/media/CkhWReGUgAAJvHw.jpg

828 :デフォルトの名無しさん:2018/07/22(日) 14:30:32.96 ID:YGqHpPTt.net
自発的に間違った行動をとる組織にとってのガン細胞が確認されました

829 :デフォルトの名無しさん:2018/07/22(日) 14:30:55.52 ID:YGqHpPTt.net
>>816 こいつガンです

830 :デフォルトの名無しさん:2018/07/22(日) 14:31:21.33 ID:YGqHpPTt.net
ガン、お前だったのか!?

831 :デフォルトの名無しさん:2018/07/22(日) 14:31:43.01 ID:YGqHpPTt.net
大造じいさんとガン

832 :デフォルトの名無しさん:2018/07/22(日) 14:33:56.27 ID:YGqHpPTt.net
なんでVBAのスレ立ててもうたんや
何してくれてんのや
PowerShellユーザが言い訳できないレベルで
全面的に悪いことになってまうやろ

833 :デフォルトの名無しさん:2018/07/22(日) 14:35:11.72 ID:YGqHpPTt.net
なんでや!?なんでやねん!なんでスレ立ててもうたんや!!
なんでもっと冷静に行動でけへんねん
スレ立てたら済むと思ったんか?
なに考えてんねん

834 :デフォルトの名無しさん:2018/07/22(日) 14:36:13.45 ID:YGqHpPTt.net
なんでこんな前例を作ってしまったんや
この過ちはPowerShellの後世に禍根を残すで

835 :デフォルトの名無しさん:2018/07/22(日) 14:37:09.12 ID:YGqHpPTt.net
>>831
大造じいさん「ぐぅぅ、わしはもうだめや・・・」

836 :デフォルトの名無しさん:2018/07/22(日) 14:39:37.19 ID:YGqHpPTt.net
さて、残念なことが起きました
この中にVBAのスレを立てた人がいます
正直に手を挙げてください

837 :デフォルトの名無しさん:2018/07/22(日) 14:39:55.36 ID:YGqHpPTt.net
>>816
お前や!!!

838 :デフォルトの名無しさん:2018/07/22(日) 15:07:12.23 ID:JJRFMnGG.net
いくら何でもこれはないわ。
どっちがよりクズかって言ったら断然VBA住人だろう。
PowerShell -Part 3
http://mevius.5ch.net/test/read.cgi/tech/1532236932/

839 :デフォルトの名無しさん:2018/07/22(日) 16:11:00.92 ID:YGqHpPTt.net
>>838
スレ立ててやったんやから感謝せえや

840 :デフォルトの名無しさん:2018/07/22(日) 16:11:26.61 ID:YGqHpPTt.net
当然のことをしたまでよ
照れんなよ

841 :デフォルトの名無しさん:2018/07/22(日) 18:26:14.28 ID:JJRFMnGG.net
>>839
ずいぶん可愛そうな環境で育ったんだな。同情するよ、ごめんな。

842 :デフォルトの名無しさん:2018/07/24(火) 20:42:16.15 ID:cNxRMkIk.net
>>808
> PowerShellでC#コンパイル出来るとか、バカ丸出し。
残念ながらそんな昭和脳レベルの話じゃないんだな w
http://yomon.hatenablog.com/entry/2013/06/05/PowerShellスクリプト内でC%23コードを書いて使う

843 :デフォルトの名無しさん:2018/07/25(水) 21:13:55.37 ID:Yq3sixxb.net
Powershellのコマンドを使ってあるEXEを管理者権限で起動することって出来ないでしょうか?

いちいちEXEのショートカットを作って「管理者として実行」にチェックするのが面倒なので・・・

あ、OSはWin7です。

844 :デフォルトの名無しさん:2018/07/25(水) 21:15:04.89 ID:Yq3sixxb.net
↑OSはWin10でした。すみません。

845 :デフォルトの名無しさん:2018/07/25(水) 21:41:07.86 ID:ep37fxti.net
start hoge.exe -Verb runas

846 :デフォルトの名無しさん:2018/07/25(水) 23:07:01.78 ID:GlwT5bgj.net
>>842
あんまり、荒らすつもりは無いけどそれはダメダメだね。
というか、その昔俺もその手法使ってたし。
俺の書いたPS1ファイルのタイムスタンプを見ると2011年だからその記事より前だな。

あのね、何でC#のソースを動かさなきゃならんの?
そういう場面が有るとすればPowerShellだけで出来ないことをしようとする場合だろ。
つまり工夫で乗りきろうとしている場合なんだからVBAのスレを荒らしてた奴風に言わせればC#のソースを書かなきゃならん時点でPowerShellはゴミってことになるのよ。

847 :デフォルトの名無しさん:2018/07/26(木) 00:24:48.95 ID:xTcDuoaq.net
VBA内でC#のクラス定義してそのままVBA内で使えるようになってから出直してこい
何をするにも不合理に手間がかかるからVBAは糞だって言ってんだよ

848 :デフォルトの名無しさん:2018/07/26(木) 00:32:39.24 ID:A133ONF8.net
なんで既存のソース活用するのにcscだの別プロセスだの大げさなことしないといかんの?
.NETがあるのになんで態々COMだのwinAPIだの直で触らなあかんの?
っていう人間なので問題なしです

849 :デフォルトの名無しさん:2018/07/26(木) 06:27:07.99 ID:gfIbAgn/.net
>>847
でもPowerShellは激遅ですよ

850 :デフォルトの名無しさん:2018/07/26(木) 06:40:44.04 ID:/8jtV8/F.net
>>846
> そういう場面が有るとすればPowerShellだけで出来ないことをしようとする場合だろ。
バカなの?
・C#のほうが楽に書ける
・既存のコードが流用できる
とかあるだろ

851 :デフォルトの名無しさん:2018/07/26(木) 08:08:40.25 ID:OM9s1u3H.net
>>847
PowerShellだって不合理じゃねーか。
お前は都合の良いところばかり言う。
Excelブック1ファイルで完結できるようになってから出直しな。

>>850
同じことだ。
欠点を工夫で乗りきっているわけだから。

852 :デフォルトの名無しさん:2018/07/26(木) 08:42:02.44 ID:xTcDuoaq.net
工夫の簡単さがVBAとはダンチなんですが

853 :デフォルトの名無しさん:2018/07/26(木) 09:04:14.03 ID:EgEPuxK9.net
はるほど、ExcelVBAスレで暴れてた奴今度はこっちに来てたのか…

854 :デフォルトの名無しさん:2018/07/26(木) 12:12:12.02 ID:/8jtV8/F.net
>>851
どこが同じなんだよ w

> 出来ないことをしようとする

> 楽に書ける
> 流用できる

855 :デフォルトの名無しさん:2018/07/26(木) 12:49:19.43 ID:OM9s1u3H.net
>>854
出来ないことをしようとする。
←C#のコ―ドをそのままC#でコンパイルして、出来たプログラムを動かす。

出来ないことをしようとする。
←コンパイル済みのプログラムを高速に動かす。

出来ないことをしようとする。
←VisualStudioでGUIのデザインをする。

出来ないことをしようとする。
←面倒なことをPowerShell単体で実現する。

な、一緒だろ。

856 :デフォルトの名無しさん:2018/07/26(木) 13:38:54.60 ID:l6m81nf0.net
相変わらず日本語が通じない

857 :デフォルトの名無しさん:2018/07/26(木) 14:42:38.06 ID:/8jtV8/F.net
もう引っ込みつかなくなって意味不明なことを語りだしたか w

858 :デフォルトの名無しさん:2018/07/26(木) 14:55:36.09 ID:pqw8jMOd.net
PoshもVBAも
同じMS製品なんだから
ケンカすんなよ

859 :デフォルトの名無しさん:2018/07/26(木) 18:46:55.24 ID:BBodZQOS.net
VBAはMSの暗黒面だから一緒にしないでほしい

860 :デフォルトの名無しさん:2018/07/26(木) 19:03:10.56 ID:OM9s1u3H.net
日本語が通じないのはお互い様だろ。

C#に比較して楽に書けて無いだろ。
つまりC#を元に考えればゴミということになる。

別途VSCodeとかを入れるのは面倒じゃ無いのか?

C#のコード部品にもインテリセンスが効くのか?

楽だとすればそれはC#のことでPowerShellは文字列変数にコード入れなきゃならん。
そして文字列をC#のコードとして動かす為にもAdd-Type呼び出すなどと面倒なことをしなきゃならん。

861 :デフォルトの名無しさん:2018/07/26(木) 20:41:15.58 ID:T4rU0dQ5.net
>>860
まったくもってその通りで C#>PowerSell だよ

もっと書くと
C# > PowerSell >>>>>>>>> VBA
だけど

なんで唐突にC#と比べはじめちゃったの?

862 :デフォルトの名無しさん:2018/07/26(木) 20:43:42.29 ID:5d1EUyas.net
向こうでもVSCodeやらIDE入れたら〜ってレスしてるやついるけどさ

VBAを主に使うのは事務屋

事務の職場は(開発系と違って)外部ソフトの導入を渋られる所が多い

結局Windows付属の
・VBA
・VBS
・cmd
・PowerShell
しか使えない

エクセルにあまり関わらない処理はPowerShellでやってもいいんじゃね

って感じだと思うの
(というか、現にウチがこれ)

この、VBA(VB6)かPowerShell「しか」手段がない前提で行けば、
C#のソース読み込むとか多少歪んだ使い方だとしてもVBAよりPowerShellを使いたくなる時があるのは理解できるだろ?

もちろんVBAもバリバリ使ってるけどな

なんでどちらかだけしか使う価値がない!!!みたいな話になってんだろ

863 :デフォルトの名無しさん:2018/07/26(木) 21:19:35.67 ID:xTcDuoaq.net
マクラーは何でもかんでもVBAでやりたがるから

864 :デフォルトの名無しさん:2018/07/26(木) 23:53:09.37 ID:8XjexWHE.net
Add-Typeはメタプログラミングするときに便利

865 :デフォルトの名無しさん:2018/07/26(木) 23:56:00.76 ID:OM9s1u3H.net
>>862
逆の話でね、こっちはず―っとそういうことを言ってるの。
その度にPowerShellしか価値が無いと言われてるんだよ。
ず―っと適材適所と言ってる。

866 :デフォルトの名無しさん:2018/07/27(金) 00:00:29.39 ID:/pOg/k3/.net
>>865
VBAでスクレイピングだとか1ファイルで完結とか言っといて適材適所を主張してます!は頭おかしいんじゃねえの?

867 :デフォルトの名無しさん:2018/07/27(金) 00:03:25.35 ID:hpcoy/E6.net
>>861
全くその通りじゃね―んだよ。
VisualStudioが入って無い、もしくは入れられない環境ではC#は意味がねえ。
だから適材適所なんだよ。

大体、PowerShellがVBAに勝てるわけねえんだよ。
VBAが使われる環境ではVBA>>>PowerShellだし。
PowerEellが使われる環境ではPowerShell>>>VBAだろう。
噛み合わねえんだよ。

868 :デフォルトの名無しさん:2018/07/27(金) 00:06:37.08 ID:hpcoy/E6.net
>>866
1ファイルになるのはExcelの環境だからだろ。
そういう土俵(環境)なんだからVBAが有利なのは仕方無いだろ。
スクレイピングもExcelブックにデータを展開するのが前提だぞ。
そうじゃなかったらVBAでやるべきじゃない。

869 :デフォルトの名無しさん:2018/07/27(金) 00:13:06.60 ID:hpcoy/E6.net
汎用的な開発だったら何でVBAでやるんだよ。
そりゃアホだろ。

VBAの議論をするならExcelの環境が大前提なんだから他の言語はそれに合わせなければならない。
だから他言語は不利になるのあたり前の話。

こういう話は当然PowerShellにもあるわけで、だから適材適所なわけ。

870 :デフォルトの名無しさん:2018/07/27(金) 01:27:22.29 ID:/pOg/k3/.net
>>867
噛み合わないのはお前の理解力と日本語能力のせいでは??
正直なんでいきなり演説かましてんだこいつって感じだぞ

871 :デフォルトの名無しさん:2018/07/27(金) 06:29:32.02 ID:Z7cB5M3n.net
1ファイルになるのがメリットみたいな言い分が謎
逆にデメリットだろそれは
ファイル分けて管理したほうが開発しやすいだろ常識的に考えて
最終的に配布を1ファイルにしたいならJSみたいにバンドルすりゃいいだけだし
なんならワンライナーのオンラインインストーラーでもいい

872 :デフォルトの名無しさん:2018/07/27(金) 06:40:59.87 ID:uuBPM4V2.net
>>871
> ファイル分けて管理したほうが開発しやすいだろ常識的に考えて
それは開発側の都合でしかない
そんな事を意識しない利用者にとっては単一ファイルの方がいいのは当たり前
> なんならワンライナーのオンラインインストーラーでもいい
インストールとかバカすぎる w

873 :デフォルトの名無しさん:2018/07/27(金) 06:58:14.44 ID:1B0+N/X4.net
ちっちゃな事で荒れるな。
IT土方同士仲良くしろ。

874 :デフォルトの名無しさん:2018/07/27(金) 07:22:54.24 ID:Z7cB5M3n.net
>>872
脊髄反射でレスしないで読んでから返せない?

ユーザー都合で1ファイルがいいなら、1ファイルにバンドルすりゃいいだろ、って読めなかった?

インストールがダメってのも意味不明だな
ユーザー目線ならそれこそ何ファイルだろうがツールとして使えれば良いのだから、インストールスクリプトは有力な選択肢になる

1ファイルが良いってのもそもそもお前の思い込みでしかなくて、世の中には複数ファイルのツールのほうが遥かに多く、利用されてる
ユーザーは結果として簡単に使えればそんなことは気にしないんだよ

875 :デフォルトの名無しさん:2018/07/27(金) 08:02:02.45 ID:uuBPM4V2.net
>>874
VBAでバンドルとやらをどうやるつもりなのか書いてみ
> ユーザーは結果として簡単に使えれば
って豪語するんだから今のExcelファイル単体並に簡単に使えるんだよな w

876 :デフォルトの名無しさん:2018/07/27(金) 08:14:39.55 ID:hpcoy/E6.net
>>874
1ファイルにバンドル?
ExcelブックにPS1をバンドルしてどうするんだ?
個別に動かすの?
それじゃ1ファイルの意味ねーだろ。
第一、VBAは面倒とか言ってたのにそういう面倒なことするの?

Excelブックを渡した相手に余計な何かをインストールさせるのか。
VBAならそんなこと丸っきり必要ないのに。
インストールしなくても同じことが出来るならインストールしなきゃならんのはどう見てもデメリット。

世の中はExcelブックと他に何か別のファイルを持ち歩くのが遥かに多いとか、バカ過ぎるだろ。

ユーザーは簡単に使えれば中のコードがどうとか何の言語とかは優先度が低い。

Excelが前提のVBA批判をしてる自覚ある?
世の中には複数ファイルのツールってExcelの何?
なんか、ひとりよがりに感じるな。

877 :デフォルトの名無しさん:2018/07/27(金) 08:58:29.44 ID:5SOHwwXD.net
適材適所とか言っておいてこれだよ
どんな場所でもVBAが適材になると思ってるらしい

878 :デフォルトの名無しさん:2018/07/27(金) 11:09:47.17 ID:t79VcJbD.net
Excelの場合はVBAは適材と読めるけど

879 :デフォルトの名無しさん:2018/07/27(金) 12:06:33.39 ID:9o30Opw+.net
日本語が通じないのが一番困るねぇ
なんでエクセルにpsをバンドルするって話にすり変わってんだよ
開発は複数のPs1でやって配布は1つのps1にバンドルしてやるって話だろが

880 :デフォルトの名無しさん:2018/07/27(金) 12:06:57.97 ID:wTR8C+Yu.net
excel自体が適材じゃないから
ありとあらゆるものがexcelだから

881 :デフォルトの名無しさん:2018/07/27(金) 12:15:36.26 ID:9o30Opw+.net
ファイル渡すだけ

インストールワンライナーをコピペしてシェル叩くだけ
あるいは1つのインストールスクリプトをダウンロードして実行するだけ

どっちも初回の手間は大して変わらんだろう

でも、エクセルファイル渡しは後々のバージョン管理で混乱するから、総合的に見てインストールのほうが楽だね

882 :デフォルトの名無しさん:2018/07/27(金) 12:18:56.01 ID:9o30Opw+.net
エクセルは他のもの要らないんだー

見つからない参照


鉄板あるあるネタwww


psはライブラリなければセントラルリポジトリからとってくるだけなのでこんなアホな目に合わんで済む

883 :デフォルトの名無しさん:2018/07/27(金) 12:26:36.44 ID:2qIHcbej.net
ライブラリなんて使うからそうなる
全部自分で1から書き上げるか、歴史ある秘伝の自作ソースをコピペすれば事足りる
工夫で乗り切れるのだ




らしいっすよ?

884 :デフォルトの名無しさん:2018/07/27(金) 12:44:53.66 ID:hpcoy/E6.net
>>877
だから話の流れを読め。
Excel限定のVBAの話から始まっている。
どんな場所でもでは無い。
Excel限定だ。
元々の>>871が既にExcel限定を考慮せずにおかしなことになってる。

>>878
そうとも限らない場合もあるけど基本的にはその通り。
それに対してどんな場合でもVBAはダメっていう主張が有って、VBA側はそれに反論してる。

885 :デフォルトの名無しさん:2018/07/27(金) 12:47:15.71 ID:hpcoy/E6.net
>>881
その手間が既に面倒くさいだろ。
しかもブック開いてるのに別スクリプトも動かすのか?

めんどうだわ。

886 :デフォルトの名無しさん:2018/07/27(金) 12:51:06.22 ID:hpcoy/E6.net
>>882
そもそも基本的にMicrosoft謹製以外は使用NGが普通だぞ。
ライブラリのコードを全て把握してるとか自社で作成したものなら別だが。

887 :デフォルトの名無しさん:2018/07/27(金) 13:10:58.41 ID:2qIHcbej.net
>>885
Excelにくっついてくるソルバーアドイン使うのでさえ
オプションクリックしてアドインクリックして有効なアドインクリックしてチェックボックスクリックして…
とかやるのよりよっぽど簡単

888 :デフォルトの名無しさん:2018/07/27(金) 18:25:06.09 ID:hpcoy/E6.net
>>887
???
既にそんな設定は済んでいるが。

889 :デフォルトの名無しさん:2018/07/27(金) 18:29:23.81 ID:HpMLTKup.net
>>884
Excelありきの話ならVBAスレでバトルしてこい

ここはPowerShellスレでPowerShellはなんでもできるオールラウンダーだ
PSerは心が広いからExcelコントロールの話をするなということはない
だがExcelの話題で縛れというなら流石に付き合う理由はない

繰り返す
Excelありきの話ならVBAスレでやれ

890 :デフォルトの名無しさん:2018/07/27(金) 18:34:48.47 ID:hpcoy/E6.net
>>889
そうなんだよな。
本当は長居するつもりも無かったんだが
頓珍漢なレスが多くて反応して今に至ってる。

891 :デフォルトの名無しさん:2018/07/27(金) 18:37:15.79 ID:hpcoy/E6.net
元々VBAスレがPowerShell信者に荒らされてな。
そのままスレが最後までいって次が立つまでの間にこっちに書いたらこうなった。

892 :デフォルトの名無しさん:2018/07/27(金) 20:52:54.00 ID:/pOg/k3/.net
>>888
お前が済んでたらファイル渡されたユーザーも参照できんのかよ

893 :デフォルトの名無しさん:2018/08/01(水) 09:22:45.41 ID:LkPgJ43O.net
v6.0.3 Release of PowerShell Core
https://github.com/PowerShell/PowerShell/releases/tag/v6.0.3

894 :デフォルトの名無しさん:2018/08/05(日) 15:25:02.08 ID:iWriYPq8.net
C#は.NET無い環境だとブレークポイントで止めながらデバッグとか出来ないってことでいいのでしょうか?

895 :デフォルトの名無しさん:2018/08/05(日) 16:13:15.95 ID:8pU3W85Z.net
>>894
.NET無いってどういうこと?

896 :デフォルトの名無しさん:2018/08/05(日) 16:58:00.21 ID:iWriYPq8.net
>>895
Visual Studioでした。すみません。

897 :デフォルトの名無しさん:2018/08/05(日) 21:27:02.69 ID:8pU3W85Z.net
>>896
omnisharp
これ以上は適切なスレで

898 :デフォルトの名無しさん:2018/08/08(水) 06:10:45.62 ID:9IQgpJP5.net
Add-TypeでC#をコンパイルしてアセンブリを吐き出すことってできない?
cscをつかうかCodeDOMをつかうっきゃないか

899 :デフォルトの名無しさん:2018/08/08(水) 07:33:51.33 ID:aBUsJDbY.net
>>898
そこまできたら普通にRoslyn使えよ…

900 :デフォルトの名無しさん:2018/08/08(水) 09:28:50.60 ID:t8dLk4fV.net
>>898
-OutputAssembly
-OutputType

https://technet.microsoft.com/ja-jp/library/dd315241.aspx

901 :デフォルトの名無しさん:2018/08/10(金) 02:50:48.12 ID:r84RRSaO.net
日本語環境でUpdate-Helpが成功した方いますか?

902 :デフォルトの名無しさん:2018/08/12(日) 11:52:57.19 ID:AqaK+sLZ.net
「Write-Host $Args[0]」とだけ書いたスクリプトを、コマンドプロンプトから
「powershell ./test.ps1 "(笑)"」
と呼び出すと「CommandNotFoundException」が発生します。

括弧が悪いようですが、やっぱり渡す前に「"`(笑`)"」みたいにバッククォートで括弧をエスケープするしかないんですかね?
実際は引数に何が来るかわからないので、できればPowerShell側でなんとかしたいんですが。

903 :デフォルトの名無しさん:2018/08/12(日) 14:22:48.08 ID:pjLEMieq.net
>>902
powershell -file ./test.ps1 "(笑)"

904 :デフォルトの名無しさん:2018/08/13(月) 20:44:05.76 ID:9GVffBEY.net
>>903
いけました、ありがとうございます!

905 :デフォルトの名無しさん:2018/08/13(月) 22:24:06.95 ID:aFOAPcea.net
http://livedoor.blogimg.jp/teishaba_604/imgs/4/8/48b73c81-s.jpg

906 :デフォルトの名無しさん:2018/08/15(水) 21:56:44.38 ID:JQmIXjO5.net
>>905
店名は「笑」と書いてショウと読むのに対し,
「(笑)」は「(笑い)」の省略されたものなのでワラもしくはワライと読むはずなので,
その画像は不適切

907 :905:2018/08/16(木) 23:27:16.70 ID:3IMawj9A.net
>>906
いや、そもそもスレチなんでまともに相手しないであげて下さいw

ところでPowershellで何かわからないことあってググると
大体「http://mtgpowershell.blogspot.com/」のサイトがヒットすることが多いんだけど
このサイト運営してる人ってすごく頭がいいんだろうなあ

908 :デフォルトの名無しさん:2018/08/17(金) 02:04:19.83 ID:ApTQfLt8.net
>>907
ネタにマジレスするっていうネタやで

俺もそのサイトは度々参考にさせてもらってるわ
http://tech.guitarrapc.com/archive/category/PowerShell
↑このサイトもおすすめ。「PowerShell実践ガイドブック」の作者。

909 :デフォルトの名無しさん:2018/08/17(金) 07:49:40.85 ID:ObWRp2dL.net
>>905
>>906
麺屋側は商売だから
とくに「ワラ」とか
ネットスラングまんまの店名つけるわけない

910 :907:2018/08/17(金) 21:38:03.34 ID:OW713aU2.net
>>909
俺が悪かったのでもうスレチにマジレスは勘弁して下さい。(^_^;)

>>908
Powershellの書籍まで出してる人のサイトか、すごいですね。
使えるTIPSあるかひと通り見てみますね。

911 :デフォルトの名無しさん:2018/08/26(日) 17:31:51.65 ID:ueCC70T4.net
さすがに空白区切りの項目を$3とかで参照できないよな
awkが特殊すぎるか

912 :デフォルトの名無しさん:2018/08/26(日) 22:38:58.94 ID:BD3/9DfM.net
特化された言語と比べなければ十分シンプルかな
cat $1 | % { $a = -split $_; $a[3] + $a[2] }
変数への代入が少しやぼったく感じる

913 :デフォルトの名無しさん:2018/08/27(月) 08:30:13.32 ID:C7OBrvX6.net
ふむふむ、笑は「わら」って読まないのか…
1つ勉強になったわ
            笑笑店主


914 :デフォルトの名無しさん:2018/09/05(水) 21:03:41.11 ID:223DM7Lb.net
>>889
「PowerShellは何でもできる」は嘘。
お前は死んでいい。つーか死ね。
PoewerShellやっても背は伸びなかったし、彼女出来なかったし、宝くじにも当たらなかったわ!!!!

まぁそれは冗談として。
「何でも」ってのは流石に撤回しろよ。

あ、俺は >>884 ではない。

915 :デフォルトの名無しさん:2018/09/05(水) 21:34:41.59 ID:ueA0fDDX.net
PowerShellで赤ちゃんできました、ありがとうございます!!

916 :デフォルトの名無しさん:2018/09/05(水) 22:18:06.97 ID:+hZ+CXx5.net
>>914
> PoewerShellやっても背は伸びなかったし、彼女出来なかったし、宝くじにも当たらなかったわ!!!!
それパチモンやん

917 :デフォルトの名無しさん:2018/09/05(水) 22:34:57.71 ID:67GmsqOi.net
毛が生えてきました

918 :デフォルトの名無しさん:2018/09/05(水) 23:18:58.56 ID:223DM7Lb.net
PqewrShellを飲んで二か月です。
アソコビンビンで妻も満足です。

こう?

919 :デフォルトの名無しさん:2018/09/05(水) 23:24:51.36 ID:67GmsqOi.net
通常の蜆の30倍
蘇る男の自信

920 :デフォルトの名無しさん:2018/09/06(木) 06:56:43.48 ID:OzF+wVKL.net
蜆ってしじみのことか
PowerShell…米国の製薬会社で開発された貝のサプリかな

921 :デフォルトの名無しさん:2018/09/06(木) 21:28:59.42 ID:tWUwV9UN.net
Powershellやりはじめたら台風被害にあったよ><

家の前の自転車が倒れただけだけど

922 :デフォルトの名無しさん:2018/09/08(土) 14:31:58.13 ID:oTozgSe4.net
PowerShell Core 6.x (以下 PS6) を導入した環境でスクリプトを実行する際、
実行環境を容易に 旧来の PowerShell 5 (以下 PS5)、PS6 とで
切り替える方法ってありますか?

モジュールの関係で PS5 でないと動作しないものもあるので、こっちのスクリプトは
PS5 で動かしたい、ほかは PS6 で、って感じで混在してます。

海外のスレッドでは、拡張子「.ps6」を独自に追加してそれで切り替えれば?みたいな
回答が出てましたけど、汎用性に欠けるのであんまりそういうことはしたくないんです。
Linux みたいに shebang 行で切り替えられれば一番なんですけど。

なにかアイディア無いですか?

923 :デフォルトの名無しさん:2018/09/08(土) 14:40:20.95 ID:MO8wxn5E.net
一行目読み取ってどっちを起動するか切り替える実行ファイルつくればいいやん

924 :デフォルトの名無しさん:2018/09/08(土) 15:06:48.98 ID:hiBN1no6.net
切り替えるってのがよく分からん
そもそもps1ファイル自体は実行しても何も起こらないんじゃなかったっけ

925 :デフォルトの名無しさん:2018/09/08(土) 15:24:39.69 ID:YwBJn4st.net
そりゃスクリプトはテキストファイルだから実行形式じゃないよ
画像ビューアにコマンドライン引数で画像パス渡せば画像が開くでしょ
スクリプトの実行はそれと同じことやってるの
なんでプログラム板でこんなこと説明しないといけないんだ

926 :デフォルトの名無しさん:2018/09/08(土) 16:26:12.38 ID:L0x65Qz7.net
いやだからさ
実行元がpwshとpowershellで明確に違うのに何を切り替えるのか分からんのよ

927 :デフォルトの名無しさん:2018/09/08(土) 16:37:52.36 ID:nMBTba9u.net
拡張子の関連付け問題の話?
バ―ジョンチェックとどちらで起動するかのリストを持ってる振り分けアプリ作って、.ps1への関連付けをそれにするとか。

928 :デフォルトの名無しさん:2018/09/08(土) 16:47:51.96 ID:oKnpK5oG.net
実行された環境がPS6だったら自身をPS5で実行して終了するスクリプトを
PS5で実行したいファイルの頭に書いておけばいいんじゃね

929 :デフォルトの名無しさん:2018/09/08(土) 17:33:30.08 ID:oTozgSe4.net
例えば、Active Directory 管理用モジュール「ActiveDirectory」は、現状
powershell.exe でしか動かず、pwsh.exe ではインポートできないわけ。

--------
参考
https://docs.microsoft.com/ja-jp/powershell/scripting/whats-new/breaking-changes-ps6?view=powershell-6
PowerShell スナップインは、PowerShell モジュールの前身ですが、PowerShell コミュニティではあまり使用されていません。
-- snip --
現時点では、Windows および Windows Server 内の ActiveDirectory および DnsClient モジュールに影響します。
--------

というわけで、今俺が作ってるものだと、以下のものが混在してる。
イ)powershell.exe でしか動かない
ロ)pwsh.exe でしか動かない
ハ)どっちでも動く

で、〜.ps1 ファイルを実行する際に、右クリックして「PowerShell で実行」とすると、何もしなければ powershell.exe で
実行される。自分が作ったものはほとんどが(ハ)なんだけど、時々(ロ)もあって、それを実行するときは右クリックして「PowerShell で実行」が出来ないんで面倒。

今検討してるのは、
a) pwsh.exe でしか動かないものは拡張子を .ps6 でにして、Windows に ps6 を pwsh.exe に関連付ける
b) sendto フォルダに pwsh.exe で実行させるバッチファイルを置く
c) バッチファイル (〜.cmd) に、実行環境ごと書いてしまう (参考 http://d.hatena.ne.jp/hake/20180218/p1 )

なんだけど、ほかにやりよう無いかね。

930 :デフォルトの名無しさん:2018/09/08(土) 18:08:00.82 ID:+HZWtY92.net
UNIXシェルのシバンみたいのが理想なら>>928は現実的な最適解だと思うんだけど何故スルー?

931 :デフォルトの名無しさん:2018/09/08(土) 18:26:03.12 ID:HSx0xrFN.net
そんだけならコンテキストメニューを拡張して
「PSV5で実行」を追加すれば良くね

932 :デフォルトの名無しさん:2018/09/08(土) 19:09:29.22 ID:nMBTba9u.net
右クリックなら選べるからコンテキストメニューをどうにかすべきだな。

ダブルクリックの話かと思ってた。

933 :デフォルトの名無しさん:2018/09/08(土) 19:12:14.31 ID:nMBTba9u.net
>>930
環境の問題とプログラム自体を分けておきたいとかあるんじゃないの?

934 :デフォルトの名無しさん:2018/09/08(土) 21:00:30.80 ID:oTozgSe4.net
>>928
イメージとしてはこんな感じかな。たしかにうまくいきそう。
ありがとう、明日試してみる。
-----------
<# ps1 の関連付けが powershell.exe の状態 (デフォルト) で、pwsh.exe で実行させたいものの場合 #>
# 実行環境が ver 5 以下の場合
if ($PSVersionTable.PSVersion.Major -le 5) {
pwsh.exe $MyInvocation.MyCommand.Path
exit
}
# 以下、ver 6 以上で実行させたい内容

935 :デフォルトの名無しさん:2018/09/08(土) 21:11:46.23 ID:oTozgSe4.net
>>931 >>932
もちろんそれでも十分可能なんだけど、以下の理由でできればカスタマイズは避けたいんです。スクリプト内だけで完結させたい。

・マシンがたくさん、OS も複数種類、ユーザプロファイルもたくさんあるので、標準構成からあまりいじりたくない
・お客さんに納品する可能性も考慮

936 :デフォルトの名無しさん:2018/09/09(日) 12:32:25.50 ID:CjsffzYn.net
そんな条件なら最初から全部ver5用に作るわ

937 :デフォルトの名無しさん:2018/09/09(日) 12:54:55.70 ID:PZb39582.net
運用マニュアルなしで議論してもしょうがないでしょ
このスクリプトはver5環境で実行してくださいと一言書いとけば済む話

938 :デフォルトの名無しさん:2018/09/09(日) 13:48:43.10 ID:b90Mhdwq.net
そういう能書きが書いてあっても何のこっちゃ分からんという人に配布しなきゃいけない場合もあるからなぁ
お客さんに運用対応を要求するのも大変なことだし

939 :デフォルトの名無しさん:2018/09/09(日) 14:14:36.64 ID:R8hBsgvF.net
>>937はこの手の仕事したことないんだろ
マニュアル書いても
「ver5環境ってなんだ?」
とか、そもそも説明なんて読んでなくて
「うまく動かないので至急なんとかしてください」
って言われるだけのこと

940 :デフォルトの名無しさん:2018/09/09(日) 14:39:06.98 ID:DLS5Iddq.net
これで十分
#Requires -Version 5
if ($PSVersionTable.PSEdition -eq 'Core') {
throw 'Powershell Coreでは動作しません。'
}

941 :デフォルトの名無しさん:2018/09/09(日) 14:42:48.50 ID:0y2Fjk63.net
「マニュアル?あぁ読んでないわ。とにかく直しといてね」

942 :デフォルトの名無しさん:2018/09/09(日) 14:47:33.78 ID:0y2Fjk63.net
>>940
「なんか 動作しません て出るんだけど?直しといてね」

943 :デフォルトの名無しさん:2018/09/09(日) 15:19:04.80 ID:DLS5Iddq.net
「対応するなら○○万円(鬱陶しい顧客リスク分を上乗せして)頂戴します。」
断るならブラック顧客だから切るべし。
断れないならブラック企業だから転職。

944 :デフォルトの名無しさん:2018/09/09(日) 15:28:45.97 ID:D8J39mU4.net
>>943
突っぱねるだけじゃなく、妥協点を見出す、Fail safe, Fool proof ってのも重要なことだよ。
まあ個人のポリシーだから好きにすればいいけど。

945 :デフォルトの名無しさん:2018/09/09(日) 15:31:06.93 ID://bKOaXP.net
無職の妄想かよ w

946 :デフォルトの名無しさん:2018/09/09(日) 15:47:36.82 ID:jqHbfRUC.net
マニュアル書くにしたって、「エラーメッセージが出ます」と一言で説明するだけじゃ不十分
「『ver5環境では動作しません』というメッセージが表示されます。この場合...」と一字一句再現してやらないとわけわからなくなる人が山のようにいるのでね
ウィンドウの背景色やフレームの色まで画像付きで説明されてないと理解できない人もいるし
舐めてると死ぬぞ

947 :デフォルトの名無しさん:2018/09/09(日) 20:12:23.17 ID:0ym3cmgA.net
会計ソフトを出したら、それを買った客が、簿記・会計処理のことを聞いてくるw
女が電話に出ると、何時間でも粘るw

そういう客もいる

948 :デフォルトの名無しさん:2018/09/09(日) 20:24:13.14 ID:H4RfJ3jl.net
>>947
それ、チャンスじゃん。
サポート料を時間当たりいくらと決めとけば良い。

949 :デフォルトの名無しさん:2018/09/09(日) 20:59:40.12 ID://bKOaXP.net
>>947
全然関係ないけど昔生理用品メーカーに納入した機器の入れ替えに行った時に聞いた話だと、お客さんからの問い合わせ(多分クレーム)で長い時は3時間とかかかるって言ってた

950 :934:2018/09/10(月) 17:56:21.73 ID:0jDkILQ9.net
結局こんなふうにしたよ
https://pastebin.com/9RWLpSC7

>>928
ありがとうごさいました!
ほかの皆さんもありがとうございました!

951 :デフォルトの名無しさん:2018/09/12(水) 08:25:50.66 ID:HwQfxVDT.net
Verifying PowerShell versions…let me count the ways
https://blogs.technet.microsoft.com/laurapark/2018/08/26/verifying-powershell-versions-let-me-count-the-ways/

952 :デフォルトの名無しさん:2018/09/14(金) 07:52:52.25 ID:itNItVhP.net
powershellにはbuild toolないのか

953 :デフォルトの名無しさん:2018/09/14(金) 09:15:39.59 ID:u+Z35nAl.net
Announcing PowerShell Core 6.1
https://blogs.msdn.microsoft.com/powershell/2018/09/13/announcing-powershell-core-6-1/

954 :デフォルトの名無しさん:2018/09/14(金) 10:16:47.60 ID:60Mnn9Dg.net
これは朗報だ!
---------
AWS Lambda は PowerShell Core をサポートします
https://aws.amazon.com/jp/about-aws/whats-new/2018/09/aws-lambda-supports-powershell-core/

955 :デフォルトの名無しさん:2018/09/14(金) 12:28:03.19 ID:Z7a8n8W6.net
6.1日本語使えない?

956 :デフォルトの名無しさん:2018/09/14(金) 13:01:26.89 ID:/Xr9NdPd.net
>>954
PowerShellでWeb API作る需要あるのかな

957 :デフォルトの名無しさん:2018/09/14(金) 14:27:05.47 ID:60Mnn9Dg.net
>>956
自分の場合だけど、Windows の EC2 インスタンスと連携するプログラムを Lambda 上で
作る案件がちょくちょくあって、これまでは Windows 上は PowerShell、Lambda のほうは
P{ython で作ることが多かった。
だけど自分のスキルのせいもあって、PowerShell と Python のコーディングを同時並行で進めると
色々と混乱することが少なくなかったのね。

# 両方 Python で作れば、と思うかもしれんけど、運用の手間を考えると、
# 追加でインストールするものはなるべく少なくしたい

それが、Lambda で PowerShell Core が使えるなら PowerShell で統一できるので、
個人的にすごく捗るな、と。

958 :デフォルトの名無しさん:2018/09/16(日) 13:14:02.90 ID:16Y59QgZ.net
class構文じゃなくて本物の型を定義したい場合にはAdd-Typeしかないのかな
GUI作るときにPSObjectがうまくデータバインドできなくて困った

959 :デフォルトの名無しさん:2018/09/28(金) 12:50:16.79 ID:8vtXqMhV.net
https://news.mynavi.jp/itsearch/article/hardware/4054
Powershell6.1で大分パフォーマンス上がったみたいね

パフォーマンス以外に起動も結構早くなった感じ

960 :デフォルトの名無しさん:2018/09/28(金) 13:35:11.01 ID:oUAtTcYe.net
Macだからかもしれない
Macでの実行環境は最適化する余地が大きく残ってたとかがあり得る
Windowsでどうかは比較してみないとなんとも

961 :デフォルトの名無しさん:2018/09/28(金) 15:32:47.04 ID:ExWLpVS+.net
psわざわざ入れるって無理だな
有り物使うだけだからOSアプデで付くのを待つしかない

962 :デフォルトの名無しさん:2018/10/05(金) 17:32:43.04 ID:LWyIHUF+.net
PowershellはOSによってプリインストールバージョン違うの地味に面倒だな
MS Updateで5.0までは強制的にアップデートしてくれないかな
客先のサーバでSQLモジュールも入って無くてInstall-moduleも入って無くてスクリプト使えなくて困ったわ

963 :デフォルトの名無しさん:2018/10/05(金) 20:42:27.53 ID:OkuzM4NB.net
今の10の1803ってバージョン何が入ってるの

964 :デフォルトの名無しさん:2018/10/05(金) 21:07:07.34 ID:YbvjOj4C.net
5.1

965 :デフォルトの名無しさん:2018/10/06(土) 10:44:13.46 ID:fld0/WcD.net
2.0ベースでなんとかするテクニックは必須ですよね

966 :デフォルトの名無しさん:2018/10/06(土) 14:33:29.33 ID:gea8Zy97.net
テクニックって程のものって何かある?
使える使えないの差ぐらいじゃないの

967 :デフォルトの名無しさん:2018/10/06(土) 16:17:11.73 ID:J00E9zwo.net
再来年1月にはPowershell2.0プリインストール環境が終了するから2.0に合わせた書き方頑張る気力がイマイチ
Windows7とか2008R2は早く死んでくれないかな

968 :デフォルトの名無しさん:2018/10/06(土) 16:48:11.63 ID:h/HmdYY4.net
Windows7とか2008R2は最後のまともなバージョン

969 :デフォルトの名無しさん:2018/10/06(土) 21:18:07.69 ID:MlTlM5yZ.net
Windows 2000 Proが一番良かった。

970 :デフォルトの名無しさん:2018/10/06(土) 23:10:20.08 ID:tgEP6apu.net
>>967
SP1入れずに使ってる環境なんてほぼ無いだろ?なら4.0覚えときゃOK

個人的にはzipクラスがある4.5が望ましい

971 :デフォルトの名無しさん:2018/10/06(土) 23:21:17.76 ID:SoS+Fgug.net
とりあえず3.0以降じゃないとちょっと辛いイメージ

972 :デフォルトの名無しさん:2018/10/07(日) 00:45:26.55 ID:/+/kkqPE.net
何が辛いんだい
ほら言ってごらん

973 :デフォルトの名無しさん:2018/10/07(日) 00:51:14.63 ID:KvcjzmFM.net
3.0以降じゃないとPsCustomObject使えないとか、コマンドレット充実してなくてNETライブラリ使う羽目になって、もうこれC#で書いたほうが良くね?になるあたりかね

974 :デフォルトの名無しさん:2018/10/07(日) 02:34:13.34 ID:MeohIHbL.net
coreに移行して大分経ってからGet-ScheduledTaskとかのWindows専用っぽいコマンドレット無くなってるのに気付いた
まあこれはあんまり使わんしpowershell.exeで実行すりゃいいか

975 :デフォルトの名無しさん:2018/10/07(日) 06:17:50.14 ID:mFTX0OZ0.net
where-objectでフィルタをかける時、複数条件が必要な場合は
パイプでつなぐしかないですかね?andとかあればいいんですけど
where-object 条件1 | where-object 条件2

976 :デフォルトの名無しさん:2018/10/07(日) 06:44:39.40 ID:MeohIHbL.net
論理演算子はもちろんあります
-and -orなど

977 :デフォルトの名無しさん:2018/10/07(日) 10:50:24.18 ID:VwaVbKnV.net
>>975
サンプルだと
? {$arg -eq "test" -or $arg2 -eq "test"}
みたいな感じ
-使う演算子が繋がって違和感あるかもしれんけど

978 :デフォルトの名無しさん:2018/10/07(日) 11:44:45.71 ID:I8sm2uyS.net
そもそもカンマでcriteraの文字列を区切ればor指定になるのでは

979 :デフォルトの名無しさん:2018/10/07(日) 21:44:12.84 ID:/+/kkqPE.net
>>978
どゆこと?
$arg -eq "test1","test2"
とかやってもならないけど

980 :デフォルトの名無しさん:2018/10/08(月) 20:48:01.10 ID:7Fv0bXJp.net
パワーシェル内でパワーシェルを呼び出す時、どのパワーシェルの処理が成功してるか失敗してるかわかるようにログ出すのはどうすればいいんでしょうか?

981 :デフォルトの名無しさん:2018/10/08(月) 21:56:04.04 ID:sIA/07pT.net
>>980
スクリプトの名前等を頭につけるとか

982 :デフォルトの名無しさん:2018/10/08(月) 22:04:42.09 ID:7Fv0bXJp.net
ごめん。全然わからん・・・

983 :デフォルトの名無しさん:2018/10/08(月) 22:05:00.95 ID:vQC6HMz5.net
argsでIDを渡すとか
powershell -command { "ID: $($args[0])"} -args 777

984 :デフォルトの名無しさん:2018/10/08(月) 22:19:23.32 ID:7Fv0bXJp.net
バッチファイルみたいにリダイレクトではログ渡せないのかな?
2>1
みたいなかんじで?

985 :デフォルトの名無しさん:2018/10/08(月) 23:19:17.74 ID:nFrei6GD.net
$?で前回のコマンドの実行結果
$lastexitcodeにexitコマンドで返された値が入る(呼び出したスクリプトはexitに戻り値を付けて終了させないとダメ)

$?だとスクリプト内の最後のコマンドの結果が帰るからスクリプトの作りによっては失敗の判定は出来ないのはバッチとかと一緒

986 :デフォルトの名無しさん:2018/10/08(月) 23:24:06.69 ID:7Fv0bXJp.net
なるほど
呼び出すスクリプト内にエラーコードで正常か異常か$?で判定させてそれをifかなんかで分岐させてエラーコードを呼び出し元のスクリプトの$lastexitcodeをehcoする感じですかね?

987 :デフォルトの名無しさん:2018/10/08(月) 23:32:12.23 ID:rY44Et0R.net
>>979に答えてくれないか

988 :デフォルトの名無しさん:2018/10/08(月) 23:41:24.75 ID:GVMVzq1c.net
>>980
成否判定ならこれでよくね

hoge.ps1

$hoge = $true
if($hoge){exit 1}
exit 0
-------------

$ps = Start-Process hoge.ps1 -Wait -PassThru
switch($ps.ExitCode) {
0 {
"失敗"
}
1 {
"成功"
}
}

989 :デフォルトの名無しさん:2018/10/08(月) 23:44:14.86 ID:L+98sdt+.net
「どの」を見落としてる

990 :デフォルトの名無しさん:2018/10/08(月) 23:45:52.94 ID:7Fv0bXJp.net
これを呼び出すスクリプト全部に書くってこと?
呼び出し元と先が複数あって、先を全部修正するのが大変なので出来れば元だけで完結させたい
が、無理そうなのでこれを全てに書いていく?

991 :デフォルトの名無しさん:2018/10/08(月) 23:55:10.73 ID:GVMVzq1c.net
>>990
0で戻ってきたらokにでもすれば
いじらんで良いやろ

992 :デフォルトの名無しさん:2018/10/09(火) 00:01:31.08 ID:G4IJkzod.net
>>990
exitで成否を戻した方がしっかり判定できる
呼び出したスクリプトで何が発生したら失敗とするかをしっかり判定しないの?
結果コードでの判定とか曖昧すぎてトラブルの元と思う

993 :デフォルトの名無しさん:2018/10/09(火) 00:57:32.40 ID:VXCTyrZC.net
>>984
実際にやりたいことがわからないけどエラーメッセージをリダイレクトするだけなら同じようにできるよ
powershell ./hoge.ps1 2>>log.txt

994 :デフォルトの名無しさん:2018/10/09(火) 03:31:08.27 ID:0K1bBeTL.net
>>979
知らないけど、switch 文で、カンマを使うとか?

そういう意味じゃないの?

995 :デフォルトの名無しさん:2018/10/09(火) 05:18:39.42 ID:06HomXwK.net
>>979
-inならいけるけど、まあ違うんだろうな
dir | where { $_.name -in "a1.txt","a2.txt","b1.txt" }
$list = @( "a1.txt","a2.txt","b1.txt" )
dir | where { $_.name -in $list }

996 :デフォルトの名無しさん:2018/10/09(火) 08:24:03.86 ID:2kAOJdzZ.net
>>979
適当こいただけじゃないのかな
PSのカンマ演算子は配列を作り、配列の要素が複数なら内容問わず真になる
そもそもカンマでの結合はORなのかANDなのか意図が曖昧
仕様としても微妙だしバッドプラクティスに思える

997 :デフォルトの名無しさん:2018/10/09(火) 17:47:31.12 ID:G4IJkzod.net
次スレ
PowerShell -Part 3
http://mevius.5ch.net/test/read.cgi/tech/1539074808/

998 :デフォルトの名無しさん:2018/10/09(火) 18:41:58.03 ID:iKGY38Kd.net
>>997

前に同じ名前のスレが落ちてたけどこの板は保守が要るってことかな?

999 :デフォルトの名無しさん:2018/10/09(火) 21:10:27.51 ID:PXd6fmY+.net
>>994-997
ありがとう

1000 :デフォルトの名無しさん:2018/10/09(火) 21:31:03.39 ID:G4IJkzod.net
(1..1000 |% {if ($_ -eq 1000) {write-output "1000 complete!"} else { write-output $_}}) -join " "

1001 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1001
264 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★