【最強CUI】PowerShell -Part 2 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
0752デフォルトの名無しさん
垢版 |
2018/05/28(月) 20:48:57.60ID:ANh8mcyB
csv読み込みのときに、♯が入ってる行が消えるのですが回避方法あるでしょうか?
バージョンは2のため、cat|convertfrom- csv を使っています。
0754デフォルトの名無しさん
垢版 |
2018/05/29(火) 13:59:12.26ID:/wWb7+KW
半角井桁でも全角井桁でもなくシャープがダメ文字ってことなら、いわゆる機種依存文字に対して内部的に文字化けしてるのかね
Get-Contentの-Encodingパラメーターを変えて試行錯誤してみるのはどうだろ
0755デフォルトの名無しさん
垢版 |
2018/05/29(火) 20:04:16.63ID:uVfBdj0+
>>753
おっしゃる通りcat時点ではシャープのある行も問題なく表示されていたのでそこでシャープを適当な文字列に置換する事で回避出来ました。
なお文字化け等では無かったためencodingは関係ありませんでしたが、お二方ともアドバイスしていただきありがとうございました。
0759デフォルトの名無しさん
垢版 |
2018/05/29(火) 23:17:16.03ID:uVfBdj0+
>>756
そういう仕様なんだね。
プログラム内じゃないんだから勝手にコメントアウトしないで欲しい
0760デフォルトの名無しさん
垢版 |
2018/05/30(水) 01:59:47.06ID:yjZg0US2
RFCではCSVのコメントなんて定義されてないんだがな
#がコメントとか方言です
0761デフォルトの名無しさん
垢版 |
2018/05/30(水) 07:47:42.04ID:fRdW4Y4e
「♯を含む行」が消えるって言ってるんだから、実は「#で始まる行」が消えてた、なんてことは流石にないでしょう
0762デフォルトの名無しさん
垢版 |
2018/05/30(水) 08:14:02.91ID:fRdW4Y4e
と思って検証したらマジじゃねーかバーロー
v2では使えないけどcat -raw|convertfrom-csvなら無視されなくなるから、#がCSVコメントとして無視されてるのではなくて、#をコメント行相当のオブジェクトとして返しているGet-Content側がタチ悪いという話じゃないだろうか
0764デフォルトの名無しさん
垢版 |
2018/05/30(水) 22:12:34.15ID:8qi2Khqy
PCに入ってるPowerShellのバージョンを簡単に切り替える方法はないのでしょうか?
作成したスクリプトがバージョン2でも3でも動くか等の検証を行いたいのですが?
0766デフォルトの名無しさん
垢版 |
2018/05/31(木) 17:20:46.88ID:ZTEAvdsG
そのCSV は各列を、" " で囲んでないのか?
0768デフォルトの名無しさん
垢版 |
2018/06/01(金) 19:12:06.06ID:j/MM0qyt
ISEがインテリセンス使ったら落ちてたのが
KB4100403で修正されたらしい(未確認)
0769デフォルトの名無しさん
垢版 |
2018/06/04(月) 18:18:51.32ID:duSCMV5/
エクセルに書き込む時、例えば
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でもこのような書き方はあるでしょうか。
0770デフォルトの名無しさん
垢版 |
2018/06/04(月) 19:50:56.49ID:gQR1ea5z
>>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
0771デフォルトの名無しさん
垢版 |
2018/06/04(月) 23:24:00.90ID:OF0qTMZ9
>>770
ありがとうございます。多次元配列を使えばよいのですね。
webで調べると多次元配列と多段階配列(ジャグ配列)がごっちゃになってるサイトもあって混乱していましたが、770さんの簡潔な記述をみて理解出来ました。
0773デフォルトの名無しさん
垢版 |
2018/06/09(土) 16:51:36.72ID:XSSJlv/Q
PowershellからExcelのユーザフォーム(コマンドボタン)を非表示かクリックできないようにしたいのですが、いくつか試してもうまく設定できませんでした。

ご存知の方がいたら、ご教示いただければ。
0776773
垢版 |
2018/06/11(月) 12:16:46.97ID:vpJG/a5Y
以下で動くことは確認しましたが、できたら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")
0777773
垢版 |
2018/06/11(月) 12:17:21.17ID:vpJG/a5Y
* 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
0778デフォルトの名無しさん
垢版 |
2018/06/11(月) 23:51:03.62ID:gcU8d3qp
>>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
}
0779773
垢版 |
2018/06/12(火) 12:30:53.64ID:ekyc4Iri
>>778
VBAに依存せず実行できました。感謝。
0780デフォルトの名無しさん
垢版 |
2018/06/21(木) 19:07:26.37ID:K/kbKit1
windows10ですが
Get-ItemPropertyでLastWriteTimeを見てみると
エクスプローラで表示される更新日時と異なるファイルが有りました

更新日時の方が作成日時より前の日付になってるので
おそらく LastWriteTimeの方が正しい日付だと思います

これを訂正するためにPSからエクスプローラの更新日付を取得したいのですが
エクスプローラの更新日時がどこから来ているものかさっぱりわかりません
0782780
垢版 |
2018/06/21(木) 20:21:17.18ID:K/kbKit1
いくつかファイルを調べてみると、更新日時とLastWriteTimeの差が一週間離れているのも有るので
タイムゾーンの問題とは考えにくいです
よく見ると、作成日時もCreationTimeと10日くらいのずれが有りましたw

