Re: Скрипт на bash
а можно и так: #!/usr/local/bin/php -f bla-bla-bla В Суб, 16/06/2007 в 23:05 +0300, rvadmin пишет: > Простой пример /usr/local/bin/php -f путь к скрипту > в переменных $_SERVER['argv'] все аргументы > > Лучше засунуть его в отдельный файл, например > #!/bin/bash > /usr/local/bin/php -f /path/to/script.php $# > > И запускать этот файл с аргументами > > Это я так, для справки :) > > -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Strange_V wrote: > Alexander Kraev пишет: > > То-то и оно, в общем выхода три: > > > > 1. Извращатся с telnet или netcat(nc), писать обработчики и прочее. > > Незнаю насколько это удобно и реализуемо. > > 2. Использовать /dev/tcp вроде этого: > > > http://thesmithfam.org/blog/2006/05/23/bash-socket-programming-with-devtcp-2/ > > , но опять же писать обработчики которые уже написаны в других языках. > > 3. бросить идею с bash и использовать perl. > > > > и вообще не морочить людям голову, google хорошо ощет по "bash socket", > > "bash telnet", "bash netcat" ;) > > и 4, использовать PHP из под консоли, для меня лучший вариант.. > Согласен, на консольном php самый нормальный вариант ( во всяком случае для меня :) ) Простой пример /usr/local/bin/php -f путь к скрипту в переменных $_SERVER['argv'] все аргументы Лучше засунуть его в отдельный файл, например #!/bin/bash /usr/local/bin/php -f /path/to/script.php $# И запускать этот файл с аргументами Это я так, для справки :) -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Alexander Kraev пишет: > То-то и оно, в общем выхода три: > > 1. Извращатся с telnet или netcat(nc), писать обработчики и прочее. > Незнаю насколько это удобно и реализуемо. > 2. Использовать /dev/tcp вроде этого: > http://thesmithfam.org/blog/2006/05/23/bash-socket-programming-with-devtcp-2/ > , но опять же писать обработчики которые уже написаны в других языках. > 3. бросить идею с bash и использовать perl. > > и вообще не морочить людям голову, google хорошо ощет по "bash socket", > "bash telnet", "bash netcat" ;) и 4, использовать PHP из под консоли, для меня лучший вариант.. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
g - значит во всей строке On Thursday 03 May 2007, Ilya Petrov wrote: > В Пнд, 30/04/2007 в 10:46 +0400, Attid пишет: > > 29.04.07, 16:20, Alexander Kraev : > > >cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > > > > > autoserial.conf.tmp > > > > >mv autoserial.conf.tmp autoserial.conf > > > > > >должно сработать, не проверял. > > > > ну почти только остальные строчки мне надо оставить =) > > курить доку по sed. делается одной командой: > sed 's%что%на что%g' -i /файл.где-заменять. > вместо % может быть любой знак. g - значит по всему файлу. -- This e-mail message is for the sole use of the intended recipient(s) and contains confidential and/or privileged information belonging to Five 9, Inc. or its customers or partners. Any unauthorized review, use, copying, disclosure or distribution of this message is strictly prohibited. If you are not an intended recipient of this message, please contact the sender by reply e-mail and destroy all soft and hard copies of the message and any attachments. Thank you for your cooperation. -- -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
В Пнд, 30/04/2007 в 10:46 +0400, Attid пишет: > 29.04.07, 16:20, Alexander Kraev : > > >cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > > autoserial.conf.tmp > >mv autoserial.conf.tmp autoserial.conf > > >должно сработать, не проверял. > > ну почти только остальные строчки мне надо оставить =) курить доку по sed. делается одной командой: sed 's%что%на что%g' -i /файл.где-заменять. вместо % может быть любой знак. g - значит по всему файлу. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
On Wed, 02 May 2007 17:34:57 +0300 Ilya Petrov wrote: IP> вот я долго на эту тему спорил с преподом по информатике :)мол, IP> изначально в досе (уже бугога) все архиваторы были со сжатием. Вот эта путаница понятий архивирования и сжатия от досов всяких и идёт (точнее от софта под досы, где да, действительно, архиваторов без сжатия просто не было -- отсюда и искажение в понимании термина). -- С уважением, А.В.Коротков, mailto:[EMAIL PROTECTED] -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
tar - create tape archives тут можно долго спорить,для меня ключевой момент что это именно tape. то есть когда он создавался он возможно и не имел функциональности заворачивать все в файл а просто на ленту писал. то есть, я думаю что когда он создавался никто и не думал использовать его в качесте инструмента для создания тарболов/архивов. а потом все просекли что можно tar зипануть и все и вообще удобно. так что, спорить можно, но та ли это вещь чтобы спорить? 02.05.07, Ilya Petrov <[EMAIL PROTECTED]> написал(а): В Вск, 29/04/2007 в 00:49 +0500, Aleksey Korotkov пишет: > Вы путаете архивирование со сжатием. tar именно архиватор. > Архивирование вовсе не подразумевает обязательного сжатия. вот я долго на эту тему спорил с преподом по информатике :) мол, изначально в досе (уже бугога) все архиваторы были со сжатием. в итоге зачет я получил через месяц после сессии -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
В Вск, 29/04/2007 в 00:49 +0500, Aleksey Korotkov пишет: > Вы путаете архивирование со сжатием. tar именно архиватор. > Архивирование вовсе не подразумевает обязательного сжатия. вот я долго на эту тему спорил с преподом по информатике :) мол, изначально в досе (уже бугога) все архиваторы были со сжатием. в итоге зачет я получил через месяц после сессии -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
On 5/1/07, Munko O. Bazarzhapov <[EMAIL PROTECTED]> wrote: > Уже 3-ий день не могу написать скрипт который бы удалял в папке все > файлы старее чем 7 дней > каталог = /backup/sql/ > от man find уже голова пухнет > помогите кто чем может Здесь обсуждалась похожая тема: http://www.linuxquestions.org/questions/showthread.php?t=462290 -- Dmitry Mityugov, St. Petersburg, Russia I ignore all messages with confidentiality statements "We live less by imagination than despite it" - Rockwell Kent, "N by E" -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
"Alexander Kraev" <[EMAIL PROTECTED]> writes: >> Есть ли возможность из в bash работать с сокетами? Читал Advanced >> Bash-Scripting Guide Искусство программирования на языке сценариев >> командной оболочки, там не рекомендуется, но все же можно? man bash /dev/tcp/host/port из bash на Debian был выкинут, тк. есть утилита netcat и, конечно же, более мощные скриптовые языки. -- Alexander Sashnov -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Уже 3-ий день не могу написать скрипт который бы удалял в папке все файлы старее чем 7 дней каталог = /backup/sql/ от man find уже голова пухнет помогите кто чем может -- Мунко О. Базаржапов mailto:[EMAIL PROTECTED] ICQ UIN: 169-245-258 -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
ну я готового и не просил, а чтоб думать надо базовые знания получить.неужеле я успел проявить себя как лентяй ? =/ну ладно, теперь хочу постичь еще одну истинукак в скрипты запихивают бинарник ? например инстолятов кроссовер офиса . >30.04.07, 18:03, Alexander Kraev :>>Александр Краев не рисует, а дает намек, чтобы вы наконец-то думать сами начали ;)>Удачи. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Александр Краев не рисует, а дает намек, чтобы вы наконец-то думать сами начали ;) Удачи. 30.04.07, Attid <[EMAIL PROTECTED]> написал(а): пойду потестю что там Alexander Kraev нарисовал. -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
30.04.07, 14:16, Евсюков Денис <[EMAIL PROTECTED]>: > Не понятен смысл первой строки... Зачем вы берете только строки, > содержащие данную подстроку и кидаете в файл, если затем из этого файла > опять фильтруете строки по тому же принципу? В итоге вы просто берете все > строки данного файла... Первую строку можно смело убирать... > И что значит "изменять порядок внутри"??? Если использовать вторую и > третью строку вашего скрипта, порядок строк менять не будет... зачача во всех строках содержащих 16950/954 заменить 115200 на 460800 я не говорил что строки не содержащие 16950/954 можно удалить, их надо оставить ! теперь смотрим что я делаю > > cat autoserial.conf | grep "16950/954" -v > autoserial.conf.tmp сохроняю все строки НЕ содержащие "16950/954" > > cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' >> > > autoserial.conf.tmp в ОСТАЛЬНЫХ меняю 115200 на 460800 > > mv autoserial.conf.tmp autoserial.conf это понятно пойду потестю что там Alexander Kraev нарисовал. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
тогда делаете: for i in `cat autoserial.conf`; do if [ grep "16950/954" $i ... что-то вроде, не помню как в баш ]; then sed ... >> endif echo $i >> done что-то вроде, там сами разберетесь. 2007/4/30, Attid <[EMAIL PROTECTED]>: 29.04.07, 16:20, Alexander Kraev : >cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > autoserial.conf.tmp >mv autoserial.conf.tmp autoserial.conf >должно сработать, не проверял. ну почти только остальные строчки мне надо оставить =) в моем случае я могу сделать так cat autoserial.conf | grep "16950/954" -v > autoserial.conf.tmp cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' >> autoserial.conf.tmp mv autoserial.conf.tmp autoserial.conf но а если нельзя изменять порядок внутри ?? есть выход ? -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Не понятен смысл первой строки... Зачем вы берете только строки, содержащие данную подстроку и кидаете в файл, если затем из этого файла опять фильтруете строки по тому же принципу? В итоге вы просто берете все строки данного файла... Первую строку можно смело убирать... И что значит "изменять порядок внутри"??? Если использовать вторую и третью строку вашего скрипта, порядок строк менять не будет... On Mon, 30 Apr 2007 11:46:17 +0500, Attid <[EMAIL PROTECTED]> wrote: > 29.04.07, 16:20, Alexander Kraev : > >> cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > >> autoserial.conf.tmp >> mv autoserial.conf.tmp autoserial.conf > >> должно сработать, не проверял. > > ну почти только остальные строчки мне надо оставить =) > > в моем случае я могу сделать так > > cat autoserial.conf | grep "16950/954" -v > autoserial.conf.tmp > cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' >> > autoserial.conf.tmp > mv autoserial.conf.tmp autoserial.conf > > но а если нельзя изменять порядок внутри ?? есть выход ? > -- Отправлено M2, революционной почтовой программой Opera: http://www.opera.com/mail/ -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
29.04.07, 16:20, Alexander Kraev :>cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > autoserial.conf.tmp>mv autoserial.conf.tmp autoserial.conf>должно сработать, не проверял.ну почти только остальные строчки мне надо оставить =)в моем случае я могу сделать такcat autoserial.conf | grep "16950/954" -v > autoserial.conf.tmp cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' >> autoserial.conf.tmp mv autoserial.conf.tmp autoserial.conf но а если нельзя изменять порядок внутри ?? есть выход ? -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
cat autoserial.conf | grep "16950/954" | sed 's/115200/460800/g' > autoserial.conf.tmp mv autoserial.conf.tmp autoserial.conf должно сработать, не проверял. 2007/4/29, Attid <[EMAIL PROTECTED]>: не дадим теме умереть =) а как делается такое ? есть файлик autoserial.conf в нем строки /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test /dev/ttyS4 uart 16950/954 port 0xb400 irq 177 baud_base 115200 spd_normal skip_test /dev/ttyS5 uart 16950/954 port 0xb408 irq 177 baud_base 115200 spd_normal skip_test надо найти все строки содержащие 16950/954 и в них заменить 115200 на 460800 ну и сохранить все на место =) -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
не дадим теме умереть =) а как делается такое ? есть файлик autoserial.conf в нем строки /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test /dev/ttyS4 uart 16950/954 port 0xb400 irq 177 baud_base 115200 spd_normal skip_test /dev/ttyS5 uart 16950/954 port 0xb408 irq 177 baud_base 115200 spd_normal skip_test надо найти все строки содержащие 16950/954 и в них заменить 115200 на 460800 ну и сохранить все на место =) -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
26.04.07, 19:56, Dmitry Stropaloff <[EMAIL PROTECTED]>: > И сам скрипт: ой для таких скриптов мне еще не один кг манов скурить прийдется =) буду разбираться =) добавил в избранное ;) сенкс -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
26.04.07, 19:07, Sergei A. Beilin <[EMAIL PROTECTED]>: > В сообщении от 26 апреля 2007 Attid написал(a): > > хочу скриптик установленых пакетов в системе у которых в зависимотях ничего > > нет. смотрел на dpkg но так и не понял как вытащить из него это все. > "apt-get autoremove" не устроит? ;-) нет оно не скажет мне что у меня есть vim который обновляется нет нет, а я его не разу не запускал. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
26.04.07, 18:18, Andrey Teleshov <[EMAIL PROTECTED]>: > А вот debfoster и deborphan в убунте есть? Они как раз для этого... > ЗЫ: "всё уже украдено до нас" (с) оно =) только интерфейс у debfoster ужасный моглибы что-нибуть поинтереснее придумать. спасибо. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
On Fri, 27 Apr 2007 18:27:28 +0400 Alexander Kraev wrote: AK> Вообще-то он создавался для работы с лентой. Да и как архиватор он AK> никакой без gzip. Делать тарболы - да, что далеко не архим Вы путаете архивирование со сжатием. tar именно архиватор. Архивирование вовсе не подразумевает обязательного сжатия. -- С уважением, А.В.Коротков, mailto:[EMAIL PROTECTED] -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
То-то и оно, в общем выхода три: 1. Извращатся с telnet или netcat(nc), писать обработчики и прочее. Незнаю насколько это удобно и реализуемо. 2. Использовать /dev/tcp вроде этого: http://thesmithfam.org/blog/2006/05/23/bash-socket-programming-with-devtcp-2/ , но опять же писать обработчики которые уже написаны в других языках. 3. бросить идею с bash и использовать perl. и вообще не морочить людям голову, google хорошо ощет по "bash socket", "bash telnet", "bash netcat" ;) 28.04.07, Strange_V <[EMAIL PROTECTED]> написал(а): Написано немного не так: "Для каких задач неприменимы скрипты * для ресурсоемких задач, особенно когда важна скорость исполнения (поиск, сортировка и т.п.) ... ... ... * когда необходимо выполнять обмен через порты ввода-вывода или сокеты Если выполняется хотя бы одно из вышеперечисленных условий, то вам лучше обратиться к более мощным скриптовым языкам программирования, например Perl, Tcl, Python, Ruby или к высокоуровневым компилирующим языкам -- C, C++ или Java. >>>Но даже в этом случае, создание прототипа приложения на языке shell может существенно облегчить разработку<<<." Вот через последние предложение я и не понял может он иль нет.. Интересует простая вещь, например telnet smtp.mail.ru 25 HELO name (прочитать ответ) ... другие команды для отправки почты (прочитать их ответы) ... QUIT Это скорее чтобы показать возможность, чем для реальной работы (делал на PHP но это немного не то) -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
> В документации написано что bash умеет работать с сокетами, но мы вам этого > не рекомендуем? > Покажите мне эту строчку. Вызвать любую программу, которая откроет > сокет, прочитает или еще из него, а после вывод записать в > переменную bash, ну или написать в bash для этого функцию, опять же > с вызовом внешних программ - это все на что способен bash. Или я > чего-то не знаю, покажите мне эту строчку в документации. Написано немного не так: "Для каких задач неприменимы скрипты * для ресурсоемких задач, особенно когда важна скорость исполнения (поиск, сортировка и т.п.) ... ... ... * когда необходимо выполнять обмен через порты ввода-вывода или сокеты Если выполняется хотя бы одно из вышеперечисленных условий, то вам лучше обратиться к более мощным скриптовым языкам программирования, например Perl, Tcl, Python, Ruby или к высокоуровневым компилирующим языкам -- C, C++ или Java. >>>Но даже в этом случае, создание прототипа приложения на языке shell может существенно облегчить разработку<<<." Вот через последние предложение я и не понял может он иль нет.. Интересует простая вещь, например telnet smtp.mail.ru 25 HELO name (прочитать ответ) ... другие команды для отправки почты (прочитать их ответы) ... QUIT Это скорее чтобы показать возможность, чем для реальной работы (делал на PHP но это немного не то) --- Кто не со Мною, тот против Меня; и кто не собирает со Мною, тот расточает. /Матфея, 12:30/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
В документации написано что bash умеет работать с сокетами, но мы вам этого не рекомендуем? Покажите мне эту строчку. Вызвать любую программу, которая откроет сокет, прочитает или еще из него, а после вывод записать в переменную bash, ну или написать в bash для этого функцию, опять же с вызовом внешних программ - это все на что способен bash. Или я чего-то не знаю, покажите мне эту строчку в документации. 28.04.07, Strange_V <[EMAIL PROTECTED]> написал(а): Есть ли возможность из в bash работать с сокетами? Читал Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки, там не рекомендуется, но все же можно? -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Есть ли возможность из в bash работать с сокетами? Читал Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки, там не рекомендуется, но все же можно? --- Там, где одни видели абстракцию, другие видели истину. /А.Камю/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Re[2]: Скрипт на bash
On Fri, 27 Apr 2007 19:27:28 +0500, Alexander Kraev <[EMAIL PROTECTED]> wrote: > Вообще-то он создавался для работы с лентой. Да и как архиватор он > никакой > без gzip. Делать тарболы - да, что далеко не архим :) Угу, только на лентах хранились именно бекапы. У него целый инструментарий для этого есть... Насчет архиватора полностью согласен, однако здесь его функция - собрать каталог в один файл, который затем уже сжимается gzip или bzip... Которые с каталогами работать просто не умеют. А вот возможностей у него очень много по сравнению, добавлению к архиву... -- Отправлено M2, революционной почтовой программой Opera: http://www.opera.com/mail/ -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Re[2]: Скрипт на bash
Вообще-то он создавался для работы с лентой. Да и как архиватор он никакой без gzip. Делать тарболы - да, что далеко не архим :) 27.04.07, Евсюков Денис <[EMAIL PROTECTED]> написал(а): Посмотрите в сторону tar, он по сути и создавался для создания бекапов. И только в дальнейшем он стал использоваться как архиватор... -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Re[2]: Скрипт на bash
On Fri, 27 Apr 2007 18:24:29 +0500, Strange_V <[EMAIL PROTECTED]> wrote: >> под виндой я попользовал архивирование раром без сжатия файлов старше, >> чем 30 дней с удалением пакуемых файлов, затем удаление полученного >> архива. > под офтопом тоже пользовался раром.. >> ) >> допускаю, что в линуксе можно интересней > допускаю что вы не ошиблись)) Посмотрите в сторону tar, он по сути и создавался для создания бекапов. И только в дальнейшем он стал использоваться как архиватор... -- Отправлено M2, революционной почтовой программой Opera: http://www.opera.com/mail/ -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re[2]: Скрипт на bash
> под виндой я попользовал архивирование раром без сжатия файлов старше, > чем 30 дней с удалением пакуемых файлов, затем удаление полученного архива. под офтопом тоже пользовался раром.. > ) > допускаю, что в линуксе можно интересней допускаю что вы не ошиблись)) --- Слова, которые рождаются в сердце, доходят до сердца, а те, что рождаются на языке, не идут дальше ушей. /аль-Хусри/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Здравствуйте, Strange_V. под виндой я попользовал архивирование раром без сжатия файлов старше, чем 30 дней с удалением пакуемых файлов, затем удаление полученного архива. ) допускаю, что в линуксе можно интересней :) 8<- 26 апреля 2007 г., 14:21:36: > Пишу небольшой скриптик бекапа данных, не знаю как реализовать такое: > Есть директория с файлами (имена в формате ГГГ.ММ.ДД.tar.bz) нужно > оставить N из них удалив самые старые. > И как просто посчитать скока в директории файлов? > --- > Есть тысяча способов быть очень дурным человеком, не нарушая ни одного > закона. /Анна Сталь/ > С наилучшими пожеланиями, Strange_V -- С уважением, Евгений mailto:[EMAIL PROTECTED] -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
> Прям сказка про репку, бабка за дедку... жучка за внучку... > Unix-way ;) По теме - мне кажется что нужно смотреть в сторону find - проще будет. Конечно, это если даты создания файлов соотносятся с датами, написанными в их названиях. -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
В сообщении от Четверг 26 апреля 2007 14:41 Attid написал(a): > подпишусь в тему > хочу скриптик установленых пакетов в системе у которых в зависимотях ничего > нет. смотрел на dpkg но так и не понял как вытащить из него это все. > > логика понятна. надо получить список всех покетов > и проверить все на зависимости, если от них ничего не зависит вывести на > экран. как реализовать не очень понимаю. > > ЗЫ первым делелом должен вывести "ubuntu-desktop" =) > причина, хочу поудолять лишнее из системы чтоб не обновлять всякие > неиспользуемые пакеты =) Во-первых надо смотреть в сторону утилиты deborphan - она есть в universe. Ну а уж если не подойдет, то вот есть такой мой наколенный скрипт. Правда для rpm-ных систем с аптом, но там небольшая корректировка. dpkg должен отдать список в виде: leafpad perl-IO-Zlib iso-codes psutils gnome-utils и т.д. Дальше уже аптом проверяется каждый пакет на наличие обратных зависимостей. Но надо осторожнее, потому как поломать что-то очень легко - не всегда зависимости напрямую прописаны в пакете. И сам скрипт: #!/usr/bin/env python from os import * from subprocess import * import re def get_installed_packages(): # get installed packages list from rpm print "Reading installed packages list..." cmd = 'rpm -qa --queryformat %{NAME}"\n"' bufsize = 512 p = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE, stdout=PIPE, stderr=PIPE, close_fds=True) cmd_buf = p.stdout.read() print "Done!" return cmd_buf # end of "get_installed_packages()" def search_orphans(list): # search for packages without reverse dependencies print "Searching for packages without reverse dependencies..." # generating list from list pkg_list = list.split("\n") # cycle through packages bufsize=512 cond_re = re.compile(r'.*Reverse\sDepends:\s\nDependencies:.*') for pkg_name in pkg_list: cmd = 'apt-cache showpkg ' + pkg_name p = Popen(cmd, shell=True, bufsize=bufsize, stdin=PIPE, stdout=PIPE, stderr=PIPE, close_fds= True) cmd_buf = p.stdout.read() if re.search(cond_re, cmd_buf) != None: print pkg_name # end of "search_orphans()" if __name__ == "__main__": pkg_list = get_installed_packages() search_orphans(pkg_list) -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
В сообщении от 26 апреля 2007 Attid написал(a): > хочу скриптик установленых пакетов в системе у которых в зависимотях ничего > нет. смотрел на dpkg но так и не понял как вытащить из него это все. "apt-get autoremove" не устроит? ;-) -- С уважением, Сергей Бейлин Jabber ID: [EMAIL PROTECTED] -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
On Thu, 26 Apr 2007 15:41:34 +0400 Attid <[EMAIL PROTECTED]> wrote: > > подпишусь в тему > хочу скриптик установленых пакетов в системе у которых в зависимотях ничего > нет. > смотрел на dpkg но так и не понял как вытащить из него это все. Дык "у которых в зависимотях ничего нет" или всё-таки "которые ни от кого не зависят" ? > причина, хочу поудолять лишнее из системы чтоб не обновлять всякие > неиспользуемые пакеты =) А вот debfoster и deborphan в убунте есть? Они как раз для этого... ЗЫ: "всё уже украдено до нас" (с) -- Андрей Телешов -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
А фиг получится, забудьте про proc и соревнование :) 26.04.07, Alexander Kraev <[EMAIL PROTECTED]> написал(а): И вообще лучше устроить соревнование кто придумает как сосчитать все файлы в определенной директории быстрее, это раз. и чем короче команда - тем два. и взять к примеру нетральную /proc для сравнения результатов. -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
Козе понятно, правильное решение - додумывать самому. Для тех, кто не любит это дело: FILES_COUNT=`find . -maxdepth 1 -mindepth 1 -type f | wc -l | tr -d '[:space:]'`; echo $FILES_COUNT И вообще лучше устроить соревнование кто придумает как сосчитать все файлы в определенной директории быстрее, это раз. и чем короче команда - тем два. и взять к примеру нетральную /proc для сравнения результатов. 2007/4/26, Alexander Smirnov <[EMAIL PROTECTED]>: Не правильное решение, результат будет больше на 1 ;-) -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
> ls -l - получить список файлов, вывод отдать awk, чтобы выбрать из всей > информации имя файла, вывод отдать sed чтобы убрать точки и расширение > tar.bz, вывод отдать sort, чтобы выбрать N самых старых - head, чтобы > сформировать имя файла - sed, получившееся xargs rm > :-D > сколько файлов в директории - читать ман по ls, есть ключик для этого Прям сказка про репку, бабка за дедку... жучка за внучку... Буду читать маны, если чего не выйдет буду спрашивать :) --- Настоящая тяжесть невидима. Истинная сила неощутима. /Авессалом Подводный/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
подпишусь в тему хочу скриптик установленых пакетов в системе у которых в зависимотях ничего нет. смотрел на dpkg но так и не понял как вытащить из него это все. логика понятна. надо получить список всех покетов и проверить все на зависимости, если от них ничего не зависит вывести на экран. как реализовать не очень понимаю. ЗЫ первым делелом должен вывести "ubuntu-desktop" =) причина, хочу поудолять лишнее из системы чтоб не обновлять всякие неиспользуемые пакеты =) -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
On Thursday 26 April 2007 14:38, Alexander Kraev wrote: > 2. ls -l | пропустить через grep | wc -l Не правильное решение, результат будет больше на 1 ;-) -- This e-mail message is for the sole use of the intended recipient(s) and contains confidential and/or privileged information belonging to Five 9, Inc. or its customers or partners. Any unauthorized review, use, copying, disclosure or distribution of this message is strictly prohibited. If you are not an intended recipient of this message, please contact the sender by reply e-mail and destroy all soft and hard copies of the message and any attachments. Thank you for your cooperation. -- -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
ls -l - получить список файлов, вывод отдать awk, чтобы выбрать из всей информации имя файла, вывод отдать sed чтобы убрать точки и расширение tar.bz, вывод отдать sort, чтобы выбрать N самых старых - head, чтобы сформировать имя файла - sed, получившееся xargs rm :-D сколько файлов в директории - читать ман по ls, есть ключик для этого On Thursday 26 April 2007 14:21, Strange_V wrote: > Пишу небольшой скриптик бекапа данных, не знаю как реализовать такое: > Есть директория с файлами (имена в формате ГГГ.ММ.ДД.tar.bz) нужно > оставить N из них удалив самые старые. > И как просто посчитать скока в директории файлов? > > --- > Есть тысяча способов быть очень дурным человеком, не нарушая ни одного > закона. /Анна Сталь/ С наилучшими пожеланиями, Strange_V -- This e-mail message is for the sole use of the intended recipient(s) and contains confidential and/or privileged information belonging to Five 9, Inc. or its customers or partners. Any unauthorized review, use, copying, disclosure or distribution of this message is strictly prohibited. If you are not an intended recipient of this message, please contact the sender by reply e-mail and destroy all soft and hard copies of the message and any attachments. Thank you for your cooperation. -- -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
ну тут хоть ls -l, хоть ls -1 не помогут, хотябы так ls -l | egrep -v "^d" | wc -l или то что написал в пред письме 26.04.07, Igor Goldenberg <[EMAIL PROTECTED]> написал(а): 26.04.07, Strange_V<[EMAIL PROTECTED]> написал(а): > И как просто посчитать скока в директории файлов? ls -1 | wc -l Дальше можно почитать ман на ls, посмотреть ключи сортировки, почитать про head/tail, всё это "законвеерить" и получить список файлов. Ну это так, в общих чертах... -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
1. можно с помощью find и -atime или -ctime сделать сортировку и выбрость ненужно тоже самое можно сделать с помощью ls -ltr и сортировкой и head найти файлы по шаблону с помощью find, в шаблоне указать нужные вам YY.MM, далее сортировка и head 2. ls -l | пропустить через grep | wc -l find . -name *.*.*.tar.bz | wc -l 26.04.07, Strange_V <[EMAIL PROTECTED]> написал(а): Пишу небольшой скриптик бекапа данных, не знаю как реализовать такое: Есть директория с файлами (имена в формате ГГГ.ММ.ДД.tar.bz) нужно оставить N из них удалив самые старые. И как просто посчитать скока в директории файлов? --- Есть тысяча способов быть очень дурным человеком, не нарушая ни одного закона. /Анна Сталь/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru -- Alexander Kraev -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Re: Скрипт на bash
26.04.07, Strange_V<[EMAIL PROTECTED]> написал(а): > И как просто посчитать скока в директории файлов? ls -1 | wc -l Дальше можно почитать ман на ls, посмотреть ключи сортировки, почитать про head/tail, всё это "законвеерить" и получить список файлов. Ну это так, в общих чертах... -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
Скрипт на bash
Пишу небольшой скриптик бекапа данных, не знаю как реализовать такое: Есть директория с файлами (имена в формате ГГГ.ММ.ДД.tar.bz) нужно оставить N из них удалив самые старые. И как просто посчитать скока в директории файлов? --- Есть тысяча способов быть очень дурным человеком, не нарушая ни одного закона. /Анна Сталь/ С наилучшими пожеланиями, Strange_V -- ubuntu-ru mailing list ubuntu-ru@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru