我有:
/home/wms/mp3/
和
/home/wms/tmp/
在 ~/tmp 我的脚本中:
#!/bin/bash
br=64
for a in "$1"*.mp3 ;
do ffmpeg -i "$a" -ar 44100 -ab $br "$br""_tmp/${a%.*} ["$br"].mp3" ; done
我愿意:
/home/wms/tmp/./script.sh /home/wms/mp3/
我如何处理 1 美元?
因为“@1”与/home/wms/mp3/first1一致
${a%.*} 剪切扩展文件
但路径不正确:仅当我在 ~/mp3 内运行此脚本时才会运行
答案1
我使用 basename $a 提取文件名,然后使用临时目录构建路径:
#!/bin/bash
br=64
mkdir -p _tmp
for a in "$1"*.mp3 ; do
aux=$(basename ${a})
ffmpeg -i "$a" -ar 44100 -ab $br "$br""_tmp/${aux%.*}_["$br"].mp3"
done