エクスプローラが詳細プロパティ以外の日付を参照してる意味が分かりません
windowsの強制メジャーアップデートで何度かクラッシュした影響でファイルが壊れてるのかも
0784デフォルトの名無しさん
垢版 |
2018/07/04(水) 22:21:13.01ID:gFgZc5FG
JBF
0787デフォルトの名無しさん
垢版 |
2018/07/08(日) 03:18:34.99ID:3ZrH1Hyw
わしはね、ローカルの小物guiでps始めよう思ってたらhtaというものを発見してしまったんじゃ
0789デフォルトの名無しさん
垢版 |
2018/07/14(土) 21:56:02.39ID:RVDUVOmY
若者が「HTAって使えるんじゃね?」と思ってしまうのは仕方がない。
オッサン〜ジジイが「HTAを発見した」つったら「今まで何して生きてきたの?」としか言いようがない。

Windowsでのローカルの小物GUIは、今、滅亡の危機ですらある。
WordやExcelを使った自動化すら、今後もできるかどうか怪しい。
0793デフォルトの名無しさん
垢版 |
2018/07/14(土) 23:12:51.46ID:RVDUVOmY
ローカル実行できるスクリプトで動くGUIアプリに決まってるだろ。
Excel や Access の VBA がその代表格。
COM がベースだから切られる方向なのは分かる。
でも代替できるものがない。

いっとき PowerShell+WPF が期待を担ったが…
・呼ばれる側のアプリにコマンドレットの実装が必要
・.NET ごとオープンソースの世界に行ってしまって Windows そのものが切られそう
・そういうのは C# で書いて配れ、と明示的に言ってくれた方がまだ楽。

が、MS はダンマリを決め込んでいるんだよなぁ…
0795デフォルトの名無しさん
垢版 |
2018/07/15(日) 01:35:23.34ID:0pMWk4zA
>>793
>COM がベースだから切られる方向なのは分かる。
>でも代替できるものがない。

よく調べてないんだけどVisual Studio Tools for Officeとかはダメ?
0797デフォルトの名無しさん
垢版 |
2018/07/16(月) 21:11:22.99ID:HqjsUdw9
とりあえず、PowerShellが「最強CUI」とかいう寝言は取り下げた方がいい。誤解を招く。
0801デフォルトの名無しさん
垢版 |
2018/07/17(火) 23:10:59.27ID:yoTx9oxy
>>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 は万能じゃねーんだよ!馬鹿ども。
0808デフォルトの名無しさん
垢版 |
2018/07/22(日) 13:00:02.17ID:ZN+SAgqe
VBAスレに来てるPowerShellゴミクズ荒し何なの?

PowerShellの工夫はより良くするための工夫でVBAの工夫は欠陥を補う工夫って、どのロで言うんだろうね。
VBAだとソース管理出来ないというから、ソース抜き出してソース管理ツールに渡すのはダメという意味なんだろうけど、その割にPowerShellだとVisualStudioと連携できるとか言い出すダブスタ。

PowerShellでC#コンパイル出来るとか、バカ丸出し。
csc使うんだったら何だって出来るだろう。
コイツがムカつくのはそういう工夫を全て否定する所。
それを否定するならPowerShellだってゴミクズだろう。

そういう工夫こそが大事なのに。
0809デフォルトの名無しさん
垢版 |
2018/07/22(日) 13:30:20.53ID:FoHjHQaV
スクリプトなんて適材適所で何使ったっていい
他人がなんかいちゃもん付けてきたら、
「こいつ初心者で一時的に心酔してバカ発言してるんだな、
 あと数ヶ月もすればこのときのことを思い出して恥ずかしさにそこらへんを転げまわるんだろうな」
程度に気の毒がってりゃいいさ
0810デフォルトの名無しさん
垢版 |
2018/07/22(日) 13:32:06.23ID:G9t5vsVs
エクセルなんて要らん工夫して紙と電卓を使いこなせば事務作業はできる

会社に支給されたパソコンを目の前置いて、こう主張するおじいさんが居たらどう思う?
馬鹿だねーエクセルなんて簡単なのになんで電卓使うの?
社員ならエクセル使っていいのになんで?
そう思わないかな?

もし思わないなら根本的に感覚がズレてるので同意を得るのは難しいと思うよ
0811デフォルトの名無しさん
垢版 |
2018/07/22(日) 13:33:43.75ID:/fuF+goF
つかわざわざこっちにきて何がしたいん?
そいつに言えばいいやん
お前もゴミだろう
0813デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:06:13.49ID:YGqHpPTt
>>811
VBAのスレが荒れるのが嫌だからでしょ
考えたらわかるじゃんw 脳みそあるの?
0814デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:07:05.72ID:YGqHpPTt
>>812
PowerShellユーザが迷惑かけてるんだから
スレとしての責任が問われてる
0815デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:07:45.01ID:ZN+SAgqe
散々論破しているのに最後まで居座られて迷惑してスレが終わったからだよ。
そしてPowerShellの立場はExcelと被るわけでどっちも適材適所だろ。
その場に合ったのを使えば良いんだ。

