Похоже я с утра не правильно понял задачу, и скрипт наоборот удалял те файлы которые в плейлисте есть, а которых нет оставлял, ну да ладно, вот, точно то что вам надо, проверяет плейлист, если файл есть и доступен на чтение он его оставит, если файла нет или он не доступен на чтение, он его удаляет.#!/bin/bash # ls -1 *.MP3 >> tmp CHE="#EXTINF" while read LINE1 do COUNTER=0 while read LINE do CH=`echo "$LINE"|awk '{split($0,a,": "); print a[1]}'` if [ "$CH" == "$CHE" ] then NAME=`echo "$LINE"|awk '{split($0,a,": "); print a[2]}'` if [ "$LINE1" == "$NAME" ] then COUNTER=$[$COUNTER+1] fi fi done < $1 if [ "$COUNTER" -ge 1 ] then echo "Файл $LINE1 в плейлисте и существует" if [ -r "$LINE1" ] then echo "Файл $LINE1 доступен" else rm -f $LINE1 echo "Файл $LINE1 был не доступен для чтения" fi else rm -f $LINE1 echo "Файл $LINE1 не в плейлисте и удален" fi done < tmp rm -f tmp
|