前スレ
【最強CUI】PowerShell -Part 1
http://echo.2ch.net/test/read.cgi/tech/1378978504/
探検
【最強CUI】PowerShell -Part 2 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2016/11/26(土) 06:30:02.67ID:pZYy6q7Y
683デフォルトの名無しさん
2018/04/01(日) 15:39:31.01ID:IR/E13YL684639
2018/04/01(日) 15:39:47.10ID:y3W5ZkrO >>679
最後に出てくる"てすと"という意味ですが、したのようなとき
"てすと"を含む最後の行は5行目という意味ですか?
1行目 abmてすとxyz
2行目 1239xxxx
3行目 yyyyyてすと
4行目 xxxxyyてすとyy
5行目 てすとuuuu <== "てすと"を含む最後の行
6行目 zzyyvv
7行目 練習123
最後に出てくる"てすと"という意味ですが、したのようなとき
"てすと"を含む最後の行は5行目という意味ですか?
1行目 abmてすとxyz
2行目 1239xxxx
3行目 yyyyyてすと
4行目 xxxxyyてすとyy
5行目 てすとuuuu <== "てすと"を含む最後の行
6行目 zzyyvv
7行目 練習123
685デフォルトの名無しさん
2018/04/01(日) 15:47:44.82ID:D0kqpvo1 >>684
その場合だと7行目を判断して"てすと"以外の文字列なので"てすと"を追記してください。
その場合だと7行目を判断して"てすと"以外の文字列なので"てすと"を追記してください。
686デフォルトの名無しさん
2018/04/01(日) 15:51:05.88ID:IR/E13YL687639
2018/04/01(日) 15:52:48.10ID:y3W5ZkrO688デフォルトの名無しさん
2018/04/01(日) 15:53:31.12ID:D0kqpvo1 >>687
はいその認識で間違いありません
はいその認識で間違いありません
689デフォルトの名無しさん
2018/04/01(日) 16:00:22.19ID:mWcRMyuA はっきり言って>>665が非常に分かりづらい
"最後"って表現は何とかしてくれ
"最後"って表現は何とかしてくれ
690デフォルトの名無しさん
2018/04/01(日) 16:05:52.05ID:QUrQa6Zt691デフォルトの名無しさん
2018/04/01(日) 16:08:07.63ID:mWcRMyuA692デフォルトの名無しさん
2018/04/01(日) 16:11:53.66ID:QUrQa6Zt >>691
空行っていうのもなんか曖昧というか例えばスペース一個あって改行したらそれも空行だし
空行っていうのもなんか曖昧というか例えばスペース一個あって改行したらそれも空行だし
693639
2018/04/01(日) 16:21:25.05ID:y3W5ZkrO694デフォルトの名無しさん
2018/04/01(日) 20:51:38.49ID:ih9TVGcf695デフォルトの名無しさん
2018/04/02(月) 01:08:53.03ID:4AdYvMWY 仕様があいまい
最後と言う言葉があいまい。
全体の文章の最後なのか、最終行を指すのか、どちらか分からないから
最終行だけがチェック対象なのか?
それとも、最終行以外も対象になるのか?
最後と言う言葉があいまい。
全体の文章の最後なのか、最終行を指すのか、どちらか分からないから
最終行だけがチェック対象なのか?
それとも、最終行以外も対象になるのか?
696デフォルトの名無しさん
2018/04/02(月) 01:16:27.17ID:4AdYvMWY >>632
>最終行が"てすと"じゃなかった場合は、"てすと"を追記したいです
これも、最終行が改行で終わっている場合と、終わっていない場合で、動作が変わる
abc\n → abc\nテスト
abc → abcテスト
上は、最終行の次の行に追加されるけど、
下は、最終行に追加される
>最終行が"てすと"じゃなかった場合は、"てすと"を追記したいです
これも、最終行が改行で終わっている場合と、終わっていない場合で、動作が変わる
abc\n → abc\nテスト
abc → abcテスト
上は、最終行の次の行に追加されるけど、
下は、最終行に追加される
697デフォルトの名無しさん
2018/04/02(月) 10:47:05.22ID:qOetNhN3 $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勉強中なんだけどこんな感じ?
$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.79ID:hxQiBYMY 正直今のところ頂いた回答の中では>>658さんの回答が模範解答でした。
699デフォルトの名無しさん
2018/04/02(月) 11:22:46.38ID:hxQiBYMY >>697いいですね!!!
700デフォルトの名無しさん
2018/04/02(月) 11:50:24.39ID:M5QFId2x701デフォルトの名無しさん
2018/04/02(月) 11:56:01.83ID:M5QFId2x >>697でいいやん
自分の趣味じゃないから読みにくいけど、条件は満たしてる
自分の趣味じゃないから読みにくいけど、条件は満たしてる
702デフォルトの名無しさん
2018/04/06(金) 06:46:32.07ID:lsq7GlrL PSはマルチスレッド気軽に使えないの?
ググるとリモート、マルチプロセスとRunspaceのサンプルばっかり出てくるんだが
2.0だとTaskも無いからキビシイのかね
ググるとリモート、マルチプロセスとRunspaceのサンプルばっかり出てくるんだが
2.0だとTaskも無いからキビシイのかね
703デフォルトの名無しさん
2018/04/06(金) 09:32:58.70ID:j6pN+emA704デフォルトの名無しさん
2018/04/07(土) 08:02:18.06ID:qEuioEYI いやーなんかねHttpListenerのBeginGetContextでクラッシュするんです
マルチスレッド対応してないのかなと
マルチスレッド対応してないのかなと
705デフォルトの名無しさん
2018/04/07(土) 17:09:59.62ID:q5Iu4RDV マルチスレッドというより(マルチスレッドだけど)
それが非同期に対応しているかという話ね。
それが非同期に対応しているかという話ね。
706デフォルトの名無しさん
2018/04/07(土) 21:26:24.68ID:qEuioEYI 原因わかった
別スレッドだとrunspaceが無いからpowershellコードが動かんのだとさ
別スレッドだとrunspaceが無いからpowershellコードが動かんのだとさ
707デフォルトの名無しさん
2018/04/07(土) 21:35:48.91ID:aBoyVqLJ708デフォルトの名無しさん
2018/04/07(土) 23:31:41.22ID:qEuioEYI >>707
今日はそれを調べてた
GetContext使ってメインスレッドで同期的にコンテキストを受けて
ルーティング処理〜レスポンス閉じるまでをrunspaceでOneWay非同期処理するといい感じで動作してるっぽい
今日はそれを調べてた
GetContext使ってメインスレッドで同期的にコンテキストを受けて
ルーティング処理〜レスポンス閉じるまでをrunspaceでOneWay非同期処理するといい感じで動作してるっぽい
709デフォルトの名無しさん
2018/04/22(日) 08:09:34.07ID:kKNIjb5q710デフォルトの名無しさん
2018/04/22(日) 10:30:51.82ID:H/AU6k7y どんだけロングパスなんだよ w
711デフォルトの名無しさん
2018/04/22(日) 16:41:59.07ID:T8IjF/fs TrustedInstallerのままなのはOS不具合かな
最近こういうの放置でアップグレードしてくから困る
最近こういうの放置でアップグレードしてくから困る
712デフォルトの名無しさん
2018/04/27(金) 00:02:08.86ID:H5AR7ZMg 聞いてくれやおじさん
UIautomationとやらを探して2日たらし回しにされた
psのgui自動化ツールはこれでええのか
UIautomationとやらを探して2日たらし回しにされた
psのgui自動化ツールはこれでええのか
713デフォルトの名無しさん
2018/05/03(木) 08:13:52.50ID:Fo+ItQuC 確かに探すの難しくなってるな
UI Automation PowerShell ExtensionsのDownload(再配布)
ttps://www.code-lab.net/?page_id=21648
UI Automation PowerShell ExtensionsのDownload(再配布)
ttps://www.code-lab.net/?page_id=21648
714デフォルトの名無しさん
2018/05/03(木) 21:30:36.66ID:nUgTWhrN 更新されてないってことは失敗なのか
715デフォルトの名無しさん
2018/05/05(土) 08:53:20.47ID:GHjIUW8T UIautomationって旧来技術ってことでWin10では
あらたなことは行わないんじゃないのかな。
たしかGUIがWPFだよね。
あらたなことは行わないんじゃないのかな。
たしかGUIがWPFだよね。
716デフォルトの名無しさん
2018/05/09(水) 04:43:48.03ID:EuvUccmD ISE
VSCode
Visual Studio 2017
でPowerShell開発やってみたけど一番快適にDebugできるのはVSCodeだった
VSCode
Visual Studio 2017
でPowerShell開発やってみたけど一番快適にDebugできるのはVSCodeだった
717デフォルトの名無しさん
2018/05/10(木) 12:17:12.51ID:p0Nf4Eeh 実行ポリシーを変更を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と表示される
.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.45ID:RfBSBg1R コンテキストメニューから実行してるなら、関連付け設定が
"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 を実行するところでそれが出るんだと思う
関連付け設定を変えれば出てこなくなるよ
"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.05ID:p0Nf4Eeh ありがとう
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "%1"に変えてみた
ついでにダブルクリックだけで実行できるように変えたら便利になった
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "%1"に変えてみた
ついでにダブルクリックだけで実行できるように変えたら便利になった
720デフォルトの名無しさん
2018/05/23(水) 08:17:44.44ID:fJ1IdiGY csvの中に時間とデータの2列あって、それの直線近似した切片を取りたいんだけどアルゴリズム組まないとだめ?
なおエクセルは入ってないパソコンで使いたい。
なおエクセルは入ってないパソコンで使いたい。
721デフォルトの名無しさん
2018/05/23(水) 12:32:03.51ID:p1Tm41m3 pythonでpandas+leastsquare
722デフォルトの名無しさん
2018/05/23(水) 16:20:34.21ID:xYq3JC1R >>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
単に公式に当てはめればいい
$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.83ID:nRn5Zijg724デフォルトの名無しさん
2018/05/23(水) 18:35:19.02ID:V6P0Rj+x725デフォルトの名無しさん
2018/05/23(水) 19:04:26.17ID:zdZwe3wq そんな環境でなぜ線形回帰分析を?
726デフォルトの名無しさん
2018/05/23(水) 19:19:58.76ID:PUSKgIep エクセルも使えない環境でデータ分析なんて
とんでもなく非効率だな
現実にはよくありそうな話だけど
とんでもなく非効率だな
現実にはよくありそうな話だけど
727デフォルトの名無しさん
2018/05/23(水) 19:26:40.12ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
GWRI8
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
GWRI8
728デフォルトの名無しさん
2018/05/24(木) 07:56:41.44ID:zQgi4Vqc >>726
装置とそれを制御するソフトウェアが入った専用PCが連動して動く仕組みのシステムで、そのPCのデータをその中で処理したいと思ってて。
大型の装置で、もし誤作動を起こしたら火災や死亡事故もあり得るのでソフト導入は難しい状況。エクセルくらいは問題ないと思うんだけど、許可下りず。
装置とそれを制御するソフトウェアが入った専用PCが連動して動く仕組みのシステムで、そのPCのデータをその中で処理したいと思ってて。
大型の装置で、もし誤作動を起こしたら火災や死亡事故もあり得るのでソフト導入は難しい状況。エクセルくらいは問題ないと思うんだけど、許可下りず。
729デフォルトの名無しさん
2018/05/24(木) 09:57:30.14ID:fftgGS82 人命にかかわるならPowerShellでもだめだろ
730デフォルトの名無しさん
2018/05/24(木) 12:22:12.99ID:6ROz+TzN 線形回帰分析のためだけにエクセルを導入しようとする高レベルVBAエンジニアさん命を握られてしまった従業員さん
731デフォルトの名無しさん
2018/05/24(木) 13:10:55.11ID:dChwsR57 >>730
日本語で
日本語で
732デフォルトの名無しさん
2018/05/24(木) 18:11:34.30ID:CzEEKu6Z 今回だけじゃなくて別のデータ分析する
機会も出てくるかもしれないだろ
エクセルに限らずソフトがインストールできないんじゃ
いろいろ車輪の再発明することになりそう
機会も出てくるかもしれないだろ
エクセルに限らずソフトがインストールできないんじゃ
いろいろ車輪の再発明することになりそう
733デフォルトの名無しさん
2018/05/24(木) 18:17:30.66ID:5HLXkVSJ そういう機会がなんども出てきてから検討すればいいよ
まあそうなったらエクセルじゃなくてデータ解析に適したツールを導入するべきだろうけどね
VBAerさんはとにかくVBAを使いたいって目的が先行するから困る
まあそうなったらエクセルじゃなくてデータ解析に適したツールを導入するべきだろうけどね
VBAerさんはとにかくVBAを使いたいって目的が先行するから困る
734デフォルトの名無しさん
2018/05/24(木) 18:47:46.05ID:5HLXkVSJ なんでもかんでも再発明が悪という風潮はよろしくない
少量の些細な再発明を避けるために大規模なソリューションを導入すると
そのソリューションの管理コストや障害リスクの方が高くなってしまう
少量の些細な再発明を避けるために大規模なソリューションを導入すると
そのソリューションの管理コストや障害リスクの方が高くなってしまう
735デフォルトの名無しさん
2018/05/24(木) 18:52:23.87ID:YkaVpFZu なんで制御PCと同じのでやろうとしてるのか?
そもそもwi
そもそもwi
736デフォルトの名無しさん
2018/05/24(木) 19:37:16.12ID:8RmhyhjF そういう設定なんだなというのは皆わかった上でディスカッションしてる
なので野暮なツッコミは無しにしようや
なので野暮なツッコミは無しにしようや
737デフォルトの名無しさん
2018/05/24(木) 19:58:22.10ID:HJmOkmLD 勉強とは再発明することだと思うんがなあ
738デフォルトの名無しさん
2018/05/24(木) 21:09:40.32ID:zQgi4Vqc >>735
今はデータをUSBで他のPCに移してから処理してる。
制御PCでやりたい理由は、USBはパスワード付きっていうのもあって面倒で、しかも常に最新の情報を求められるため日に数回USBで出し入れすることになるのでより面倒。
それが毎日となるとめちゃくちゃ面倒。
ということで不慣れなpowershell でやろうとした次第です。
今はデータをUSBで他のPCに移してから処理してる。
制御PCでやりたい理由は、USBはパスワード付きっていうのもあって面倒で、しかも常に最新の情報を求められるため日に数回USBで出し入れすることになるのでより面倒。
それが毎日となるとめちゃくちゃ面倒。
ということで不慣れなpowershell でやろうとした次第です。
739デフォルトの名無しさん
2018/05/24(木) 22:23:06.92ID:A0AqRoYu 別PCでC#の解析用アセンブリ作ってPowerShellから呼び出したらいいんじゃないの
740デフォルトの名無しさん
2018/05/24(木) 22:34:04.69ID:JOD0E1R+ ネットも禁止な所?
741デフォルトの名無しさん
2018/05/24(木) 22:42:20.58ID:OVWSg8Eh オフラインです。C♯は難しそうなので。
すみません、私事を語り過ぎました。元の話題に戻ってどうぞ
すみません、私事を語り過ぎました。元の話題に戻ってどうぞ
742デフォルトの名無しさん
2018/05/24(木) 22:53:30.12ID:6yspu/tD 死亡事故が起こるようなマシンだろ
俺なら通常はネットから切り離しとくわ
俺なら通常はネットから切り離しとくわ
743デフォルトの名無しさん
2018/05/25(金) 02:05:25.85ID:gztHcn54 >>742
オフラインって書いてますやん
オフラインって書いてますやん
744デフォルトの名無しさん
2018/05/25(金) 03:37:02.75ID:JRXZZDGl 会話がかみ合ってないな
頭悪そう
頭悪そう
745デフォルトの名無しさん
2018/05/25(金) 03:58:22.29ID:cDmsKy0H いや現実の問題設定は良い刺激になったよ
そういうのないと同じ話題がループしちゃうし
そういうのないと同じ話題がループしちゃうし
746デフォルトの名無しさん
2018/05/25(金) 06:29:46.18ID:zDcEhAN3 そのPCで処理しても結局USBで持っていかないと駄目なんじゃ
747デフォルトの名無しさん
2018/05/26(土) 18:35:06.63ID:2fyQupuv 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
こんなんできたら絶対便利だろ
いちいち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.38ID:ek08JVnr そういうコマンドレットを作ればいいんじゃないの
749デフォルトの名無しさん
2018/05/27(日) 10:22:45.07ID:FRc1Igvs こういうのは末端のユーザーじゃなくMicrosoftが責任持って整備すべき仕事だよなぁ
750デフォルトの名無しさん
2018/05/27(日) 10:32:40.51ID:uKjxyzN7 >>747
Visual Studioだと全部やってくれるのにな
Visual Studioだと全部やってくれるのにな
751デフォルトの名無しさん
2018/05/27(日) 10:54:12.69ID:kiqwqKPT752デフォルトの名無しさん
2018/05/28(月) 20:48:57.60ID:ANh8mcyB csv読み込みのときに、♯が入ってる行が消えるのですが回避方法あるでしょうか?
バージョンは2のため、cat|convertfrom- csv を使っています。
バージョンは2のため、cat|convertfrom- csv を使っています。
753デフォルトの名無しさん
2018/05/29(火) 10:01:43.76ID:JWI1PS/k cat|♯を消す処理|convertfrom- csv
754デフォルトの名無しさん
2018/05/29(火) 13:59:12.26ID:/wWb7+KW 半角井桁でも全角井桁でもなくシャープがダメ文字ってことなら、いわゆる機種依存文字に対して内部的に文字化けしてるのかね
Get-Contentの-Encodingパラメーターを変えて試行錯誤してみるのはどうだろ
Get-Contentの-Encodingパラメーターを変えて試行錯誤してみるのはどうだろ
755デフォルトの名無しさん
2018/05/29(火) 20:04:16.63ID:uVfBdj0+ >>753
おっしゃる通りcat時点ではシャープのある行も問題なく表示されていたのでそこでシャープを適当な文字列に置換する事で回避出来ました。
なお文字化け等では無かったためencodingは関係ありませんでしたが、お二方ともアドバイスしていただきありがとうございました。
おっしゃる通りcat時点ではシャープのある行も問題なく表示されていたのでそこでシャープを適当な文字列に置換する事で回避出来ました。
なお文字化け等では無かったためencodingは関係ありませんでしたが、お二方ともアドバイスしていただきありがとうございました。
756デフォルトの名無しさん
2018/05/29(火) 21:24:14.97ID:NIS7bYGB csvでシャープで始まる行はコメントとみなされる
757デフォルトの名無しさん
2018/05/29(火) 21:48:09.49ID:JDVJC7kx C#をAddTypeする#だけに
758デフォルトの名無しさん
2018/05/29(火) 22:37:29.79ID:DjF05HP4759デフォルトの名無しさん
2018/05/29(火) 23:17:16.03ID:uVfBdj0+760デフォルトの名無しさん
2018/05/30(水) 01:59:47.06ID:yjZg0US2 RFCではCSVのコメントなんて定義されてないんだがな
#がコメントとか方言です
#がコメントとか方言です
761デフォルトの名無しさん
2018/05/30(水) 07:47:42.04ID:fRdW4Y4e 「♯を含む行」が消えるって言ってるんだから、実は「#で始まる行」が消えてた、なんてことは流石にないでしょう
762デフォルトの名無しさん
2018/05/30(水) 08:14:02.91ID:fRdW4Y4e と思って検証したらマジじゃねーかバーロー
v2では使えないけどcat -raw|convertfrom-csvなら無視されなくなるから、#がCSVコメントとして無視されてるのではなくて、#をコメント行相当のオブジェクトとして返しているGet-Content側がタチ悪いという話じゃないだろうか
v2では使えないけどcat -raw|convertfrom-csvなら無視されなくなるから、#がCSVコメントとして無視されてるのではなくて、#をコメント行相当のオブジェクトとして返しているGet-Content側がタチ悪いという話じゃないだろうか
763デフォルトの名無しさん
2018/05/30(水) 10:30:58.30ID:962OkqnQ " で囲んだら大丈夫とか?
764デフォルトの名無しさん
2018/05/30(水) 22:12:34.15ID:8qi2Khqy PCに入ってるPowerShellのバージョンを簡単に切り替える方法はないのでしょうか?
作成したスクリプトがバージョン2でも3でも動くか等の検証を行いたいのですが?
作成したスクリプトがバージョン2でも3でも動くか等の検証を行いたいのですが?
765デフォルトの名無しさん
2018/05/30(水) 22:36:17.40ID:JXGp/YkD 旧バージョン互換で動かすオプションあった気がする
766デフォルトの名無しさん
2018/05/31(木) 17:20:46.88ID:ZTEAvdsG そのCSV は各列を、" " で囲んでないのか?
767デフォルトの名無しさん
2018/05/31(木) 21:31:21.76ID:3wC9yI4G Windows PowerShell 2.0 エンジンの開始
https://docs.microsoft.com/ja-jp/powershell/scripting/setup/starting-the-windows-powershell-2.0-engine
https://docs.microsoft.com/ja-jp/powershell/scripting/setup/starting-the-windows-powershell-2.0-engine
768デフォルトの名無しさん
2018/06/01(金) 19:12:06.06ID:j/MM0qyt ISEがインテリセンス使ったら落ちてたのが
KB4100403で修正されたらしい(未確認)
KB4100403で修正されたらしい(未確認)
769デフォルトの名無しさん
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でもこのような書き方はあるでしょうか。
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.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
速いかは知らんけどそれと同じようにするならこんな感じかね
$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.90ID:OF0qTMZ9 >>770
ありがとうございます。多次元配列を使えばよいのですね。
webで調べると多次元配列と多段階配列(ジャグ配列)がごっちゃになってるサイトもあって混乱していましたが、770さんの簡潔な記述をみて理解出来ました。
ありがとうございます。多次元配列を使えばよいのですね。
webで調べると多次元配列と多段階配列(ジャグ配列)がごっちゃになってるサイトもあって混乱していましたが、770さんの簡潔な記述をみて理解出来ました。
772デフォルトの名無しさん
2018/06/06(水) 23:07:10.85ID:N8yiaTQz gradle的なタスクランナーDSLは無いの?
773デフォルトの名無しさん
2018/06/09(土) 16:51:36.72ID:XSSJlv/Q PowershellからExcelのユーザフォーム(コマンドボタン)を非表示かクリックできないようにしたいのですが、いくつか試してもうまく設定できませんでした。
ご存知の方がいたら、ご教示いただければ。
ご存知の方がいたら、ご教示いただければ。
774デフォルトの名無しさん
2018/06/09(土) 17:03:33.87ID:Tjb3C0On 試したコードを晒せば修正してあげるよ^^
775デフォルトの名無しさん
2018/06/09(土) 18:02:05.59ID:54mp5fzV776773
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")
$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")
777773
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
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.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
}
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
}
779773
2018/06/12(火) 12:30:53.64ID:ekyc4Iri >>778
VBAに依存せず実行できました。感謝。
VBAに依存せず実行できました。感謝。
780デフォルトの名無しさん
2018/06/21(木) 19:07:26.37ID:K/kbKit1 windows10ですが
Get-ItemPropertyでLastWriteTimeを見てみると
エクスプローラで表示される更新日時と異なるファイルが有りました
更新日時の方が作成日時より前の日付になってるので
おそらく LastWriteTimeの方が正しい日付だと思います
これを訂正するためにPSからエクスプローラの更新日付を取得したいのですが
エクスプローラの更新日時がどこから来ているものかさっぱりわかりません
Get-ItemPropertyでLastWriteTimeを見てみると
エクスプローラで表示される更新日時と異なるファイルが有りました
更新日時の方が作成日時より前の日付になってるので
おそらく LastWriteTimeの方が正しい日付だと思います
これを訂正するためにPSからエクスプローラの更新日付を取得したいのですが
エクスプローラの更新日時がどこから来ているものかさっぱりわかりません
781デフォルトの名無しさん
2018/06/21(木) 19:25:07.20ID:UNnnYLs6 Utc?
782780
2018/06/21(木) 20:21:17.18ID:K/kbKit1 いくつかファイルを調べてみると、更新日時とLastWriteTimeの差が一週間離れているのも有るので
タイムゾーンの問題とは考えにくいです
よく見ると、作成日時もCreationTimeと10日くらいのずれが有りましたw
エクスプローラが詳細プロパティ以外の日付を参照してる意味が分かりません
windowsの強制メジャーアップデートで何度かクラッシュした影響でファイルが壊れてるのかも
タイムゾーンの問題とは考えにくいです
よく見ると、作成日時もCreationTimeと10日くらいのずれが有りましたw
エクスプローラが詳細プロパティ以外の日付を参照してる意味が分かりません
windowsの強制メジャーアップデートで何度かクラッシュした影響でファイルが壊れてるのかも
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】中国外務省報道官 高市首相発言撤回なければ「断固たる対抗措置」 [蚤の市★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… [BFU★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★2 [BFU★]
- 【速報】中国、水産物輸入停止と通達 「処理水」理由、日本政府へ ★7 [おっさん友の会★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★3 [ぐれ★]
- 【速報】中国、水産物輸入停止と通達 「処理水」理由、日本政府へ ★8 [おっさん友の会★]
- 高市早苗「つい言い過ぎた」公邸で一人ひきこもる😲 [861717324]
- お笑い芸人「発言の意図を国民に説明した方がいいのでは?」この程度の発言で袋叩きに遭う [931948549]
- 【高市有事】牛肉の対中輸出再開協議が中止wwwwwwwwwwwwwwww [834922174]
- 【👊専】ロケット🚀👊😅👊🚀パーンチww🏡
- 【悲報】ネトウヨ「今回の株価暴落は立憲岡田ショック!!!高市を追い詰めた岡田のせい」 [731544683]
- 日本人、ついに気づく「あれ、日本が対中国で取れる対抗措置ってなくない…?」 [931948549]