奴は自分がPowerShellを貶めてるのに気付いて無い。
0818デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:17:54.05ID:YGqHpPTt
>>816
馬鹿野郎、てめんとこの人間が迷惑かけてんだから
うちの者がご迷惑おかけして申し訳ありません
と謝罪するのが筋だろうが
0819デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:19:08.41ID:YGqHpPTt
ほんとPowerShellは他人に迷惑かけてバッカやな
ほんまクズやな、PowerShellのせいやろな
0821デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:23:23.96ID:YGqHpPTt
行動は早いけど間違ってる人っているよね
0823デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:26:02.34ID:YGqHpPTt
>>822
ぼくは何も行動してないからね、完全に無害だけど
スレ立てしちゃった人がいるんだよ、ぼくはその人を知ってるんだ
0824デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:26:31.77ID:YGqHpPTt
>>816
こいつです、こいつVBAのスレを立てやがりました
0826デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:27:57.35ID:YGqHpPTt
自分がどれだけ悪いことをしたのかについてもわかってないと思います
頭の悪い人っているんだなって思いました
0828デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:30:32.96ID:YGqHpPTt
自発的に間違った行動をとる組織にとってのガン細胞が確認されました
0829デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:30:55.52ID:YGqHpPTt
>>816 こいつガンです
0830デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:31:21.33ID:YGqHpPTt
ガン、お前だったのか!?
0831デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:31:43.01ID:YGqHpPTt
大造じいさんとガン
0832デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:33:56.27ID:YGqHpPTt
なんでVBAのスレ立ててもうたんや
何してくれてんのや
PowerShellユーザが言い訳できないレベルで
全面的に悪いことになってまうやろ
0833デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:35:11.72ID:YGqHpPTt
なんでや!?なんでやねん!なんでスレ立ててもうたんや!!
なんでもっと冷静に行動でけへんねん
スレ立てたら済むと思ったんか?
なに考えてんねん
0834デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:36:13.45ID:YGqHpPTt
なんでこんな前例を作ってしまったんや
この過ちはPowerShellの後世に禍根を残すで
0835デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:37:09.12ID:YGqHpPTt
>>831
大造じいさん「ぐぅぅ、わしはもうだめや・・・」
0836デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:39:37.19ID:YGqHpPTt
さて、残念なことが起きました
この中にVBAのスレを立てた人がいます
正直に手を挙げてください
0837デフォルトの名無しさん
垢版 |
2018/07/22(日) 14:39:55.36ID:YGqHpPTt
>>816
お前や!!!
0839デフォルトの名無しさん
垢版 |
2018/07/22(日) 16:11:00.92ID:YGqHpPTt
>>838
スレ立ててやったんやから感謝せえや
0840デフォルトの名無しさん
垢版 |
2018/07/22(日) 16:11:26.61ID:YGqHpPTt
当然のことをしたまでよ
照れんなよ
0843デフォルトの名無しさん
垢版 |
2018/07/25(水) 21:13:55.37ID:Yq3sixxb
Powershellのコマンドを使ってあるEXEを管理者権限で起動することって出来ないでしょうか?

いちいちEXEのショートカットを作って「管理者として実行」にチェックするのが面倒なので・・・

あ、OSはWin7です。
0846デフォルトの名無しさん
垢版 |
2018/07/25(水) 23:07:01.78ID:GlwT5bgj
>>842
あんまり、荒らすつもりは無いけどそれはダメダメだね。
というか、その昔俺もその手法使ってたし。
俺の書いたPS1ファイルのタイムスタンプを見ると2011年だからその記事より前だな。

あのね、何でC#のソースを動かさなきゃならんの?
そういう場面が有るとすればPowerShellだけで出来ないことをしようとする場合だろ。
つまり工夫で乗りきろうとしている場合なんだからVBAのスレを荒らしてた奴風に言わせればC#のソースを書かなきゃならん時点でPowerShellはゴミってことになるのよ。
0847デフォルトの名無しさん
垢版 |
2018/07/26(木) 00:24:48.95ID:xTcDuoaq
VBA内でC#のクラス定義してそのままVBA内で使えるようになってから出直してこい
何をするにも不合理に手間がかかるからVBAは糞だって言ってんだよ
0848デフォルトの名無しさん
垢版 |
2018/07/26(木) 00:32:39.24ID:A133ONF8
なんで既存のソース活用するのにcscだの別プロセスだの大げさなことしないといかんの?
.NETがあるのになんで態々COMだのwinAPIだの直で触らなあかんの?
っていう人間なので問題なしです
0849デフォルトの名無しさん
垢版 |
2018/07/26(木) 06:27:07.99ID:gfIbAgn/
>>847
でもPowerShellは激遅ですよ
0850デフォルトの名無しさん
垢版 |
2018/07/26(木) 06:40:44.04ID:/8jtV8/F
>>846
> そういう場面が有るとすればPowerShellだけで出来ないことをしようとする場合だろ。
バカなの?
・C#のほうが楽に書ける
・既存のコードが流用できる
とかあるだろ
0851デフォルトの名無しさん
垢版 |
2018/07/26(木) 08:08:40.25ID:OM9s1u3H
>>847
PowerShellだって不合理じゃねーか。
お前は都合の良いところばかり言う。
Excelブック1ファイルで完結できるようになってから出直しな。

>>850
同じことだ。
欠点を工夫で乗りきっているわけだから。
0855デフォルトの名無しさん
垢版 |
2018/07/26(木) 12:49:19.43ID:OM9s1u3H
>>854
出来ないことをしようとする。
←C#のコ―ドをそのままC#でコンパイルして、出来たプログラムを動かす。

出来ないことをしようとする。
←コンパイル済みのプログラムを高速に動かす。

出来ないことをしようとする。
←VisualStudioでGUIのデザインをする。

出来ないことをしようとする。
←面倒なことをPowerShell単体で実現する。

な、一緒だろ。
0860デフォルトの名無しさん
垢版 |
2018/07/26(木) 19:03:10.56ID:OM9s1u3H
日本語が通じないのはお互い様だろ。

C#に比較して楽に書けて無いだろ。
つまりC#を元に考えればゴミということになる。

別途VSCodeとかを入れるのは面倒じゃ無いのか?

C#のコード部品にもインテリセンスが効くのか?

楽だとすればそれはC#のことでPowerShellは文字列変数にコード入れなきゃならん。
そして文字列をC#のコードとして動かす為にもAdd-Type呼び出すなどと面倒なことをしなきゃならん。
0861デフォルトの名無しさん
垢版 |
2018/07/26(木) 20:41:15.58ID:T4rU0dQ5
>>860
まったくもってその通りで C#>PowerSell だよ

