Собственно сабж.
Необходимо провести инвентаризацию уже имеющихся скриптов.
Есть вот такие мысли:
#!/bin/ksh
find / -name "*.ksh" | while read file; do
echo $file
cat $file | while read line;
do a=`echo $line | cut -c-1`;
if [[ $a = "#" ]]
then echo $line
else echo ';' ; break
fi
done;
done
У кого есть какие идеи?
я так понимаю, нужно найти все скрипты в системе? может, утилита "file" подойдёт.Например:
find / -type f -exec file {} \; | grep 'shell script'Ну и не стоит искать по всему корню, лучше указать каталоги, где действительно могут лежать ваши скрипты.
Думал про file.
Спасибо, предложение принято.
> find / -type f -exec file {} \; | grep 'shell script'А вот у vmware есть такие скрипты
#!/usr/bin/perl -w
# питсот строк перла
#!/bin/bash
echo blah-blah-blah
# питсот строк баша
> А вот у vmware есть такие скрипты
> #!/usr/bin/perl -w
> # питсот строк перла
> #!/bin/bash
> echo blah-blah-blah
> # питсот строк башаА как это работает? У них своя обработка шебанга?
> А как это работает? У них своя обработка шебанга?Шебанг обрабатывает "Ше", - ше видит знаки #!, форкается и экзекает то, что указано после них.
>> А как это работает? У них своя обработка шебанга?
> Шебанг обрабатывает "Ше", - ше видит знаки #!, форкается и экзекает то,
> что указано после них.Дык в классике он "видит знаки #!" только в первой строке.
Если оно по всему файлу их сканит - значит самопал^W импроувмент от vmWare :)
>>> А как это работает? У них своя обработка шебанга?
>> Шебанг обрабатывает "Ше", - ше видит знаки #!, форкается и экзекает то,
>> что указано после них.
> Дык в классике он "видит знаки #!" только в первой строке.
> Если оно по всему файлу их сканит - значит самопал^W импроувмент от
> vmWare :)Ну они ваще да, шайтан-гуру по скриптам, ещё те.
> У кого есть какие идеи?А на хрена?
>> У кого есть какие идеи?
> А на хрена?Когда продакшен система крутится с 2003 года и была на поддержке у 3-х аутсорсеров, руками разбирать весь жмых не то чтобы нет особого желания... а нормальный кукловод должен знать все нити своих даже самых замшелых кукол.
>>> У кого есть какие идеи?
>> А на хрена?
> желания...:)
Сначала mount чтобы выделить локальные фс, а потом действительно финдом и файлом. Но не затачивайся на шелл только, у тебя - дай догадаюсь - соляра, а там и перл и тсл были весьма в почёте :) питон вот редкость, да.
>>>> У кого есть какие идеи?
>>> А на хрена?
>> желания...
> :)
> Сначала mount чтобы выделить локальные фс, а потом действительно финдом и файлом.
> Но не затачивайся на шелл только, у тебя - дай догадаюсь
> - соляра, а там и перл и тсл были весьма в
> почёте :) питон вот редкость, да.На самом деле это AIX и там есть много чего и pl, и py, и ksh.
find + file - здорово, но performance у этого скрипта низкий.Скрипт оттачиваю, добавил проверку "используется ли в crontab".
> find + file - здорово, но performance у этого скрипта низкий.Аудит-с
> Скрипт оттачиваю, добавил проверку "используется ли в crontab".Быстро лукапнуть-с
Есть разница? С :)
>>> У кого есть какие идеи?
>> А на хрена?
> Когда продакшен система крутится с 2003 года и была на поддержке у
> 3-х аутсорсеров, руками разбирать весь жмых не то чтобы нет особого
> желания... а нормальный кукловод должен знать все нити своих даже самых
> замшелых кукол.и что? из конфигов действующих сервисов не ясно какие скрипты отрабатывают?
про остальное к павлину присоеденюсь: а нахрена?
>>>> У кого есть какие идеи?
>>> А на хрена?
>> Когда продакшен система крутится с 2003 года и была на поддержке у
>> 3-х аутсорсеров, руками разбирать весь жмых не то чтобы нет особого
>> желания... а нормальный кукловод должен знать все нити своих даже самых
>> замшелых кукол.
> и что? из конфигов действующих сервисов не ясно какие скрипты отрабатывают?
> про остальное к павлину присоеденюсь: а нахрена?Для общего развития.
>> про остальное к павлину присоеденюсь: а нахрена?
> Для общего развития.Я и так развитый. А делал приблизительно то же для бронирования задницы. Машина железная - пошуршит диском но ВСЁ соберёт, а я могу и пропустить. Иногда - нельзя. И всех делов.
>>> про остальное к павлину присоеденюсь: а нахрена?
>> Для общего развития.
> Я и так развитый. А делал приблизительно то же для бронирования задницы.
> Машина железная - пошуршит диском но ВСЁ соберёт, а я могу
> и пропустить. Иногда - нельзя. И всех делов.1) дебилизм не лечится
2) критерии определения скрипта какие? далее см. п.1