Bash Заклинания: различия между версиями

Материал из Artem Aleksashkin's Wiki
Перейти к навигации Перейти к поиску
Строка 6: Строка 6:
<pre>
<pre>
ls -1 *.zip | while read LINE; do dir=`echo $LINE | sed -e 's/.zip$//g'`; mkdir -p "$dir"; unzip "$LINE" -d "$dir"; done;
ls -1 *.zip | while read LINE; do dir=`echo $LINE | sed -e 's/.zip$//g'`; mkdir -p "$dir"; unzip "$LINE" -d "$dir"; done;
ls -1 | awk -F\. '{print $1}' | while read LINE; do mkdir -p "../code/$LINE"; tar xvf "$LINE.tar.bz2" -C "../code/$LINE"; done;
</pre>
</pre>



Версия от 20:53, 28 января 2023

Bash - мощный инструмент - набрал заклинание и в космос

Извлечь все файлы ZIP в каждую папку

ls -1 *.zip | while read LINE; do dir=`echo $LINE | sed -e 's/.zip$//g'`; mkdir -p "$dir"; unzip "$LINE" -d "$dir"; done;

ls -1 | awk -F\. '{print $1}' | while read LINE; do mkdir -p "../code/$LINE"; tar xvf "$LINE.tar.bz2" -C "../code/$LINE"; done;

Переименовать все файлы в текущем каталоге в числовое имя с ведущими нулями

i=0;ls -1t | while read LINE; do i=$((i+1));filename=`echo $LINE`;extension="${filename##*.}";newfilename=$(printf "%06d" $i); mv "$filename" "$newfilename.$extension"; done;

Создать базу с мд5 хэшами мп3 файлов

find . -name '*.mp3' | while read i; do echo `md5sum "${i}" | awk '{print $1}'`" => ${i}" >> md5s;done;

Создать базу с рейтингами мп3 файлов из программы трактор про

find . -name '*.mp3' | while read i; do rating=`eyeD3 "${i}" 2>/dev/null | grep rating | awk -F\[ '{print $3}'  | awk -F\] '{print $1}' | awk '{print $2}'`;if [ ! -z "$rating" ]; then echo "${rating} => ${i}" >> ratings;fi;done;
cat ./ratings  | grep '255 => ' | sed -e 's/255 => //g' | while read i; do cp "${i}" ./5star/; done;