質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

Q&A

0回答

255閲覧

Powershellを使ってWindowsファイルにタグを付ける方法が知りたい

yamazaki_

総合スコア3

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

0グッド

0クリップ

投稿2024/11/12 14:26

編集2024/11/16 11:04

実現したいこと

Powershellを使ってWindowsファイル(画像)にタグを付ける

発生している問題・分からないこと

PowerShellで
$folder.getDetailsOf($file,18)
でファイルの詳細プロパティのタグ付けができることは調べてわかったのですが、逆にPowershell内の文字列をタグに書き込む方法が調べても全く出てこなかったので、知ってる方いらっしゃればご教示いただきたいです。

動作環境はWindows11のPowershellです。

該当のソースコード

特になし

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

getDetailsOf以外にタグに関与できそうなものが見つからなかった

補足

完全な解決とは言い難いですが、代替の方法を見つけたのでコメントの方に記述しました。そちらの修正点含めご存知の方いらっしゃればご教示お願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2024/11/14 07:25

マルチポストですね。 [Powershellを使ってWindowsファイルにタグを付ける方法が知りたい - Qiita] https://qiita.com/taiki-yamazaki/questions/1b9940b19895dbabc470 ご存じなかったのだと思いますが、マルチポストは一般的に推奨される行為ではありません。teratailも同様ですので、一応挙げておきます。※非推奨と言うことで禁止ではないのですが、一般的には嫌がられる行為です。 [他のサービスにも質問投稿をしたい(してしまった)] https://teratail.com/help#posted-otherservice
yamazaki_

2024/11/14 08:50 編集

それは重々承知しているのですが、解決を急ぎたかったものの全く反応がなかったのでどちらにも上げさせていただきました。ただそれでも回答が来ないところを見ると解決は難しいのかなと感じています。なのであと2日ほど様子を見て片方は閉じようと思います。 マルチポストの対応方法までは知らなかったので、ご指摘の通り対応させていただきます。ありがとうございます。
dodox86

2024/11/14 10:21

実は興味がわいた質問だったので回答をしようと調べていたのですが、ファイルの「タグ」に関して、(読み取りではなく)書き込み自体はできるものの、簡単にはいかない(≒PowerShell標準の機能ではほぼ不可能)ことだったため、回答をせずに様子見をしていました。で、ふとQiitaを覗いたらマルチポストだった、と言う経緯です。 タグはJPEGファイル等の特別なファイルにのみ追加できるプロパティ(属性情報)で、書き込むにはそのファイルとWindows自体の機能(COM)の理解が必要で、簡単ではないようです。 以下はStack Overflowで見つけた、関連するQ&Aです。この内容を読み解けないと自力で解決するのは難しいでしょう。 [How to set extended file properties?] https://stackoverflow.com/questions/5337683/how-to-set-extended-file-properties もちろん、マルチポストされた先のQiita含め、他の回答者の方で解決策を提示できる方はいらっしゃるかもしれませんが。
yamazaki_

2024/11/16 09:30

なるほど…やはり難しそうですね。powershell自体最近手を出し始めたばっかりで技術的な知識は全くと言っていいほどないのでC#の解読はもっと厳しそうです…一旦タグの代わりに名称を変えるようにしつつ教えていただいたリンク先の情報も含めできる範囲で試してみようと思います。ありがとうございます。
yamazaki_

2024/11/16 10:58

exiftoolを用いて、ps1内に . .\exiftool\exiftool.exe -overwrite_original_in_place -XPKeywords="タグ名" -m "ファイルパス" と記述(XPKeywordsの代わりにSubjectでも可)して実行すると、タグを付与することができました。 ただ、 ・元々タグが付いている場合それが消えてしまう(一度取得して文字列結合して付与し直さないといけない)のと、 ・私がタグを付与したい理由がファイルの何らかが壊れているなどで処理に失敗したファイルに識別用のタグをつけたい、というものなので、そう言ったファイルはそもそもexiftoolが機能しない可能性があるのと、 ・付与処理自体に時間がかかる のであまり解決とは言い難いです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問