История изменений
Исправление Desmond_Hume, (текущая версия) :
Не, не получилось. У меня скрипт лежит в другой папке, он начал перебирать файлы из той папки, почему-то))), проверять на file тип. А почему, если был переход cd?) Вот, блин … вот такой скрипт был:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd $initial_folder
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
А, всё, увидел, я кавычки не поставил! … сейчас ещё раз попробую
А вот теперь работает. Забыл кавычки и слэш:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd "$initial_folder"
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder/${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
Исправление Desmond_Hume, :
Не, не получилось. У меня скрипт лежит в другой папке, он начал перебирать файлы из той папки, почему-то))), проверять на file тип. А почему, если был переход cd?) Вот, блин … вот такой скрипт был:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd $initial_folder
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
А, всё, увидел, я кавычки не поставил! … сейчас ещё раз попробую
А вот теперь работает. Забыл кавычки и слэш:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd "$initial_folder"
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder/${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
Исправление Desmond_Hume, :
Не, не получилось. У меня скрипт лежит в другой папке, он начал перебирать файлы из той папки, почему-то))), проверять на file тип. А почему, если был переход cd?) Вот, блин … вот такой скрипт был:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd $initial_folder
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
А, всё, увидел, я кавычки не поставил! … сейчас ещё раз попробую
Исправление Desmond_Hume, :
Не, не получилось. У меня скрипт лежит в другой папке, он начал перебирать файлы из той папки, почему-то))), проверять на file тип. А почему, если был переход cd?) Вот, блин … вот такой скрипт был:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd $initial_folder
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;
Исходная версия Desmond_Hume, :
Не, не получилось. У меня скрипт лежит в другой папке, он начала перебирать файлы из той папки, почему-то))). А почему, если был переход cd?) Вот, блин … вот такой скрипт был:
#!/bin/bash
now=$(date -d "today" +"%Y%m%d%H%M")
initial_folder="$HOME/Documents/Test Files/"
test_folder="$HOME/Documents/Test Files/test"
originalFiles_folder="$HOME/Documents/Test Files/original files/"
cd $initial_folder
for a in *
do
filetype_is=$(file "$a" | cut -d ":" -f 2 | cut -d " " -f 2)
if [ $filetype_is = "directory" ]; then
:
elif [ $filetype_is = "Unicode" ]; then
mv "$a" "$test_folder${a%}.$now"
elif [ $filetype_is = "ISO-8859" ]; then
iconv -f WINDOWS-1251 -t UTF-8 -o "$test_folder/${a%}.$now.converted" "$a"
else
:
fi
done
find "$initial_folder" -maxdepth 1 -type f -exec mv {} "$originalFiles_folder" \;