私は持っています:
/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