もっと書くと
C# > PowerSell >>>>>>>>> VBA
だけど

なんで唐突にC#と比べはじめちゃったの?
0862デフォルトの名無しさん
垢版 |
2018/07/26(木) 20:43:42.29ID:5d1EUyas
向こうでもVSCodeやらIDE入れたら〜ってレスしてるやついるけどさ

VBAを主に使うのは事務屋

事務の職場は(開発系と違って)外部ソフトの導入を渋られる所が多い

結局Windows付属の
・VBA
・VBS
・cmd
・PowerShell
しか使えない

エクセルにあまり関わらない処理はPowerShellでやってもいいんじゃね

って感じだと思うの
(というか、現にウチがこれ)

この、VBA(VB6)かPowerShell「しか」手段がない前提で行けば、
C#のソース読み込むとか多少歪んだ使い方だとしてもVBAよりPowerShellを使いたくなる時があるのは理解できるだろ?

もちろんVBAもバリバリ使ってるけどな

なんでどちらかだけしか使う価値がない!!!みたいな話になってんだろ
0865デフォルトの名無しさん
垢版 |
2018/07/26(木) 23:56:00.76ID:OM9s1u3H
>>862
逆の話でね、こっちはず―っとそういうことを言ってるの。
その度にPowerShellしか価値が無いと言われてるんだよ。
ず―っと適材適所と言ってる。
0866デフォルトの名無しさん
垢版 |
2018/07/27(金) 00:00:29.39ID:/pOg/k3/
>>865
VBAでスクレイピングだとか1ファイルで完結とか言っといて適材適所を主張してます!は頭おかしいんじゃねえの?
0867デフォルトの名無しさん
垢版 |
2018/07/27(金) 00:03:25.35ID:hpcoy/E6
>>861
全くその通りじゃね―んだよ。
VisualStudioが入って無い、もしくは入れられない環境ではC#は意味がねえ。
だから適材適所なんだよ。

大体、PowerShellがVBAに勝てるわけねえんだよ。
VBAが使われる環境ではVBA>>>PowerShellだし。
PowerEellが使われる環境ではPowerShell>>>VBAだろう。
噛み合わねえんだよ。
0868デフォルトの名無しさん
垢版 |
2018/07/27(金) 00:06:37.08ID:hpcoy/E6
>>866
1ファイルになるのはExcelの環境だからだろ。
そういう土俵(環境)なんだからVBAが有利なのは仕方無いだろ。
スクレイピングもExcelブックにデータを展開するのが前提だぞ。
そうじゃなかったらVBAでやるべきじゃない。
0869デフォルトの名無しさん
垢版 |
2018/07/27(金) 00:13:06.60ID:hpcoy/E6
汎用的な開発だったら何でVBAでやるんだよ。
そりゃアホだろ。

VBAの議論をするならExcelの環境が大前提なんだから他の言語はそれに合わせなければならない。
だから他言語は不利になるのあたり前の話。

こういう話は当然PowerShellにもあるわけで、だから適材適所なわけ。
0870デフォルトの名無しさん
垢版 |
2018/07/27(金) 01:27:22.29ID:/pOg/k3/
>>867
噛み合わないのはお前の理解力と日本語能力のせいでは??
正直なんでいきなり演説かましてんだこいつって感じだぞ
0871デフォルトの名無しさん
垢版 |
2018/07/27(金) 06:29:32.02ID:Z7cB5M3n
1ファイルになるのがメリットみたいな言い分が謎
逆にデメリットだろそれは
ファイル分けて管理したほうが開発しやすいだろ常識的に考えて
最終的に配布を1ファイルにしたいならJSみたいにバンドルすりゃいいだけだし
なんならワンライナーのオンラインインストーラーでもいい
0872デフォルトの名無しさん
垢版 |
2018/07/27(金) 06:40:59.87ID:uuBPM4V2
>>871
> ファイル分けて管理したほうが開発しやすいだろ常識的に考えて
それは開発側の都合でしかない
そんな事を意識しない利用者にとっては単一ファイルの方がいいのは当たり前
> なんならワンライナーのオンラインインストーラーでもいい
インストールとかバカすぎる w
0874デフォルトの名無しさん
垢版 |
2018/07/27(金) 07:22:54.24ID:Z7cB5M3n
>>872
脊髄反射でレスしないで読んでから返せない?

ユーザー都合で1ファイルがいいなら、1ファイルにバンドルすりゃいいだろ、って読めなかった?

インストールがダメってのも意味不明だな
ユーザー目線ならそれこそ何ファイルだろうがツールとして使えれば良いのだから、インストールスクリプトは有力な選択肢になる

1ファイルが良いってのもそもそもお前の思い込みでしかなくて、世の中には複数ファイルのツールのほうが遥かに多く、利用されてる
ユーザーは結果として簡単に使えればそんなことは気にしないんだよ
0875デフォルトの名無しさん
垢版 |
2018/07/27(金) 08:02:02.45ID:uuBPM4V2
>>874
VBAでバンドルとやらをどうやるつもりなのか書いてみ
> ユーザーは結果として簡単に使えれば
って豪語するんだから今のExcelファイル単体並に簡単に使えるんだよな w
0876デフォルトの名無しさん
垢版 |
2018/07/27(金) 08:14:39.55ID:hpcoy/E6
>>874
1ファイルにバンドル?
ExcelブックにPS1をバンドルしてどうするんだ?
個別に動かすの?
それじゃ1ファイルの意味ねーだろ。
第一、VBAは面倒とか言ってたのにそういう面倒なことするの?

