【最強CUI】PowerShell -Part 1
>>332 いや一応目的は達成してたので保留にしてただけで
パイプの使い方を知ったら解決したってだけです
ちなみに今日もハマってしまったことがあるんですけど
foreachがforeach-objectのエイリアスだと思ってたら別物で
foreach-objectはbreakが使えなかった
334 :
デフォルトの名無しさん:2014/11/10(月) 18:28:50.51 ID:y2XAPBpw
foreachの件は、以前から、ちがうよ〜って
結構いわれてますね。
高嶋の演技いいね
336 :
デフォルトの名無しさん:2014/11/11(火) 04:02:01.76 ID:g7KV1ReX
>>331-334 パイプで受け取ったオブジェクトを表すには、
'$_'という自動変数を使う
Get-Variable で自動変数の一覧を表示できる
ls -Directory | ForEach-Object {$_.Name}
powershell2.0でモードレスダイアログ作ってるんですが
表示したばかりの状態でESCでキャンセル動作、
Enterでデフォルトボタン押下動作にするにはどうしたらいいんでしょうか
MSとかのサンプルにはそういうのが見つかりませんでした
VBとかだとこんなの当たり前だったのに情報源が乏しくて厳しいです
338 :
326:2014/11/12(水) 08:49:13.77 ID:sOXRgmSx
>>326 を見て
.NETのFormクラスのプロパティ
AcceptButton → Enter
CancelButton → Esc
このFormクラスの一番下の方に、C#,C++,VBのサンプルがある
このコマンドで、System.Windows.Forms.dll
がロードされているか確認して
[System.AppDomain]::CurrentDomain.GetAssemblies() |
Where-Object {$_ -match "form"} | ft -Wrap
文字列が長いので、ft -Wrapで折り返して、表示する
Format-Table (ft),ft -Autosize
Format-List (fl)など色々ある
もし、ロードされていないのなら、このコマンドでロードして
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
>>338 できました!
ありがとうございました
しかしこれって適当な.NET系言語と並行で覚えた方がよさそうですね…
VB.netがあるじゃない
まさかあの噂でしか聞いたことがないVB6のことか〜
341 :
デフォルトの名無しさん:2014/12/04(木) 08:25:18.27 ID:ce/wf1ga
xcopyは古そうなので、robocopyを使おうと思ったが、
Win8で、robocopyで、フォルダを丸ごと再帰的に、
すべての更新されたファイルと、
新しく作られたファイルのみをコピーしたい
(ショートカットはコピーしない)
robocopyのオプションが複雑すぎて、わからないw
どう書けばよい?
>>341 ここはPowerShellのスレなんで他で聞いてね
>>341 日本語で書いてあるから読めば分かる。
読んで分からなければ動かせば分かる。
/MIR オプション無けりゃ失敗しても被害は少ないw
.\のようなUnixの変な流儀まで真似しなくていいのにと思う
バッチファイルの方が気楽だなあ俺は
346 :
デフォルトの名無しさん:2014/12/06(土) 09:30:22.09 ID:1UBNwgr7
>>346 .\ と言えばカレントディレクトリに決まってるだろ
.\つける方が合理的だと思うけど
UNIXのCronも通常、環境変数はリセットされるからね
バッチファイルと違ってセキュリティ的にクリティカルな場所での運用も期待されてるってことなんだよね。
単にカレントディレクトリをパスに加えるかって話だな
補完はできるからあまり苦にならんと思うよ
バッチと違って・・・とか見当違いのこと言い出すアホはもっと勉強しろ
バッチのほうが慣れてるからバッチのほうがいいと言い出すのは当然のこと
353 :
デフォルトの名無しさん:2014/12/07(日) 17:17:24.28 ID:fifuCS4i
>>342 パワーシェルでもコマンドプロンプト使えるんですが
単純なディレクトリサイズ計算したら、ディスク上のサイズと違うんですが
クラスタサイズ?で自前で計算しないといけませんか?
簡単な方法があるんでしょうか?
よくわかりました。ありがとう。
358 :
53:2015/02/17(火) 11:03:57.23 ID:Q2g81oZ1
Python は Ruby より遅いと言う話が出たので試してみました。
環境はWindows 8.1 32ビットなので他言語より5%ほど有利
1秒あたり
カウント数
230794 i+=1 Time.now.sec
223535 inc(i) 〃
なるほど Python の today().second より速い結果が出ました。
そしてすぐ書けた。
でも、CPU時間を使った方はだいぶ遅い。
どうも安定しないし逆転したりするからミスがあるかも。
ラスト 前回
686031 710067 i+=1 Process.times.utime.to_i
635549 644149 inc(i) 〃
359 :
デフォルトの名無しさん:2015/02/20(金) 03:39:11.31 ID:Gmp7b6pB
なんでも出来そうだけど
例えばWebスクレイピングみたいなのやろうとすると
向いてないのでやる気にブレーキが掛かるんだよな
wshの方が楽だし
気づけば何ヶ月もいじっていないw
しかしせめてバッチファイルスレよりは活発にしたい
凝ったことするんだとするとよっぽど慣れてるんでもない限り
VSとかで普通にC#でコード書いたほうがつぶしが聞く感はある。
そうやって作ったexeなりdllなりをpowershell側から上手に使うとかならまだわかるけど。
凝ったことするツールではないと思うが、
頑張ればたいていの処理ができるってところがEmbedded系では重宝したりする。
最近のWindowsなら標準搭載ってのがまず強みだね
レジストリアクセスも楽だし便利
C#で良いじゃん
権限ないとスクリプト実行すら出来ないとか不便すぎる
364 :
デフォルトの名無しさん:2015/03/02(月) 23:27:58.04 ID:stOy1nsj
>>363 おまえはUNIXの世界を知らないのか?
ん?
PowerShell使えるUNIXがあるってこと?
C#はmonoとか使えばいいけど
一応、そういう世界にいるんでね。 君より情報持ってるよ
やったーかっこいい
UNIXは知らんけど
UWSCから PowerShell のスクリプトを実行できたりするんで
「なんだ権限いじる必要ないじゃん」って書き込みを見たことはある。
権限とスクリプト実行許可を混同しているな
確かに混同してしまったが
>>363 が権限と言ってるから
371 :
デフォルトの名無しさん:2015/03/04(水) 11:01:15.21 ID:9w9ZimTQ
レジストリいじるのにC#つかっても、どうせ権限必要だよね。
>>363 一概にスクリプト実行ができないわけじゃない。
ちなみに、C#つかえるなら、コマンドレット作成が容易にできるので
コマンドレット化すれば、実行ポリシーがRestrictedでも実行できたり
する。そういうつくり。
開発環境や外部ツールが使用可能な環境ならシステムデフォルトしか使えない環境より自由がきくわけで
そういうところはC#でもなんでも好きにやればいい
自由にできる環境だけがすべてじゃないからね
373 :
デフォルトの名無しさん:2015/03/05(木) 01:50:54.56 ID:5Zc9dVue
組織変更に伴い、ファイルサーバとADの置換を行いたいとおもいます。
NTFSのアクセス権をSIDで検索してSIDできれば権限を置換したいのですが可能でしょうか?置換する元データはExcelで旧SIDと新SIDと権限を用意して、上から検索してEOFまで実行していきたいです。
マルチってぜんぜん違う板だからいいと思うよ
書き込みないからっていらいらしない
>>376 板が違うほうが悪質ともいえる
普段からそうやって回答者の迷惑を考えずマルチで質問してる人間しかそういうことは言わないが
問題ないと思うならお前が回答してやればいい
知恵袋と2ch.netとのマルチでも質問関連のことをググった時にすぐ出てくるし嫌われる
なぜ嫌われるかわからないならググってください
それでもマルチしたいなら誰も見てないscでやってください
マルチがなぜ嫌われるのか理解できない奴はアスペか自閉症でしょ。
単発質問していくつか回答もらったときに結果を報告しない奴も、マルチとほぼ同罪。
嫌われる理由がわからない奴は、
知らないところで他人から陰口叩きまくられて蛇蝎のように嫌われていると覚悟したほうがいい。
> Google 日本語入力 インジケータ ウィンドウ
なんじゃこりゃーー
381 :
デフォルトの名無しさん:2015/03/11(水) 16:46:59.87 ID:6tE0XEqn
印字 啓太
宇 引導
Google Japanese input indicator window