Hack BBS

[全部のスレッド一覧][新規投稿][記事の削除・変更] [Home Page]

返信投稿はタイトルのリンクをクリックして下さい
スレッド【No.3802】の中の記事をすべて表示しています

【No.3802】のスレッド
06/04/03(月) 03:09:26 投稿者[へいはち] [No.3802]のスレッド内
【No.3802】 タイトル[ファイルを消した番組をリストから消すスクリプト、の修正] この記事がスレッドの最初です
 「ファイルを消した番組をリストから消すスクリプト」を使わせていただいてます。
 ファイルエクスプローラーから直接リネームや削除などをよく使いますので。
 ただ問題がありまして。
 シフトJISのファイル名を扱っている関係上、ファイル名中に「\」が含まれている番組を扱うと、sedの正規表現置換処理中に文字化けが起きて、ファイルが存在するのに、存在しないことになり、誤動作して、消してしまいます。
 そこでこんなふうに改良しました。

−−−−−−−−−−−−−−−−−−−−−
#!/bin/sh
TMPFILE=/tmp/remove_list.$$
/usr/local/PCast/DbAcRap GetPlListBottom | nkf -e > $TMPFILE

sed -n -e 's/^.*Index=\([0-9]*\)[ ]*FileName=\(.*\)/\1 \2/p' $TMPFILE |
while read Index FileName
do
if [ ! -f `echo $FileName | nkf -s` ]
then
echo $FileName not found | nkf -e
DataKey=`sed -n -e 's/^.*Index='$Index'[ ]*DataKey=\(.*\)/\1/p' $TMPFILE`
/usr/local/PCast/DbAcRap DelPlKey\{$DataKey\}
fi
done
rm $TMPFILE
−−−−−−−−−−−−−−−−−−−−−

 一旦、テンポラリをEUCにて保存したあとで、sedを通してから、ファイルチェックの際にS-JISに戻してやるようにしています。

06/04/03(月) 03:13:00 投稿者[へいはち] [No.3802]のスレッド内
【No.3803】 タイトル[Re: ファイルを消した番組をリストから消すスクリプト、の修正] 【No.3802】に対する返信
掲示板の仕様上、タブとスペースとがすべて消えてしまっていますが……。
[]内は、半角スペース+TAB、です。