Я собрал быстрый bash-скрипт, надеюсь, он сделает то, о чем вы просите. Сохраните его в файл, например sort.sh
, а затем выполните его, например ./sort.sh kick
или./sort.sh snare
(термин поиска в файловом пространстве ). Он найдет файлы на основе переданного вами значения, а затем создаст пронумерованные каталоги, такие как kick_1
и kick_2
и т. д. Кроме того, он оставит индексный файл в каждом каталоге со всеми именами файлов, если хотите.
#!/bin/bash
declare -i numFiles
declare -i numDirs
mkdir./temp
## Find files and copy to./temp directory
find -E /Users/bot/Documents/_Sound\ Library -regex ".*($1).*" -exec cp {}./temp/ \;
## Get total number of files found and divide by 128 (+1 to allow for the final directory)
numFiles=`ls./temp | wc -l`
numDirs=$numFiles/128+1
## All the file moving and directory naming
for i in $(seq 1 $numDirs); do
mkdir $1_$i;
ls./temp/ |head -128 > $1_$i/$1_$i.index
for x in `cat $1_$i/$1_$i.index`; do mv./temp/$x $1_$i; done
## Uncomment if you want to remove the index file
#rm $1_$i/$1_$i.index
done
## Remove temp directory
rm -rf./temp
Для CentOS 6.10 следующий файл содержит конфигурацию цвета для SETCOLOR _SUCCESS, SETCOLOR _FAILURE,...
/etc/sysconfig/init
Пример:
# color => new RH6.0 bootup
# verbose => old-style bootup
# anything else => new style bootup without ANSI colors or positioning
BOOTUP=color
# column to start "[ OK ]" label in
RES_COL=60
# terminal sequence to move to that column. You could change this
# to something like "tput hpa ${RES_COL}" if your terminal supports it
MOVE_TO_COL="echo -en \\033[${RES_COL}G"
# terminal sequence to set color to a 'success' color (currently: green)
SETCOLOR_SUCCESS="echo -en \\033[0;32m"
# terminal sequence to set color to a 'failure' color (currently: red)
SETCOLOR_FAILURE="echo -en \\033[0;31m"
# terminal sequence to set color to a 'warning' color (currently: yellow)
SETCOLOR_WARNING="echo -en \\033[0;33m"
# terminal sequence to reset to the default color.
SETCOLOR_NORMAL="echo -en \\033[0;39m"
Возможно, вы сможете использовать информацию и имена, чтобы найти нужные файлы в вашей системе:)
Эти определения содержатся в /etc/init.d/functions
.
Этот скрипт пытается найти источник в /etc/sysconfig/init
, который содержит соответствующие определения цветов:
SETCOLOR_SUCCESS="echo -en \\033[0;32m"
SETCOLOR_FAILURE="echo -en \\033[0;31m"
SETCOLOR_WARNING="echo -en \\033[0;33m"
SETCOLOR_NORMAL="echo -en \\033[0;39m"
... в то время как исходный файл /etc/init.d/functions
определяет функции для различных сообщений о состоянии, например:
echo_success() {
[ "$BOOTUP" = "color" ] && $MOVE_TO_COL
echo -n "["
[ "$BOOTUP" = "color" ] && $SETCOLOR_SUCCESS
echo -n $" OK "
[ "$BOOTUP" = "color" ] && $SETCOLOR_NORMAL
echo -n "]"
echo -ne "\r"
return 0
}
... поэтому, если вы хотите что-то испускать вместо OK
, вы должны отредактировать этот оператор echo
, а если вы хотите изменить цвета, вы должны отредактировать соответствующие определения в /etc/sysconfig/init
; если у вас нет этого файла, обратите внимание, что сценарий functions
сам определит цвета (в предложении else
, где он проверяет наличие файла init
).