LINUX.ORG.RU

История изменений

Исправление Desmond_Hume, (текущая версия) :

Получил работающий код. Хотел сделать переменной путь к папке, но не получилось, вечно эти пробелы мешают. Но с указанием самого пути и экранирования пробела - получилось. Вот:

#!/bin/bash

for a in /home/user/Documents/Test\ Files/*
	do
		function filetype_is {
		       file "$a" |  cut -d ":" -f 2 | cut -d " " -f 2
		}	
		if [ $(filetype_is) = "directory" ]; then
			:
		elif [ $(filetype_is) = "Unicode" ]; then			
			mv "$a" "/home/user/Documents/Test Files/test/"
		elif [ $(filetype_is) = "ISO-8859" ]; then
			iconv -f WINDOWS-1251 -t UTF-8 -o "${a%}.converted" "$a" && mv "${a%}.converted" /home/user/Documents/Test\ Files/test/ 
		else 
			:
		fi
	done

find /home/user/Documents/Test\ Files/ -maxdepth 1 -type f  -exec mv {} /home/user/Documents/Test\ Files/original\ files/ \;

Исходная версия Desmond_Hume, :

Получил работающий код. Хотел сделать переменной путь к папке, но не получилось, вечно эти пробелы мешают. Но с указанием самого пути и экранирования пробела - получилось. Вот:

#!/bin/bash

for a in /home/user/Documents/Test\ Files/* ;
	do
		function filetype_is {
		       file "$a" |  cut -d ":" -f 2 | cut -d " " -f 2
		}	
		if [ $(filetype_is) = "directory" ]; then
			:
		elif [ $(filetype_is) = "Unicode" ]; then			
			mv "$a" "/home/user/Documents/Test Files/test/"
		elif [ $(filetype_is) = "ISO-8859" ]; then
			iconv -f WINDOWS-1251 -t UTF-8 -o "${a%}.converted" "$a" && mv "${a%}.converted" /home/user/Documents/Test\ Files/test/ 
		else 
			:
		fi
	done

find /home/user/Documents/Test\ Files/ -maxdepth 1 -type f  -exec mv {} /home/user/Documents/Test\ Files/original\ files/ \;