Excelブックを渡した相手に余計な何かをインストールさせるのか。
VBAならそんなこと丸っきり必要ないのに。
インストールしなくても同じことが出来るならインストールしなきゃならんのはどう見てもデメリット。

世の中はExcelブックと他に何か別のファイルを持ち歩くのが遥かに多いとか、バカ過ぎるだろ。

ユーザーは簡単に使えれば中のコードがどうとか何の言語とかは優先度が低い。

Excelが前提のVBA批判をしてる自覚ある?
世の中には複数ファイルのツールってExcelの何?
なんか、ひとりよがりに感じるな。
0877デフォルトの名無しさん
垢版 |
2018/07/27(金) 08:58:29.44ID:5SOHwwXD
適材適所とか言っておいてこれだよ
どんな場所でもVBAが適材になると思ってるらしい
0879デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:06:33.39ID:9o30Opw+
日本語が通じないのが一番困るねぇ
なんでエクセルにpsをバンドルするって話にすり変わってんだよ
開発は複数のPs1でやって配布は1つのps1にバンドルしてやるって話だろが
0881デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:15:36.26ID:9o30Opw+
ファイル渡すだけ

インストールワンライナーをコピペしてシェル叩くだけ
あるいは1つのインストールスクリプトをダウンロードして実行するだけ

どっちも初回の手間は大して変わらんだろう

でも、エクセルファイル渡しは後々のバージョン管理で混乱するから、総合的に見てインストールのほうが楽だね
0882デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:18:56.01ID:9o30Opw+
エクセルは他のもの要らないんだー

見つからない参照


鉄板あるあるネタwww


psはライブラリなければセントラルリポジトリからとってくるだけなのでこんなアホな目に合わんで済む
0883デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:26:36.44ID:2qIHcbej
ライブラリなんて使うからそうなる
全部自分で1から書き上げるか、歴史ある秘伝の自作ソースをコピペすれば事足りる
工夫で乗り切れるのだ




らしいっすよ?
0884デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:44:53.66ID:hpcoy/E6
>>877
だから話の流れを読め。
Excel限定のVBAの話から始まっている。
どんな場所でもでは無い。
Excel限定だ。
元々の>>871が既にExcel限定を考慮せずにおかしなことになってる。

>>878
そうとも限らない場合もあるけど基本的にはその通り。
それに対してどんな場合でもVBAはダメっていう主張が有って、VBA側はそれに反論してる。
0885デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:47:15.71ID:hpcoy/E6
>>881
その手間が既に面倒くさいだろ。
しかもブック開いてるのに別スクリプトも動かすのか?

めんどうだわ。
0886デフォルトの名無しさん
垢版 |
2018/07/27(金) 12:51:06.22ID:hpcoy/E6
>>882
そもそも基本的にMicrosoft謹製以外は使用NGが普通だぞ。
ライブラリのコードを全て把握してるとか自社で作成したものなら別だが。
0887デフォルトの名無しさん
垢版 |
2018/07/27(金) 13:10:58.41ID:2qIHcbej
>>885
Excelにくっついてくるソルバーアドイン使うのでさえ
オプションクリックしてアドインクリックして有効なアドインクリックしてチェックボックスクリックして…
とかやるのよりよっぽど簡単
0889デフォルトの名無しさん
垢版 |
2018/07/27(金) 18:29:23.81ID:HpMLTKup
>>884
Excelありきの話ならVBAスレでバトルしてこい

ここはPowerShellスレでPowerShellはなんでもできるオールラウンダーだ
PSerは心が広いからExcelコントロールの話をするなということはない
だがExcelの話題で縛れというなら流石に付き合う理由はない

繰り返す
Excelありきの話ならVBAスレでやれ
0890デフォルトの名無しさん
垢版 |
2018/07/27(金) 18:34:48.47ID:hpcoy/E6
>>889
そうなんだよな。
本当は長居するつもりも無かったんだが
頓珍漢なレスが多くて反応して今に至ってる。
0891デフォルトの名無しさん
垢版 |
2018/07/27(金) 18:37:15.79ID:hpcoy/E6
元々VBAスレがPowerShell信者に荒らされてな。
そのままスレが最後までいって次が立つまでの間にこっちに書いたらこうなった。
0894デフォルトの名無しさん
垢版 |
2018/08/05(日) 15:25:02.08ID:iWriYPq8
C#は.NET無い環境だとブレークポイントで止めながらデバッグとか出来ないってことでいいのでしょうか?
0898デフォルトの名無しさん
垢版 |
2018/08/08(水) 06:10:45.62ID:9IQgpJP5
Add-TypeでC#をコンパイルしてアセンブリを吐き出すことってできない?
cscをつかうかCodeDOMをつかうっきゃないか
0902デフォルトの名無しさん
垢版 |
2018/08/12(日) 11:52:57.19ID:AqaK+sLZ
「Write-Host $Args[0]」とだけ書いたスクリプトを、コマンドプロンプトから
「powershell ./test.ps1 "(笑)"」
と呼び出すと「CommandNotFoundException」が発生します。

括弧が悪いようですが、やっぱり渡す前に「"`(笑`)"」みたいにバッククォートで括弧をエスケープするしかないんですかね?
実際は引数に何が来るかわからないので、できればPowerShell側でなんとかしたいんですが。
0906デフォルトの名無しさん
垢版 |
2018/08/15(水) 21:56:44.38ID:JQmIXjO5
>>905
店名は「笑」と書いてショウと読むのに対し,
「(笑)」は「(笑い)」の省略されたものなのでワラもしくはワライと読むはずなので,
その画像は不適切
0907905
垢版 |
2018/08/16(木) 23:27:16.70ID:3IMawj9A
>>906
いや、そもそもスレチなんでまともに相手しないであげて下さいw

