我正在寻找一种在PowerShell脚本中编辑mp3文件信息(如艺术家,专辑等)的方法。
我找到了一种方法来获取.mp3文件所需的信息,但不知道如何修改它们。
$songs = Get-ChildItem $dir -Filter *.mp3;
$shell = new-object -com shell.application;
Foreach ($song in $songs) {
$shellfolder = $shell.namespace($dir);
$shellfile = $shellfolder.parsename($song);
$title = $shell.namespace($dir).getdetailsof($shellfile,21);
}
使用getDetailsOf(带21)我可以获得歌曲Title,但没有setDetailsOf存在,所以我不知道如何修改另一个歌曲的歌曲。
提前谢谢。
答案 0 :(得分:0)
如果您像我一样并且不喜欢使用库,这是我编写的一个非常简单的ID3v1函数,可以满足您的需求:
curl --silent --location https://rpm.nodesource.com/setup_8.x | bash
## Installing the NodeSource Node.js 8.x LTS Carbon repo...
## Inspecting system...
+ rpm -q --whatprovides redhat-release || rpm -q --whatprovides centos-release || rpm -q --whatprovides cloudlinux-release || rpm -q --whatprovides sl-release
+ uname -m
## Confirming "el6-x86_64" is supported...
+ curl -sLf -o /dev/null 'https://rpm.nodesource.com/pub_8.x/el/6/x86_64/nodesource-release-el6-1.noarch.rpm'
## Downloading release setup RPM...
+ mktemp
+ curl -sL -o '/tmp/tmp.eY4nFtJJtc' 'https://rpm.nodesource.com/pub_8.x/el/6/x86_64/nodesource-release-el6-1.noarch.rpm'
## Installing release setup RPM...
+ rpm -i --nosignature --force '/tmp/tmp.eY4nFtJJtc'
## Cleaning up...
+ rm -f '/tmp/tmp.eY4nFtJJtc'
## Checking for existing installations...
+ rpm -qa 'node|npm' | grep -v nodesource
## Run `sudo yum install -y nodejs` to install Node.js 8.x LTS Carbon and npm.
## You may also need development tools to build native addons:
sudo yum install gcc-c++ make
## To install the Yarn package manager, run:
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install yarn
使用完整的MP3文件路径和要更改的所有ID3V1属性来调用它:
sudo yum install -y nodejs
基本上,它将标题,艺术家等写入文件的最后128个字节。 我可能会添加对ID3v 2.3 的支持,该支持更加灵活,但与旧设备和软件的兼容性较差。检查GitHub以获取最新版本。