前スレ
PowerShell -Part 3
https://mevius.5ch.net/test/read.cgi/tech/1539074808/
次スレは>>980が立ててね!!
PowerShell -Part 4
■ このスレッドは過去ログ倉庫に格納されています
2020/01/01(水) 16:08:31.66ID:4oQ1Kxot
536デフォルトの名無しさん
2020/09/01(火) 23:15:52.09ID:cXm81OcM >>524
(続き)
たとえ本物でも、ベンダーに悪意がないことをどうやって確認するのか
まして国が株価操縦してるモラル破壊な社会、大企業だからって信用できない
そこで
A.保護ユーザー(管理者)
B.実行ユーザー(標準)
こう分け、Bでベンダーソフトを実行すれば、Aの機密情報を読めない
と思いきや、アプデ時に昇格ボタンを押してしまうと、なんでも読める権限で実行される
ボタンをユーザーが押そうがバッチで押そうが同じ
全くセキュリティになってない
ならば、あえてBを管理者にし、B自身のコンテキストでアプデさせる
Aのフォルダから「Administrators」を外しておけば、
インストール権限がありながら、Aの機密情報を読めない、はず
(この時、所有権や偽装でUACが反応しない状態なら、
その特権からも「Administrators」を外し、かわりにAを設定しておく)
(続き)
たとえ本物でも、ベンダーに悪意がないことをどうやって確認するのか
まして国が株価操縦してるモラル破壊な社会、大企業だからって信用できない
そこで
A.保護ユーザー(管理者)
B.実行ユーザー(標準)
こう分け、Bでベンダーソフトを実行すれば、Aの機密情報を読めない
と思いきや、アプデ時に昇格ボタンを押してしまうと、なんでも読める権限で実行される
ボタンをユーザーが押そうがバッチで押そうが同じ
全くセキュリティになってない
ならば、あえてBを管理者にし、B自身のコンテキストでアプデさせる
Aのフォルダから「Administrators」を外しておけば、
インストール権限がありながら、Aの機密情報を読めない、はず
(この時、所有権や偽装でUACが反応しない状態なら、
その特権からも「Administrators」を外し、かわりにAを設定しておく)
537デフォルトの名無しさん
2020/09/01(火) 23:16:32.08ID:cXm81OcM >>524
くしくも偶然一部を書いてたが
http://mevius.5ch.net/test/read.cgi/tech/1451927425/876-877
さらに言うと、複数の権限があり、ケルベロスによってサーバー機能による高速取込までユーザーコンテキストを通したシステム
ユーザー問合せに即時対応するため、操作ログも一元管理される
操作ログは全ユーザーに追加権限だけがあり、閲覧はシステム権限が必要
アクセス権はテーブル自身にあり、どのようなルートからも突破不可能
行政手続に係る深いプライバシーを大量に扱うので、情報漏洩が命取りになる企業
しかし、そういう別件逮捕のようなことを、「人格攻撃」と言う
別件が議論に関係してはならない
それにプライバシー侵害は「誹謗中傷」の要件の一つ
@嘘(無根拠な憶測)、Aプライバシーの侵害、B人格攻撃、「誹謗中傷」の3要件を全部兼ね備えるというw
で、お前は何をしたのか
こっちは人格攻撃気質じゃないので、当然興味ないが
くしくも偶然一部を書いてたが
http://mevius.5ch.net/test/read.cgi/tech/1451927425/876-877
さらに言うと、複数の権限があり、ケルベロスによってサーバー機能による高速取込までユーザーコンテキストを通したシステム
ユーザー問合せに即時対応するため、操作ログも一元管理される
操作ログは全ユーザーに追加権限だけがあり、閲覧はシステム権限が必要
アクセス権はテーブル自身にあり、どのようなルートからも突破不可能
行政手続に係る深いプライバシーを大量に扱うので、情報漏洩が命取りになる企業
しかし、そういう別件逮捕のようなことを、「人格攻撃」と言う
別件が議論に関係してはならない
それにプライバシー侵害は「誹謗中傷」の要件の一つ
@嘘(無根拠な憶測)、Aプライバシーの侵害、B人格攻撃、「誹謗中傷」の3要件を全部兼ね備えるというw
で、お前は何をしたのか
こっちは人格攻撃気質じゃないので、当然興味ないが
538デフォルトの名無しさん
2020/09/01(火) 23:29:07.92ID:XzhpNrm1539デフォルトの名無しさん
2020/09/04(金) 06:56:56.59ID:BT/SeEq8 客先も何も自社もポリシー変更できないからバッチは実行できないわ
簡単なファイル操作とかも.batでやることになってる
Powershellに移行できない
簡単なファイル操作とかも.batでやることになってる
Powershellに移行できない
540デフォルトの名無しさん
2020/09/04(金) 08:30:44.47ID:PFscGLUJ ps1をポリシー付きで呼び出す1行バッチを書けばいいんじゃない?
冗長だけどbatをメンテするのに比べたらずっといいと思う
冗長だけどbatをメンテするのに比べたらずっといいと思う
541デフォルトの名無しさん
2020/09/04(金) 09:00:17.63ID:nHf7diD2 CurrentUserすら許さずbatはOKって
客先はともかく自社でそれは謎
客先はともかく自社でそれは謎
542デフォルトの名無しさん
2020/09/04(金) 10:38:48.17ID:HOWqt3vZ543デフォルトの名無しさん
2020/09/04(金) 10:55:49.00ID:9bn0no2k Powershellってマイクロソフト提供のスクリプトですら証明書の期限切れがあるからちょっと不安になる
544デフォルトの名無しさん
2020/09/04(金) 11:00:10.92ID:Z5LzkW/+ >>543
無期限の証明書作れる方がヤバいでしょ
無期限の証明書作れる方がヤバいでしょ
545デフォルトの名無しさん
2020/09/04(金) 17:55:32.72ID:pFNwt9H1 まぁそれはそうなんだけど10年後にいきなり動かなくなると軽くパニックになるのは容易に想像できる
って言うか何件か証明書切れを経験すると不安になるのも理解できる
って言うか何件か証明書切れを経験すると不安になるのも理解できる
546デフォルトの名無しさん
2020/09/04(金) 21:29:53.57ID:GUj1t4WA MSの怖いところはいつサポートを切られても文句が言えないんだよな
よくそんなもん使うよ
よくそんなもん使うよ
547デフォルトの名無しさん
2020/09/04(金) 22:08:14.36ID:r9WlhdFA vbsなんてもうサポートされてないけどドメインのログオンスクリプトでいまだに大活躍ですよ
548デフォルトの名無しさん
2020/09/04(金) 22:37:22.42ID:2uatcP4v >>546
いつ切られるかなんて話ならApple製品の方が問答無用
いつ切られるかなんて話ならApple製品の方が問答無用
549デフォルトの名無しさん
2020/09/04(金) 22:48:13.98ID:HXgxD56a MSほど後方互換性に配慮する企業はない
550デフォルトの名無しさん
2020/09/04(金) 22:50:13.00ID:yQcUkcYq >>546
Googleって知ってる?
Googleって知ってる?
551デフォルトの名無しさん
2020/09/04(金) 23:13:47.33ID:pFNwt9H1 サポートガーとか言い出したらすべてのソフトメーカーも同じだしMSはサポート期間を明示してる分マシな方
552デフォルトの名無しさん
2020/09/05(土) 00:41:16.91ID:/H4NwAXT オープンソースじゃないから的なやつでしょどうせ
553デフォルトの名無しさん
2020/09/05(土) 01:11:02.97ID:F930ZZ+s しかもMSは予告したサポート期間切れたようなのでも
なんだかんだズルズルと最低限のサポートはしよるしな
なんだかんだズルズルと最低限のサポートはしよるしな
554デフォルトの名無しさん
2020/09/05(土) 09:05:47.68ID:Z+0szYX9 オープンソースでも、誰もメンテしなくなったらサポート切れたと同じになるけどな
555デフォルトの名無しさん
2020/09/05(土) 09:29:26.09ID:5bXKo+C7 >>549
Win10 で未だに VB6 が公式にサポートされているのは驚異的だわな
Win10 で未だに VB6 が公式にサポートされているのは驚異的だわな
556デフォルトの名無しさん
2020/09/05(土) 14:23:09.94ID:NgOfEUV/ VB6のサポートって切れたんではないの?
でも実際にWin10でもそれなりに動くってことは
相当配慮してるんだろうね
でも実際にWin10でもそれなりに動くってことは
相当配慮してるんだろうね
557デフォルトの名無しさん
2020/09/05(土) 14:38:02.26ID:poolRPMo >>556
> VB6のサポートって切れたんではないの?
IDEの話と混同してないか?
Microsoft は、Windows Vista、Windows Server 2008 (R2 を含む)、Windows 7、Windows Server 2012、Windows Server 2012 R2、Windows Server 2016、Windows 8.x、および Windows 10 上で実行される既存の Visual Basic 6.0 アプリケーションをサポートすることにコミットしています。
https://docs.microsoft.com/ja-jp/lifecycle/faq/developer-tools#what-lifecycle-policy-does-visual-basic-60-follow
> VB6のサポートって切れたんではないの?
IDEの話と混同してないか?
Microsoft は、Windows Vista、Windows Server 2008 (R2 を含む)、Windows 7、Windows Server 2012、Windows Server 2012 R2、Windows Server 2016、Windows 8.x、および Windows 10 上で実行される既存の Visual Basic 6.0 アプリケーションをサポートすることにコミットしています。
https://docs.microsoft.com/ja-jp/lifecycle/faq/developer-tools#what-lifecycle-policy-does-visual-basic-60-follow
558デフォルトの名無しさん
2020/09/05(土) 14:41:51.18ID:5bXKo+C7559556
2020/09/06(日) 12:44:28.70ID:K+uwWPzG560デフォルトの名無しさん
2020/09/06(日) 21:35:48.31ID:zycnfOVF PowerShell Core6.xはサポート終了したけどね
https://docs.microsoft.com/ja-jp/powershell/scripting/powershell-support-lifecycle#powershell-releases-end-of-life
https://docs.microsoft.com/ja-jp/powershell/scripting/powershell-support-lifecycle#powershell-releases-end-of-life
561デフォルトの名無しさん
2020/09/07(月) 10:29:11.62ID:LrNxLO4b 教えてください!
数学関数よく使うので、[math]打たなくていい方法ありませんか?
pythonだと
from hoge import *みたいなやつです。
usingの使い方はよく分かりませんでした…
数学関数よく使うので、[math]打たなくていい方法ありませんか?
pythonだと
from hoge import *みたいなやつです。
usingの使い方はよく分かりませんでした…
562デフォルトの名無しさん
2020/09/08(火) 13:39:15.42ID:Czt9vV5Q RubyってNGした方がいいの?
563デフォルトの名無しさん
2020/09/08(火) 14:06:08.38ID:4U/U3HlV うん
564デフォルトの名無しさん
2020/09/08(火) 21:32:03.60ID:gglleEZ2565デフォルトの名無しさん
2020/09/09(水) 14:10:00.30ID:dcbbv6DU >>564
ありがとうございます!
ありがとうございます!
566デフォルトの名無しさん
2020/09/09(水) 17:56:46.99ID:COY4N7BF >$m = [System.Math];
これって$mに何を代入してることになるの?
これって$mに何を代入してることになるの?
567デフォルトの名無しさん
2020/09/09(水) 21:07:17.97ID:Mz5kQg8j System.Mathを表すTypeクラスのインスタンス
C#のtypeof(System.Math)に相当する
C#のtypeof(System.Math)に相当する
568デフォルトの名無しさん
2020/09/09(水) 23:13:42.66ID:COY4N7BF569デフォルトの名無しさん
2020/09/10(木) 18:44:59.29ID:tjN1C/3z Typeクラスのインスタンスが特定のクラスとして振る舞うのか。
オブジェクト志向のメタ構造というか自己言及的というか、
頭の悪い俺はクラクラしてくる。
オブジェクト志向のメタ構造というか自己言及的というか、
頭の悪い俺はクラクラしてくる。
570デフォルトの名無しさん
2020/09/10(木) 21:10:45.59ID:Cm2gzsSs "".GetType()::IsNullOrEmpty("foo") なんてものもちゃんと動く
わざわざこんな書き方するメリットは知らん
わざわざこんな書き方するメリットは知らん
571デフォルトの名無しさん
2020/09/11(金) 22:50:14.76ID:7Cy3Hp6X Type型クラスがクラスとして振る舞うんじゃない
静的メンバ演算子(::)がRuntimeType型の値と文字列値を取って、静的メンバを返す
だから
$parent = [System.Math];
$child = "E";
$parent::$child;
はちゃんと評価される
静的メンバ演算子(::)がRuntimeType型の値と文字列値を取って、静的メンバを返す
だから
$parent = [System.Math];
$child = "E";
$parent::$child;
はちゃんと評価される
572デフォルトの名無しさん
2020/09/13(日) 12:34:16.51ID:pT8kzvft whileの条件式がうまく動かないので教えてください。
Test-NetConnectionでサーバのポートが開いているかチェックして
開いていなかったら、開くまで待つ処理をしたいのですが、
なぜかWhileループに入ってくれません。
条件を$result -ne "True"にすればうまく動くのですが、なぜFalseの条件だと動かないのでしょうか
あとTest-NetConnectionでポート開いていないときにWARNINGメッセージが表示されるのですが
これって表示抑止できませんか?
コード
$ProgressPreference="SilentlyContinue"
$ErrorActionPreference = "silentlycontinue"
$server = "127.0.0.1"
$result = Test-NetConnection $server -port 22 -InformationLevel Quiet
while ($result -eq "False") {
Write-Output "OFF"
$result = Test-NetConnection $server -port 22 -InformationLevel Quiet
}
write-host "kaishi"
Test-NetConnectionでサーバのポートが開いているかチェックして
開いていなかったら、開くまで待つ処理をしたいのですが、
なぜかWhileループに入ってくれません。
条件を$result -ne "True"にすればうまく動くのですが、なぜFalseの条件だと動かないのでしょうか
あとTest-NetConnectionでポート開いていないときにWARNINGメッセージが表示されるのですが
これって表示抑止できませんか?
コード
$ProgressPreference="SilentlyContinue"
$ErrorActionPreference = "silentlycontinue"
$server = "127.0.0.1"
$result = Test-NetConnection $server -port 22 -InformationLevel Quiet
while ($result -eq "False") {
Write-Output "OFF"
$result = Test-NetConnection $server -port 22 -InformationLevel Quiet
}
write-host "kaishi"
573デフォルトの名無しさん
2020/09/13(日) 12:53:42.29ID:NB1HNIe8 Booleanと文字列を比較してるからかなぁ
while ($result -eq $false) {
にするとか
while ($result.ToString() -eq "False") {
にするとか
while ($result -eq $false) {
にするとか
while ($result.ToString() -eq "False") {
にするとか
574デフォルトの名無しさん
2020/09/13(日) 12:59:04.71ID:gjBM/R2S >>572
$result -eq $false
$result -eq $false
575デフォルトの名無しさん
2020/09/13(日) 13:03:07.97ID:pT8kzvft while ($result -eq $false) {
でうまく動きましたー!ありがとうございました
trueは文字列比較で動くのにfalseはダメなのは不思議です。
でうまく動きましたー!ありがとうございました
trueは文字列比較で動くのにfalseはダメなのは不思議です。
576デフォルトの名無しさん
2020/09/13(日) 13:10:32.29ID:NB1HNIe8 trueの場合には-neにしてたから、動いてる様に見えただけなんじゃね?
577デフォルトの名無しさん
2020/09/13(日) 16:28:25.02ID:Bx4nil+B while (!$result)でよくね
578デフォルトの名無しさん
2020/09/13(日) 18:29:23.50ID:NpK7vu/k 当世風だなw
579デフォルトの名無しさん
2020/09/13(日) 22:52:54.65ID:XEIeaeUL /1GBとかやると容量計算が捗るのを今日知った
580デフォルトの名無しさん
2020/09/13(日) 23:32:26.16ID:NpK7vu/k581デフォルトの名無しさん
2020/09/14(月) 08:38:10.64ID:Cd/NVq2C get-childitem C:\Windows | select fullname,@{N="length";E={$_.length/1KB}}
583デフォルトの名無しさん
2020/09/14(月) 21:11:25.52ID:zNRePcSL ドキュメントにも載ってる公式機能よ
https://docs.microsoft.com/ja-jp/previous-versions/dd315291(v=technet.10)#-property-object
https://docs.microsoft.com/ja-jp/previous-versions/dd315291(v=technet.10)#%E4%BE%8B-4
https://docs.microsoft.com/ja-jp/previous-versions/dd315291(v=technet.10)#-property-object
https://docs.microsoft.com/ja-jp/previous-versions/dd315291(v=technet.10)#%E4%BE%8B-4
584デフォルトの名無しさん
2020/09/14(月) 22:36:01.27ID:O60yV8/t おみそれしました。参考にしまつ (=゚ω゚)ノ
585デフォルトの名無しさん
2020/09/15(火) 17:44:30.49ID:vvfuKi+i 会社のパソコンでvscodeでのスクリプト作成
しようとしているのですが
下記問題に当たって苦しんでいます。
助言ください
1.vscodeのextentionのインストールができない。
→会社ネットワークは認証付きプロキシ環境なのでその設定が必要ぽいが設定してもダメ、とりあえずファイルを個別にインストールして対処
2.powershellデバッグしようとすると、初めて使うモジュールの分析をしています。と表示されて進まない
対象モジュールはpackagemanegement.psm1 1.4.7
これもプロキシの問題でインストールに苦労しました。
しようとしているのですが
下記問題に当たって苦しんでいます。
助言ください
1.vscodeのextentionのインストールができない。
→会社ネットワークは認証付きプロキシ環境なのでその設定が必要ぽいが設定してもダメ、とりあえずファイルを個別にインストールして対処
2.powershellデバッグしようとすると、初めて使うモジュールの分析をしています。と表示されて進まない
対象モジュールはpackagemanegement.psm1 1.4.7
これもプロキシの問題でインストールに苦労しました。
586デフォルトの名無しさん
2020/09/15(火) 17:51:28.05ID:7Yffzl/8 >>585
認証付きプロキシでも普通に使えてるけど…って思ったらいくつもissue上がってるし、こっちの環境でも「XHR failed」ってエラーになるな
認証付きプロキシでも普通に使えてるけど…って思ったらいくつもissue上がってるし、こっちの環境でも「XHR failed」ってエラーになるな
587デフォルトの名無しさん
2020/09/24(木) 09:55:49.02ID:R8JuKz31 >>262
selectに -expandpropatye みたいなのを足せば何とかなるかも…
selectに -expandpropatye みたいなのを足せば何とかなるかも…
588デフォルトの名無しさん
2020/09/25(金) 01:41:03.68ID:hFZS0B6G ヒアドキュメントの変数使う時に変数を前方参照(後方参照?)したいんですが、
できませんかね
# スクリプトの頭の方で参照したい
$heredoc
# ヒアドキュメントはスクリプトの後ろにまとめたい
$heredoc = @`
abc
`@
できませんかね
# スクリプトの頭の方で参照したい
$heredoc
# ヒアドキュメントはスクリプトの後ろにまとめたい
$heredoc = @`
abc
`@
589デフォルトの名無しさん
2020/09/25(金) 01:55:05.65ID:mGml3uVc Ruby でも、出来ない
590デフォルトの名無しさん
2020/09/25(金) 04:02:41.97ID:pAwXdRR4 >>588
それって静的変数みたいなものですかね?考え方は
それって静的変数みたいなものですかね?考え方は
591デフォルトの名無しさん
2020/09/25(金) 22:07:41.04ID:hFZS0B6G UNIX系のシェルの仕様見ても前方参照できるようなことは書いてなありませんでした
だめっぽいですね
一旦ファイルとして後ろまで読むみたいなアクロパティックな方法しかなさそう
だめっぽいですね
一旦ファイルとして後ろまで読むみたいなアクロパティックな方法しかなさそう
592デフォルトの名無しさん
2020/09/25(金) 22:15:02.42ID:5mEzuFCz 自分自身をファイルオープンして末尾を読み出すとか。
昔、自分自身を解凍するシェルスクリプトがUNIX系アプリのインストーラとしてよく使われてたよね
昔、自分自身を解凍するシェルスクリプトがUNIX系アプリのインストーラとしてよく使われてたよね
593デフォルトの名無しさん
2020/09/25(金) 22:17:06.26ID:5mEzuFCz おっと書かれていたか
594デフォルトの名無しさん
2020/09/25(金) 23:45:08.08ID:BU0fUt+3 処理をスクリプトブロックや関数の中に入れてもいいなら
$f = {
echo $heredoc
}
$heredoc = @`
abc
`@
. $f
$f = {
echo $heredoc
}
$heredoc = @`
abc
`@
. $f
595デフォルトの名無しさん
2020/09/26(土) 22:07:47.79ID:BjfAYIo4 わけがわからん現象にでくわした
シンボリックリンク作成権限を付けたユーザーなんだけど
New-Item -Type Directory -Name dir
New-Item -Type SymbolicLink -Name sym -Target dir
これを管理者で実行すると SYMLINKD になるんだけど
管理者にならずに実行すると SYMLINK になるのはどういうこと?
シンボリックリンク作成権限を付けたユーザーなんだけど
New-Item -Type Directory -Name dir
New-Item -Type SymbolicLink -Name sym -Target dir
これを管理者で実行すると SYMLINKD になるんだけど
管理者にならずに実行すると SYMLINK になるのはどういうこと?
596デフォルトの名無しさん
2020/09/27(日) 09:30:31.69ID:HvAokpg1 chcp 65001
をやっても画面のユニコード文字列が文字化けするのはなんで?
をやっても画面のユニコード文字列が文字化けするのはなんで?
597デフォルトの名無しさん
2020/09/27(日) 11:16:54.85ID:4AaMSaam598デフォルトの名無しさん
2020/09/27(日) 11:18:33.39ID:4AaMSaam599デフォルトの名無しさん
2020/09/27(日) 12:01:00.23ID:45wzgCn0 Windows Terminalは絵文字とかもちゃんと表示できるらしい、使ってないけど
600デフォルトの名無しさん
2020/09/27(日) 16:37:33.79ID:zpUujZFe 管理者にならずに New-Item でフォルダーへのシンボリックリンクを張ると
SYMLINKD でなく SYMLINK ができるという >>595 なんだが
PowerShell を C:\Users\ユーザー で起動した場合だけ起こるっぽい
Windows PowerShell では起きないし、起動フォルダーを変えても起きない
なんだこれ?
SYMLINKD でなく SYMLINK ができるという >>595 なんだが
PowerShell を C:\Users\ユーザー で起動した場合だけ起こるっぽい
Windows PowerShell では起きないし、起動フォルダーを変えても起きない
なんだこれ?
601デフォルトの名無しさん
2020/09/27(日) 18:25:49.52ID:4AaMSaam >>600
うちの環境 (Win10 2004) だと以下の通り。いずれもシンボリックリンク作成権限を与えた一般ユーザ。
PowerShell 5.0
開始ディレクトリに関わらず、再現せず
PowerShell 7.0.3
開始ディレクトリに関わらず、再現する
よく分からんね。
うちの環境 (Win10 2004) だと以下の通り。いずれもシンボリックリンク作成権限を与えた一般ユーザ。
PowerShell 5.0
開始ディレクトリに関わらず、再現せず
PowerShell 7.0.3
開始ディレクトリに関わらず、再現する
よく分からんね。
602デフォルトの名無しさん
2020/09/27(日) 21:02:03.10ID:qVXRXcgH 昔からpsのアクセス権周辺の実装は怪しいと思ってる
専用コマンド呼ぶなり.NET呼ぶなりした方がいいよ
専用コマンド呼ぶなり.NET呼ぶなりした方がいいよ
603デフォルトの名無しさん
2020/09/27(日) 22:00:17.33ID:zpUujZFe なぜうち(Win10 1909 18363.1082)では起動フォルダーで挙動が変わるんだろう
C:\Users\ユーザー で起動した PowerShell 7.0.3 だと、どこで New-Item しても発生する
その PowerShell で、さらに PowerShell を起動すると
C:\Users\ユーザー で起動した場合は、どこで New-Item しても発生する
別のフォルダーで起動した場合は、どこで New-Item しても問題ない
こうなる理由が予想もできない
C:\Users\ユーザー で起動した PowerShell 7.0.3 だと、どこで New-Item しても発生する
その PowerShell で、さらに PowerShell を起動すると
C:\Users\ユーザー で起動した場合は、どこで New-Item しても発生する
別のフォルダーで起動した場合は、どこで New-Item しても問題ない
こうなる理由が予想もできない
604デフォルトの名無しさん
2020/09/27(日) 23:03:00.71ID:zpUujZFe あーごめん
管理者でも C:\Users\ユーザー で起動したら発生した
管理者になるかどうかは関係なかった
理由はさっぱりだが……
管理者でも C:\Users\ユーザー で起動したら発生した
管理者になるかどうかは関係なかった
理由はさっぱりだが……
605デフォルトの名無しさん
2020/09/28(月) 10:27:40.26ID:6RK1A/yN606デフォルトの名無しさん
2020/09/28(月) 20:33:13.25ID:1OU6a08X 試した
1 〇 (でも張りたいのは相対パスのリンク)
2 ×
3 〇
[Environment]::CurrentDirectory を基準にターゲットのフルパスを求めて
フォルダーだったら SYMLINKD 、それ以外は SYMLINK を作ってるっぽい
# >>603 を書く時 C:\Users\ユーザー では試してなかった……。
カレントディレクトリを移動しても [Environment]::CurrentDirectory は変わらない
となると悪いのは
カレントディレクトリを返さない [Environment]::CurrentDirectory ?
それとも [Environment]::CurrentDirectory を参照する New-Item ?
1 〇 (でも張りたいのは相対パスのリンク)
2 ×
3 〇
[Environment]::CurrentDirectory を基準にターゲットのフルパスを求めて
フォルダーだったら SYMLINKD 、それ以外は SYMLINK を作ってるっぽい
# >>603 を書く時 C:\Users\ユーザー では試してなかった……。
カレントディレクトリを移動しても [Environment]::CurrentDirectory は変わらない
となると悪いのは
カレントディレクトリを返さない [Environment]::CurrentDirectory ?
それとも [Environment]::CurrentDirectory を参照する New-Item ?
607デフォルトの名無しさん
2020/09/29(火) 11:44:19.44ID:xkYzZNyK >>606
ごめん。ソースの履歴を見たら、v7.0.3 のときは、2. の方法は無意味だったみたい。
v7.0.3 の実装は、>>606 さんの想像のとおり。
そもそも、ターゲットの相対パスを解決するときの基準は、カレントのパスではなくて、
シンボリックリンクそのもののパスだよね。
なので、プロセスのカレントディレクトリ([Environment]::CurrentDirectory)の代わりに、
PowerShell のカレントロケーション($PWD)を基準にしたとしても、やっぱりバグる。
New-Item -Type Symbolic -Name Foo\Bar -Target .\Zot みたいなケースとか。
でね。最新のソースには、相対パスのターゲットのための修正が施されているのだけれど、
これが、「.\」か「./」で始まるパスのときは、基準にカレントロケーションを使う、
という中途半端かつ誤ったもので...。
ごめん。ソースの履歴を見たら、v7.0.3 のときは、2. の方法は無意味だったみたい。
v7.0.3 の実装は、>>606 さんの想像のとおり。
そもそも、ターゲットの相対パスを解決するときの基準は、カレントのパスではなくて、
シンボリックリンクそのもののパスだよね。
なので、プロセスのカレントディレクトリ([Environment]::CurrentDirectory)の代わりに、
PowerShell のカレントロケーション($PWD)を基準にしたとしても、やっぱりバグる。
New-Item -Type Symbolic -Name Foo\Bar -Target .\Zot みたいなケースとか。
でね。最新のソースには、相対パスのターゲットのための修正が施されているのだけれど、
これが、「.\」か「./」で始まるパスのときは、基準にカレントロケーションを使う、
という中途半端かつ誤ったもので...。
608デフォルトの名無しさん
2020/09/29(火) 20:49:56.27ID:J7wCjMtV 常に リンクのフルパス → ターゲットのフルパス とたどるだけなのに……w
早く修正されますように
早く修正されますように
609デフォルトの名無しさん
2020/09/30(水) 08:50:32.18ID:6kAerFE6 [Environment]::CurrentDirectoryや[IO.Directory]::GetCurrentDirectory()の罠
他のモジュールも同じ問題を抱えてないか心配になる
他のモジュールも同じ問題を抱えてないか心配になる
610デフォルトの名無しさん
2020/10/01(木) 10:19:36.95ID:tnCBqate New-Itemはハードリンクもバグってる
こっちはWindows以外のOSでも問題になるはず
New-Item -Type Directory -Name linktest
New-Item -Name linktest\target
New-Item -type HardLink -Name linktest\hardlink -Target linktest\target
に対して、こんなメッセージでエラーになってしまう
New-Item: Could not find item linktest\target.
興味深いのは
New-Item -Type HardLink -Name linktest\hardlink -Target target
と間違えてみると
New-Item: Cannot find path 'カレントディレクトリ\target' because it does not exist.
ちゃんと正しいエラーメッセージが返る
不思議だ
こっちはWindows以外のOSでも問題になるはず
New-Item -Type Directory -Name linktest
New-Item -Name linktest\target
New-Item -type HardLink -Name linktest\hardlink -Target linktest\target
に対して、こんなメッセージでエラーになってしまう
New-Item: Could not find item linktest\target.
興味深いのは
New-Item -Type HardLink -Name linktest\hardlink -Target target
と間違えてみると
New-Item: Cannot find path 'カレントディレクトリ\target' because it does not exist.
ちゃんと正しいエラーメッセージが返る
不思議だ
611デフォルトの名無しさん
2020/10/01(木) 21:05:38.94ID:NSqrZd61 >>610
>New-Item -type HardLink -Name linktest\hardlink -Target linktest\target
5.1と7.0.3で試したけどエラーにならなかったぞ
>New-Item -type HardLink -Name linktest\hardlink -Target linktest\target
5.1と7.0.3で試したけどエラーにならなかったぞ
612デフォルトの名無しさん
2020/10/01(木) 21:26:37.01ID:tnCBqate これでどう? (長すぎて切れるかも)
$origCurDir = [System.Environment]::CurrentDirectory
New-Item -ItemType Directory -Path linktest
Push-Location linktest
New-Item -ItemType Directory -Path dir
Push-Location dir # linktest/dir
New-Item -ItemType Directory -Path subdir
Set-Content -Path file -Value "hello"
New-Item -ItemType HardLink -Path hardlink_1 -Value file
New-Item -ItemType SymbolicLink -Path symlink_1 -Value subdir
Pop-Location # linktest
New-Item -ItemType HardLink -Path dir/hardlink_2 -Value dir/file
New-Item -ItemType SymbolicLink -Path dir/symlink_2 -Value subdir
Push-Location dir # linktest/dir
[System.Environment]::CurrentDirectory = $PWD
New-Item -ItemType HardLink -Path hardlink_3 -Value file
New-Item -ItemType SymbolicLink -Path symlink_3 -Value subdir
Pop-Location # linktest
[System.Environment]::CurrentDirectory = $PWD
New-Item -ItemType HardLink -Path dir/hardlink_4 -Value dir/file
New-Item -ItemType SymbolicLink -Path dir/symlink_4 -Value subdir
Pop-Location
[System.Environment]::CurrentDirectory = $origCurDir
Get-ChildItem -Path linktest/dir | Sort-Object -Property CreationTime | Format-Table Attributes,LinkType,Target,Length,Name
$origCurDir = [System.Environment]::CurrentDirectory
New-Item -ItemType Directory -Path linktest
Push-Location linktest
New-Item -ItemType Directory -Path dir
Push-Location dir # linktest/dir
New-Item -ItemType Directory -Path subdir
Set-Content -Path file -Value "hello"
New-Item -ItemType HardLink -Path hardlink_1 -Value file
New-Item -ItemType SymbolicLink -Path symlink_1 -Value subdir
Pop-Location # linktest
New-Item -ItemType HardLink -Path dir/hardlink_2 -Value dir/file
New-Item -ItemType SymbolicLink -Path dir/symlink_2 -Value subdir
Push-Location dir # linktest/dir
[System.Environment]::CurrentDirectory = $PWD
New-Item -ItemType HardLink -Path hardlink_3 -Value file
New-Item -ItemType SymbolicLink -Path symlink_3 -Value subdir
Pop-Location # linktest
[System.Environment]::CurrentDirectory = $PWD
New-Item -ItemType HardLink -Path dir/hardlink_4 -Value dir/file
New-Item -ItemType SymbolicLink -Path dir/symlink_4 -Value subdir
Pop-Location
[System.Environment]::CurrentDirectory = $origCurDir
Get-ChildItem -Path linktest/dir | Sort-Object -Property CreationTime | Format-Table Attributes,LinkType,Target,Length,Name
613デフォルトの名無しさん
2020/10/02(金) 13:25:40.85ID:1QpEVKY8 mklink一行でええじゃん
614デフォルトの名無しさん
2020/10/02(金) 13:57:48.64ID:w3BWfVBY >>613
これを思い出した
********
アメリカのNASAは、宇宙飛行士を最初に宇宙に送り込んだとき、
無重力状態ではボールペンで文字を書くことができないのを発見した。
これではボールペンを持って行っても役に立たない!
NASAの科学者たちはこの問題に立ち向かうべく、10年の歳月と120億ドルの開発費をかけて研究を重ねた。
その結果ついに、無重力でも上下逆にしても水の中でも氷点下でも摂氏300度でも、
どんな状況下でもどんな表面にでも書けるボールペンを開発した!!
一方、ソ連は鉛筆を使った。
これを思い出した
********
アメリカのNASAは、宇宙飛行士を最初に宇宙に送り込んだとき、
無重力状態ではボールペンで文字を書くことができないのを発見した。
これではボールペンを持って行っても役に立たない!
NASAの科学者たちはこの問題に立ち向かうべく、10年の歳月と120億ドルの開発費をかけて研究を重ねた。
その結果ついに、無重力でも上下逆にしても水の中でも氷点下でも摂氏300度でも、
どんな状況下でもどんな表面にでも書けるボールペンを開発した!!
一方、ソ連は鉛筆を使った。
615デフォルトの名無しさん
2020/10/02(金) 14:35:00.30ID:Ck+HovvX リンクを張ることが目的なのではない
PowerShellの不具合を見つけることが目的なのだ
PowerShellの不具合を見つけることが目的なのだ
616デフォルトの名無しさん
2020/10/02(金) 21:34:24.75ID:ljpWPhwK 誰か英語ができる人 >>612 のテストを添えて「New-Itemでのhardlink/symlink作成に
[Environment]::CurrentDirectoryが影響する」ってタイトルでイシューを立てて欲しい
[Environment]::CurrentDirectoryが影響する」ってタイトルでイシューを立てて欲しい
617デフォルトの名無しさん
2020/10/03(土) 01:55:55.82ID:0vVVHGK+ 昔はよくConnectに投稿したりしたんだけどねぇ
618デフォルトの名無しさん
2020/10/03(土) 10:45:42.05ID:68v91MPk よろしくお願いします
619デフォルトの名無しさん
2020/10/03(土) 22:48:38.93ID:7NrhvCrT バージョン上がって使いやすくなってきたねpowershell
Shellより扱いやすいからmacにもインスコしたわ
コンソールに貼り付けて実行した時に右クリックの貼り付けとctlvの貼り付けで動きが違うのは何で?
Shellより扱いやすいからmacにもインスコしたわ
コンソールに貼り付けて実行した時に右クリックの貼り付けとctlvの貼り付けで動きが違うのは何で?
620デフォルトの名無しさん
2020/10/04(日) 17:12:39.48ID:Pj4o9N0c621デフォルトの名無しさん
2020/10/07(水) 01:28:53.25ID:OLUeUK9d あるファイルを消そうとしたら「このファイルは開かれているため〜」と表示されて消せなかった。
こういう場合、自分はリソースモニターでファイルを開いているアプリを探すんだけど
最近入った現場では管理者以外はリソースモニターを使えないように設定されていて困った。
それで質問なのですが、powershellのコマンドでファイルを開いているアプリを探す方法はあるのでしょうか?
こういう場合、自分はリソースモニターでファイルを開いているアプリを探すんだけど
最近入った現場では管理者以外はリソースモニターを使えないように設定されていて困った。
それで質問なのですが、powershellのコマンドでファイルを開いているアプリを探す方法はあるのでしょうか?
622デフォルトの名無しさん
2020/10/07(水) 02:03:23.70ID:HMBCuleJ624デフォルトの名無しさん
2020/10/08(木) 19:15:35.07ID:zkqa7tbj 試せば判るけど >>622 はプロセスがロードしてるDLLとかのモジュールしか得られないよ
開いてるファイルはプロセスに紐付いてるハンドル取得して一個一個チェックするしかないよ
実装はpowershellじゃかなり大変だからhandle.exeっていうMSが公開してるツール使ったらいいよ
開いてるファイルはプロセスに紐付いてるハンドル取得して一個一個チェックするしかないよ
実装はpowershellじゃかなり大変だからhandle.exeっていうMSが公開してるツール使ったらいいよ
625デフォルトの名無しさん
2020/10/14(水) 06:30:09.66ID:JjVHZHwh セキュリティガチガチでネットにも繋がらないうちの現場じゃ無理だな
626デフォルトの名無しさん
2020/10/14(水) 11:09:36.08ID:s64A8YK8 うちの会社は「キッコーマン」のHPが見れません、”コーマン”がフィルターに引っかかるのですw
627デフォルトの名無しさん
2020/10/15(木) 21:32:35.73ID:vPm9QJ4K openfiles コマンドでファイルを開いているプロセスを調べる 【 Windows】
http://tooljp.com/windows/doc/Server2008/openfiles/openfiles.html
Openfiles
https://web.archive.org/web/20120424081342/http://technet.microsoft.com/ja-jp/library/cc772842(v=ws.10).aspx
http://tooljp.com/windows/doc/Server2008/openfiles/openfiles.html
Openfiles
https://web.archive.org/web/20120424081342/http://technet.microsoft.com/ja-jp/library/cc772842(v=ws.10).aspx
628デフォルトの名無しさん
2020/10/17(土) 17:51:59.12ID:2b9DYeQb 職場で「さすがパワーシェラー!」って言われたんだけど
パワーシェルを使う人のことをそう呼ぶものなの?
パワーシェルを使う人のことをそう呼ぶものなの?
629デフォルトの名無しさん
2020/10/17(土) 17:57:10.05ID:Ske6VIT2 聞いたことないな
むしろ馬鹿にされてる気分
むしろ馬鹿にされてる気分
630デフォルトの名無しさん
2020/10/17(土) 23:05:50.24ID:DNKik4OU 洋書で良い本ないですか?
和書だと数冊しか出てないので…
和書だと数冊しか出てないので…
631デフォルトの名無しさん
2020/10/18(日) 21:28:34.46ID:6x+7Jy+N in actionは読んだのかね
あとはCoreのソース読んでくのが手っ取り早い
あとはCoreのソース読んでくのが手っ取り早い
632デフォルトの名無しさん
2020/10/19(月) 22:58:13.20ID:TaaQ8sH/633デフォルトの名無しさん
2020/10/24(土) 21:41:19.65ID:1s91cR1z 多次元配列(ジャグ配列ではなく)を1次元配列に平坦化する高速な方法ありませんか?
データ数は100万個くらいです。
@($a | % {$_})
検索したら↑のカッコいい方法が出てきましたが、
私の環境で6秒ほどかかり速度に不満があります。
データ数は100万個くらいです。
@($a | % {$_})
検索したら↑のカッコいい方法が出てきましたが、
私の環境で6秒ほどかかり速度に不満があります。
634デフォルトの名無しさん
2020/10/24(土) 23:22:07.28ID:ZaC2aARH パイプとForeach-Object自体が遅いからね
データがオンメモリにあるならforeach文のが速い
データがオンメモリにあるならforeach文のが速い
635デフォルトの名無しさん
2020/10/24(土) 23:28:40.40ID:ZaC2aARH あとは万個の繰り返し処理になるわけだからpowershellで書いたら全体的には当然遅い
対策としては繰り返し部分だけC#に渡すとかだね
対策としては繰り返し部分だけC#に渡すとかだね
■ このスレッドは過去ログ倉庫に格納されています