ところでPowershellで何かわからないことあってググると
大体「http://mtgpowershell.blogspot.com/」のサイトがヒットすることが多いんだけど
このサイト運営してる人ってすごく頭がいいんだろうなあ
0910907
垢版 |
2018/08/17(金) 21:38:03.34ID:OW713aU2
>>909
俺が悪かったのでもうスレチにマジレスは勘弁して下さい。(^_^;)

>>908
Powershellの書籍まで出してる人のサイトか、すごいですね。
使えるTIPSあるかひと通り見てみますね。
0912デフォルトの名無しさん
垢版 |
2018/08/26(日) 22:38:58.94ID:BD3/9DfM
特化された言語と比べなければ十分シンプルかな
cat $1 | % { $a = -split $_; $a[3] + $a[2] }
変数への代入が少しやぼったく感じる
0913デフォルトの名無しさん
垢版 |
2018/08/27(月) 08:30:13.32ID:C7OBrvX6
ふむふむ、笑は「わら」って読まないのか…
1つ勉強になったわ
            笑笑店主
0914デフォルトの名無しさん
垢版 |
2018/09/05(水) 21:03:41.11ID:223DM7Lb
>>889
「PowerShellは何でもできる」は嘘。
お前は死んでいい。つーか死ね。
PoewerShellやっても背は伸びなかったし、彼女出来なかったし、宝くじにも当たらなかったわ!!!!

まぁそれは冗談として。
「何でも」ってのは流石に撤回しろよ。

あ、俺は >>884 ではない。
0916デフォルトの名無しさん
垢版 |
2018/09/05(水) 22:18:06.97ID:+hZ+CXx5
>>914
> PoewerShellやっても背は伸びなかったし、彼女出来なかったし、宝くじにも当たらなかったわ!!!!
それパチモンやん
0920デフォルトの名無しさん
垢版 |
2018/09/06(木) 06:56:43.48ID:OzF+wVKL
蜆ってしじみのことか
PowerShell…米国の製薬会社で開発された貝のサプリかな
0921デフォルトの名無しさん
垢版 |
2018/09/06(木) 21:28:59.42ID:tWUwV9UN
Powershellやりはじめたら台風被害にあったよ><

家の前の自転車が倒れただけだけど
0922デフォルトの名無しさん
垢版 |
2018/09/08(土) 14:31:58.13ID:oTozgSe4
PowerShell Core 6.x (以下 PS6) を導入した環境でスクリプトを実行する際、
実行環境を容易に 旧来の PowerShell 5 (以下 PS5)、PS6 とで
切り替える方法ってありますか?

モジュールの関係で PS5 でないと動作しないものもあるので、こっちのスクリプトは
PS5 で動かしたい、ほかは PS6 で、って感じで混在してます。

海外のスレッドでは、拡張子「.ps6」を独自に追加してそれで切り替えれば?みたいな
回答が出てましたけど、汎用性に欠けるのであんまりそういうことはしたくないんです。
Linux みたいに shebang 行で切り替えられれば一番なんですけど。

なにかアイディア無いですか?
0923デフォルトの名無しさん
垢版 |
2018/09/08(土) 14:40:20.95ID:MO8wxn5E
一行目読み取ってどっちを起動するか切り替える実行ファイルつくればいいやん
0924デフォルトの名無しさん
垢版 |
2018/09/08(土) 15:06:48.98ID:hiBN1no6
切り替えるってのがよく分からん
そもそもps1ファイル自体は実行しても何も起こらないんじゃなかったっけ
0925デフォルトの名無しさん
垢版 |
2018/09/08(土) 15:24:39.69ID:YwBJn4st
そりゃスクリプトはテキストファイルだから実行形式じゃないよ
画像ビューアにコマンドライン引数で画像パス渡せば画像が開くでしょ
スクリプトの実行はそれと同じことやってるの
なんでプログラム板でこんなこと説明しないといけないんだ
0926デフォルトの名無しさん
垢版 |
2018/09/08(土) 16:26:12.38ID:L0x65Qz7
いやだからさ
実行元がpwshとpowershellで明確に違うのに何を切り替えるのか分からんのよ
0927デフォルトの名無しさん
垢版 |
2018/09/08(土) 16:37:52.36ID:nMBTba9u
拡張子の関連付け問題の話?
バ―ジョンチェックとどちらで起動するかのリストを持ってる振り分けアプリ作って、.ps1への関連付けをそれにするとか。
0928デフォルトの名無しさん
垢版 |
2018/09/08(土) 16:47:51.96ID:oKnpK5oG
実行された環境がPS6だったら自身をPS5で実行して終了するスクリプトを
PS5で実行したいファイルの頭に書いておけばいいんじゃね
0929デフォルトの名無しさん
垢版 |
2018/09/08(土) 17:33:30.08ID:oTozgSe4
例えば、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 )

なんだけど、ほかにやりよう無いかね。
0931デフォルトの名無しさん
垢版 |
2018/09/08(土) 18:26:03.12ID:HSx0xrFN
そんだけならコンテキストメニューを拡張して
「PSV5で実行」を追加すれば良くね
0932デフォルトの名無しさん
垢版 |
2018/09/08(土) 19:09:29.22ID:nMBTba9u
右クリックなら選べるからコンテキストメニューをどうにかすべきだな。

ダブルクリックの話かと思ってた。
0934デフォルトの名無しさん
垢版 |
2018/09/08(土) 21:00:30.80ID:oTozgSe4
>>928
イメージとしてはこんな感じかな。たしかにうまくいきそう。
ありがとう、明日試してみる。
-----------
<# ps1 の関連付けが powershell.exe の状態 (デフォルト) で、pwsh.exe で実行させたいものの場合 #>
# 実行環境が ver 5 以下の場合
if ($PSVersionTable.PSVersion.Major -le 5) {
pwsh.exe $MyInvocation.MyCommand.Path
exit
}
# 以下、ver 6 以上で実行させたい内容
0935デフォルトの名無しさん
垢版 |
2018/09/08(土) 21:11:46.23ID:oTozgSe4
>>931 >>932
もちろんそれでも十分可能なんだけど、以下の理由でできればカスタマイズは避けたいんです。スクリプト内だけで完結させたい。

