PowerShellを使って以下のことを実現したいです。
1.CSVファイルをメモ帳で開き手で更新したあとにPowerShellを使って”上書き保存”したい
2.”上書き保存”したあとに”閉じて”所定のフォルダに格納したい
いくつかコマンドレットを使って試してみたのですが保存されずに閉じます
<上書き保存>
Set-Content -Encoding Defalt XXX.csv "シート名","A1"
⇒保存されません
Add-Content "XXX.csv"
⇒次のパラメーターに値を入れてください:Value[0]
<閉じる>
$notepad = $null
⇒エラーになります
$notepad.close()
⇒エラーになります
超初心者の質問で申し訳ありませんが、どなたか教えていただけませんか。
https://qiita.com/DD51/questions/d95a05bdcc974be37aa9
以下ご対応ください。
https://teratail.com/help#posted-otherservice
ご指摘いただきありがとうございます。
申し訳ありませんでした。他社様のは削除いたしました。
そもそも何がしたいのかよくわかりません。
「上書き保存」などの言葉は一般に使われている日本語として正しく使われていますか?
自信が無いのであれば、なるべく冗長に誤解のない表現にした方が良いと思います。
また、どのような手順で作業しているのかもよくわかりません。
記号をなるべく廃して日本語で説明するのが良いと思います。
エラーメッセージを読めとか書けとかいうのは難しすぎるようなので諦めました。
コメントをいただきありがとうございます。
”上書き保存”というワードがいけなかったのですね。失礼しました。
CSVファイルの更新作業は手作業でおこなっていて、更新作業後に同ファイル名で保存して、ファイルを閉じることをPowerShellでおこないたいのですが伝わりますでしょうか。
作業手順は下記になります。
1.CSVファイルを開く(PowerShell)
Start-Process -FilePath "notepad" C:\~~~\XXX.csv
2.CSVファイル更新(手作業)
3.CSV保存(PowerShell)
4.CSV閉じる(PowerShell)
開くところまではわかります。
そこから先、何がしたいのかわかりません。
メモ帳で編集しているなら、Ctrl+S Alt+F4 で最後まで終わると思います。
コメントありがとうございます。
おっしゃるとおり保存~閉じるまで手作業でおこなえるのは理解しているのですが
続きの作業(設計中)があるのでPowerShellでの自動化を実現したいと思っております。
保存して閉じるところまでは手作業で行うのが最も適切だと思います。
閉じられたことを引き金に PowerShell で次の作業を進めたいというのであればわかりますが。
もしそうであれば、次のメソッドが使えるでしょう。
https://learn.microsoft.com/ja-jp/dotnet/api/system.diagnostics.process.waitforexit?view=net-8.0
もしくは Start-Process -Wait が使えます。
https://learn.microsoft.com/ja-jp/powershell/module/microsoft.powershell.management/start-process?view=powershell-7.3#parameters
メモ帳の「保存して終了」に必要な手数が多いというのであれば、それをカスタマイズできる別のテキストエディタを使うと良いでしょう。
コメントありがとうございました。またお手数をおかけいたしました。
次の作業手順も含めて参考にさせていただきます。
そもそも、手作業での作業が終わったことをどうやってスクリプトに伝えようと思っていますか?
ご連絡ありがとうござぃます。
後続の作業(設計中)があります。PowerShellでのメモ帳を必要としています。
> そもそも、手作業での作業が終わったことをどうやってスクリプトに伝えようと思っていますか?
については、全く考えてなかったと言うことでしょうか???
繰り返しの返答で恐縮ですが、更新作業はPowerShellでは完結できないので手作業になるのですが、その後の「保存」「閉じる」作業をPowerShellでおこないたいのです。説明になっておりますでしょうか。
なっていませんが、私はすでに質問の理解とコンピューターの使い方の説明を諦めています。
> 説明になっておりますでしょうか。
いいえ。
あなたは、私の質問と無関係に、最初から質問文に書いてあることを繰り返し書いているだけです。
質問文に書いてあることは、みなさん読んでるので、繰り返し書くのは無意味です。
> そもそも、手作業での作業が終わったことをどうやってスクリプトに伝えようと思っていますか?
という、私の質問の意味が理解できないのであれば、そう書くべきですね。
理解できていますか?

回答1件
あなたの回答
tips
プレビュー