私が使うgポッダーポッドキャストをダウンロードします。
例えば、私はポッドキャストをダウンロードしましたエコノトークこれが最初のポッドキャストです:
gPodder によると、このポッドキャストは「2006-03-16」に「リリース」されたそうです。
yyyy-mm-dd
この情報 ( 、"2006-03-16") をファイル名の先頭またはファイルのメタデータのどこかに追加するにはどうすればよいですか?
私の目標は、この特定のポッドキャストだけでなく、ダウンロードしたすべてのポッドキャストに対して同じことを行うことです。
現在、このyyyy-mm-dd
情報はファイルのメタデータのどこにも表示されないようです。
答え1
gPodderにはすでに組み込み拡張機能これはこれを実行します。含まれているのでダウンロードする必要はありません。
- クリックgポッダー>環境設定。
- クリック拡張機能タブ。
- の横にあるボックスにチェックを入れてくださいダウンロード後にエピソードの名前を変更する。
- クリック設定を編集設定ウィンドウの右下にあるボタンをクリックします。
- の横にあるボックスにチェックを入れてくださいextensions.rename_download.add_sortdate。
- 残りのウィンドウを閉じます。
今後ダウンロードされるすべてのポッドキャストのファイル名には、「年-月-日-"。
オプションで、extensions.rename_download.add_podcast_titleファイル名の先頭にタイトルも追加します。
次の PowerShell を使用して既存のファイルの名前を変更することもできます。
#
# PrependDateToPodcasts.ps1
#
Param (
[Parameter(Mandatory=$true, Position=0)][string]$FeedURL,
[Parameter(Mandatory=$true, Position=1)][string]$Directory,
[Parameter()][switch]$DryRun = $false
)
$XML = Invoke-WebRequest $FeedURL
$Podcasts = ($XML | Select-Xml "rss/channel/item").Node
$Podcasts | ForEach-Object {
$Filename = Split-Path $_.enclosure.url -Leaf
$Date = [datetime](($_.pubDate -replace " [A-Z]{3}$", "") -replace "^\w{3}", "") | Get-Date -Format "yyyy-MM-dd"
$FilePath = Join-Path $Directory $Filename
$FilenameNew = "${Date} - ${Filename}"
if (Test-Path $FilePath) {
Write-Host "Renaming `"${Filename}`" to `"${FilenameNew}`"."
if (!$DryRun) {
Rename-Item $FilePath $FilenameNew
}
}
}
# Preview changes before actually running.
.\PrependDateToPodcasts.ps1 "http://files.libertyfund.org/econtalk/EconTalk.xml" "C:\path\to\gPodder\Downloads\EconTalk" -DryRun
# Rename for real.
.\PrependDateToPodcasts.ps1 "http://files.libertyfund.org/econtalk/EconTalk.xml" "C:\path\to\gPodder\Downloads\EconTalk"