・マシンがたくさん、OS も複数種類、ユーザプロファイルもたくさんあるので、標準構成からあまりいじりたくない
・お客さんに納品する可能性も考慮
0937デフォルトの名無しさん
垢版 |
2018/09/09(日) 12:54:55.70ID:PZb39582
運用マニュアルなしで議論してもしょうがないでしょ
このスクリプトはver5環境で実行してくださいと一言書いとけば済む話
0938デフォルトの名無しさん
垢版 |
2018/09/09(日) 13:48:43.10ID:b90Mhdwq
そういう能書きが書いてあっても何のこっちゃ分からんという人に配布しなきゃいけない場合もあるからなぁ
お客さんに運用対応を要求するのも大変なことだし
0939デフォルトの名無しさん
垢版 |
2018/09/09(日) 14:14:36.64ID:R8hBsgvF
>>937はこの手の仕事したことないんだろ
マニュアル書いても
「ver5環境ってなんだ?」
とか、そもそも説明なんて読んでなくて
「うまく動かないので至急なんとかしてください」
って言われるだけのこと
0940デフォルトの名無しさん
垢版 |
2018/09/09(日) 14:39:06.98ID:DLS5Iddq
これで十分
#Requires -Version 5
if ($PSVersionTable.PSEdition -eq 'Core') {
throw 'Powershell Coreでは動作しません。'
}
0943デフォルトの名無しさん
垢版 |
2018/09/09(日) 15:19:04.80ID:DLS5Iddq
「対応するなら○○万円(鬱陶しい顧客リスク分を上乗せして)頂戴します。」
断るならブラック顧客だから切るべし。
断れないならブラック企業だから転職。
0944デフォルトの名無しさん
垢版 |
2018/09/09(日) 15:28:45.97ID:D8J39mU4
>>943
突っぱねるだけじゃなく、妥協点を見出す、Fail safe, Fool proof ってのも重要なことだよ。
まあ個人のポリシーだから好きにすればいいけど。
0946デフォルトの名無しさん
垢版 |
2018/09/09(日) 15:47:36.82ID:jqHbfRUC
マニュアル書くにしたって、「エラーメッセージが出ます」と一言で説明するだけじゃ不十分
「『ver5環境では動作しません』というメッセージが表示されます。この場合...」と一字一句再現してやらないとわけわからなくなる人が山のようにいるのでね
ウィンドウの背景色やフレームの色まで画像付きで説明されてないと理解できない人もいるし
舐めてると死ぬぞ
0947デフォルトの名無しさん
垢版 |
2018/09/09(日) 20:12:23.17ID:0ym3cmgA
会計ソフトを出したら、それを買った客が、簿記・会計処理のことを聞いてくるw
女が電話に出ると、何時間でも粘るw

そういう客もいる
0949デフォルトの名無しさん
垢版 |
2018/09/09(日) 20:59:40.12ID://bKOaXP
>>947
全然関係ないけど昔生理用品メーカーに納入した機器の入れ替えに行った時に聞いた話だと、お客さんからの問い合わせ(多分クレーム)で長い時は3時間とかかかるって言ってた
0950934
垢版 |
2018/09/10(月) 17:56:21.73ID:0jDkILQ9
結局こんなふうにしたよ
https://pastebin.com/9RWLpSC7

