Apr 27, 2010 13:13
#создадим массив mass, элементами которого
#будут имена файлов с полными путями, учитывая пробелы и
#прочие некашерности
mass=()
while read -r -d $'\0'; do
mass+=("$REPLY")
done < <(find ~/ -name "*.txt" -print0 2>/dev/null)
#------------------------------------------------------------------
#выведем в стдоут элементы массива mass:
for file in "${mass[@]}"; do
echo "$file"
done
###################################################################
# а вот этот кривой скрипт полностью, по-моему, работает
###################################################################
#!/bin/bash
#set -x
files=()
while read -r -d $'\0'; do
files+=("$REPLY")
done < <(find /home/${LOGNAME}/downloads/test/ -name "*.cue" -print0 2>/dev/null)
func() { rm -f "${files[${x}]}" ; }
for x in {0..$((${#files[@]}-1)) } ; do
for y in {1..$((${#files[@]}-1)) } ; do
if [ $(diff -y --suppress-common-lines "${files[${y}]}" "${files[${x}]}" | wc -l) -eq 1 ] ; then func ;fi
done
done
скрипты