>>928
ありがとうごさいました!
ほかの皆さんもありがとうございました!
0957デフォルトの名無しさん
垢版 |
2018/09/14(金) 14:27:05.47ID:60Mnn9Dg
>>956
自分の場合だけど、Windows の EC2 インスタンスと連携するプログラムを Lambda 上で
作る案件がちょくちょくあって、これまでは Windows 上は PowerShell、Lambda のほうは
P{ython で作ることが多かった。
だけど自分のスキルのせいもあって、PowerShell と Python のコーディングを同時並行で進めると
色々と混乱することが少なくなかったのね。

# 両方 Python で作れば、と思うかもしれんけど、運用の手間を考えると、
# 追加でインストールするものはなるべく少なくしたい

それが、Lambda で PowerShell Core が使えるなら PowerShell で統一できるので、
個人的にすごく捗るな、と。
0958デフォルトの名無しさん
垢版 |
2018/09/16(日) 13:14:02.90ID:16Y59QgZ
class構文じゃなくて本物の型を定義したい場合にはAdd-Typeしかないのかな
GUI作るときにPSObjectがうまくデータバインドできなくて困った
0960デフォルトの名無しさん
垢版 |
2018/09/28(金) 13:35:11.01ID:oUAtTcYe
Macだからかもしれない
Macでの実行環境は最適化する余地が大きく残ってたとかがあり得る
Windowsでどうかは比較してみないとなんとも
0961デフォルトの名無しさん
垢版 |
2018/09/28(金) 15:32:47.04ID:ExWLpVS+
psわざわざ入れるって無理だな
有り物使うだけだからOSアプデで付くのを待つしかない
0962デフォルトの名無しさん
垢版 |
2018/10/05(金) 17:32:43.04ID:LWyIHUF+
PowershellはOSによってプリインストールバージョン違うの地味に面倒だな
MS Updateで5.0までは強制的にアップデートしてくれないかな
客先のサーバでSQLモジュールも入って無くてInstall-moduleも入って無くてスクリプト使えなくて困ったわ
0966デフォルトの名無しさん
垢版 |
2018/10/06(土) 14:33:29.33ID:gea8Zy97
テクニックって程のものって何かある?
使える使えないの差ぐらいじゃないの
0967デフォルトの名無しさん
垢版 |
2018/10/06(土) 16:17:11.73ID:J00E9zwo
再来年1月にはPowershell2.0プリインストール環境が終了するから2.0に合わせた書き方頑張る気力がイマイチ
Windows7とか2008R2は早く死んでくれないかな
0970デフォルトの名無しさん
垢版 |
2018/10/06(土) 23:10:20.08ID:tgEP6apu
>>967
SP1入れずに使ってる環境なんてほぼ無いだろ?なら4.0覚えときゃOK

個人的にはzipクラスがある4.5が望ましい
0973デフォルトの名無しさん
垢版 |
2018/10/07(日) 00:51:14.63ID:KvcjzmFM
3.0以降じゃないとPsCustomObject使えないとか、コマンドレット充実してなくてNETライブラリ使う羽目になって、もうこれC#で書いたほうが良くね?になるあたりかね
0974デフォルトの名無しさん
垢版 |
2018/10/07(日) 02:34:13.34ID:MeohIHbL
coreに移行して大分経ってからGet-ScheduledTaskとかのWindows専用っぽいコマンドレット無くなってるのに気付いた
まあこれはあんまり使わんしpowershell.exeで実行すりゃいいか
0975デフォルトの名無しさん
垢版 |
2018/10/07(日) 06:17:50.14ID:mFTX0OZ0
where-objectでフィルタをかける時、複数条件が必要な場合は
パイプでつなぐしかないですかね?andとかあればいいんですけど
where-object 条件1 | where-object 条件2
0977デフォルトの名無しさん
垢版 |
2018/10/07(日) 10:50:24.18ID:VwaVbKnV
>>975
サンプルだと
? {$arg -eq "test" -or $arg2 -eq "test"}
みたいな感じ
-使う演算子が繋がって違和感あるかもしれんけど
0980デフォルトの名無しさん
垢版 |
2018/10/08(月) 20:48:01.10ID:7Fv0bXJp
パワーシェル内でパワーシェルを呼び出す時、どのパワーシェルの処理が成功してるか失敗してるかわかるようにログ出すのはどうすればいいんでしょうか?
0982デフォルトの名無しさん
垢版 |
2018/10/08(月) 22:04:42.09ID:7Fv0bXJp
ごめん。全然わからん・・・
0984デフォルトの名無しさん
垢版 |
2018/10/08(月) 22:19:23.32ID:7Fv0bXJp
バッチファイルみたいにリダイレクトではログ渡せないのかな?
2>1
みたいなかんじで?
0985デフォルトの名無しさん
垢版 |
2018/10/08(月) 23:19:17.74ID:nFrei6GD
$?で前回のコマンドの実行結果
$lastexitcodeにexitコマンドで返された値が入る(呼び出したスクリプトはexitに戻り値を付けて終了させないとダメ)

$?だとスクリプト内の最後のコマンドの結果が帰るからスクリプトの作りによっては失敗の判定は出来ないのはバッチとかと一緒
0986デフォルトの名無しさん
垢版 |
2018/10/08(月) 23:24:06.69ID:7Fv0bXJp
なるほど
呼び出すスクリプト内にエラーコードで正常か異常か$?で判定させてそれをifかなんかで分岐させてエラーコードを呼び出し元のスクリプトの$lastexitcodeをehcoする感じですかね?
0988デフォルトの名無しさん
垢版 |
2018/10/08(月) 23:41:24.75ID:GVMVzq1c
>>980
成否判定ならこれでよくね

hoge.ps1

$hoge = $true
if($hoge){exit 1}
exit 0
-------------

$ps = Start-Process hoge.ps1 -Wait -PassThru
switch($ps.ExitCode) {
0 {
"失敗"
}
1 {
"成功"
}
}
0990デフォルトの名無しさん
垢版 |
2018/10/08(月) 23:45:52.94ID:7Fv0bXJp
これを呼び出すスクリプト全部に書くってこと?
呼び出し元と先が複数あって、先を全部修正するのが大変なので出来れば元だけで完結させたい
が、無理そうなのでこれを全てに書いていく?
0992デフォルトの名無しさん
垢版 |
2018/10/09(火) 00:01:31.08ID:G4IJkzod
>>990
exitで成否を戻した方がしっかり判定できる
呼び出したスクリプトで何が発生したら失敗とするかをしっかり判定しないの?
結果コードでの判定とか曖昧すぎてトラブルの元と思う
0993デフォルトの名無しさん
垢版 |
2018/10/09(火) 00:57:32.40ID:VXCTyrZC
>>984
実際にやりたいことがわからないけどエラーメッセージをリダイレクトするだけなら同じようにできるよ
powershell ./hoge.ps1 2>>log.txt
0995デフォルトの名無しさん
垢版 |
2018/10/09(火) 05:18:39.42ID:06HomXwK
>>979
-inならいけるけど、まあ違うんだろうな
dir | where { $_.name -in "a1.txt","a2.txt","b1.txt" }
$list = @( "a1.txt","a2.txt","b1.txt" )
dir | where { $_.name -in $list }
0996デフォルトの名無しさん
垢版 |
2018/10/09(火) 08:24:03.86ID:2kAOJdzZ
>>979
適当こいただけじゃないのかな
PSのカンマ演算子は配列を作り、配列の要素が複数なら内容問わず真になる
そもそもカンマでの結合はORなのかANDなのか意図が曖昧
仕様としても微妙だしバッドプラクティスに思える
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 682日 15時間 1分 1秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況