Page 8 of 9 FirstFirst ... 6789 LastLast
Results 106 to 120 of 127

Thread: Вопросы по скриптам на bash (shell)

  1. #106
    Join Date
    Jan 2007
    Location
    Moscow
    Posts
    156

    Thumbs up Модификация скрипта - вопрос снят

    Quote Originally Posted by ConstAntz View Post
    После смены кодировки не торопитесь отправлять результат в новый файл, сперва подредактируйте его
    Code:
    iconv -f CP1251 -t UTF-8 $src | sed -e 's/utf-8/win-1251/' >$tgt
    Если правильно понял, то предложенное решение не подходит.
    При смене кодировки происходит то, что нужно:
    Code:
    iconv -f CP1251 -t UTF-8 $src > $tgt
    - у файла с расширением .1251 оно заменяется на расширение .html, внутри меняется кодировка, но не должен меняться тэг с 'utf-8'.

    Нужно сделать вот что:
    Code:
    sed -e 's/utf-8/win-1251/' $src > $tgt_1, где
    $src - это исходный файл с расширением .1251;
    $tgt_1 - это файл, который образуется из исходного файла с расширением .1251 путем добавления к нему расширения .html и заменой внутри тэга utf-8 на win-1251
    Исходные файлы:
    Code:
    ...File_1.1251
    ...File_2.1251
    ...
    Сейчас есть такой результат работы скрипта (файлы перекодированы iconv):
    Code:
    ...File_1.html
    ...File_2.html
    ...
    А нужно перед удалением файлов .1251 поменять внутри utf-8 на win-1251 и прибавить к ним расширение .html, а потом уже удалять rm $DIR/*1251 >/dev/null
    Code:
    ...File_1.1251.html (получен из File_1.1251)
    ...File_1.html
    ...File_2.1251.html (получен из File_1.1251)
    ...File_2.html
    ...
    P.S. Понимаю, что в скрипт нужно вставить строку типа
    Code:
    #!/bin/sh
    
    DIR="$1"
    
    re_match="1251"
    replace="html"
    
    for i in $( ls -A $DIR/*1251 );
      do
        src=$i
        tgt=$(echo $i | sed -e "s/$re_match/$replace/")
        iconv -f CP1251 -t UTF-8 $src > $tgt
    
        sed 's/utf-8/win-1251/' $src > $src + `.html`
    
      done
    rm $DIR/*1251 >/dev/null
    Выделенное жирным не знаю как правильно записать

    ВОПРОС СНЯТ
    Вот рабочий вариант нового скрипта (выделенно - добавленное мною)
    Code:
    #!/bin/sh
    
    DIR="$1"
    
    re_match="1251"
    replace="html"
    ext_add=".html"
    
    for i in $( ls -A $DIR/*1251 );
      do
        src=$i
        tgt=$(echo $i | sed -e "s/$re_match/$replace/")
        iconv -f CP1251 -t UTF-8 $src > $tgt
        sed 's/utf-8/win-1251/' $src > $src$ext_add
      done
    rm $DIR/*1251 >/dev/null
    Last edited by KRandall; 26-04-2013 at 15:10. Reason: Сделано
    WL-500gP(v1, 64mb) (1.9.2.7-d-r2624 by Oleg) + 3 x USB HDD
    Работают: analog, syslog-ng, cron, samba 3, RTorrent+RuTorrent, lighttpd, vsftpd+, настроена сеть и сетевая печать

  2. #107

    Установка bash в качестве шелла по умолчанию

    Подскажите как можно установить bash в качестве шелла по умолчанию.
    Роутер Asus wl500. Утилиты которые помогали на прошивке от Олега, после
    перехода на Entware, отсутствуют.
    Заранее благодарен.

  3. #108
    Quote Originally Posted by Choice View Post
    Утилиты которые помогали на прошивке от Олега, после
    перехода на Entware, отсутствуют..
    Какие утилиты?

  4. #109
    Например adduser, pwgen и тому подобные.
    Которые позволяют изменять данные пользователей
    и прочее

  5. #110
    Quote Originally Posted by Choice View Post
    Например adduser,
    shadow-useradd
    shadow-userdel
    shadow-usermod
    Quote Originally Posted by Choice View Post
    pwgen
    shadow-passwd
    Quote Originally Posted by Choice View Post
    и тому подобные.
    Которые позволяют изменять данные пользователей
    и прочее
    shadow-groupadd
    shadow-groupdel
    shadow-groupmod
    shadow-groups

  6. #111
    Спасибо, но почему то после установки shadow, sh пишет что shadow отсутствует
    Мне вообще нужно в passwd сменить шелл. может есть другой способ?

  7. #112
    shadow — это метапакет. Устанавливайте конкретные утилиты из его состава, имена пакетов перечислены выше.

  8. #113
    Так он их вроде сам притянул при установке. И написал что их все сконфигурировал.
    usermod -s /bin/bash root почему то не менят шелл
    Last edited by Choice; 27-06-2013 at 12:41.

  9. #114

    explainshell.com

    Посмотрите какая изюмительная вещь: вы вписываете в поле кусок shell-скрипта, а сайт объясняет вам что этот кусок делает.

  10. #115
    Quote Originally Posted by ryzhov_al View Post
    Посмотрите какая изюмительная вещь: вы вписываете в поле кусок shell-скрипта, а сайт объясняет вам что этот кусок делает.
    Для новичков это бывает очень полезно. Оно еще и автоматически пытается прочитать параметры из man...
    * Wiki *

  11. #116
    Join Date
    Nov 2010
    Location
    Russia, SPb
    Posts
    23

    Подскажите скрипт для провкрки

    Добрый день
    Подскажите скрипт для проверки программы на запущенность.
    Трансмиссия падает иногда, не всегда есть возможность ручками перезапустить.
    Как скриптом через крон проверять? И при необходимости запускать...

    RTFM --> http://wl500g.info/showthread.php?23...838#post191838
    Last edited by Omega; 19-12-2014 at 20:28. Reason: а не пробовали почитать FAQ и профильные темы ? :) да и тут рядом тоже есть тема про скрипт перезагрузки ;)

  12. #117
    Quote Originally Posted by Barquero View Post
    Добрый день
    Подскажите скрипт для проверки программы на запущенность.
    Трансмиссия падает иногда, не всегда есть возможность ручками перезапустить.
    Как скриптом через крон проверять? И при необходимости запускать...
    Скрипт не знаю, сам пользую программу monit.

  13. #118
    Join Date
    Feb 2008
    Location
    Dniepropetrovsk, Ukraine
    Posts
    1,527

    Question

    Quote Originally Posted by Barquero View Post
    Добрый день
    Подскажите скрипт для проверки программы на запущенность.
    Трансмиссия падает иногда, не всегда есть возможность ручками перезапустить.
    Как скриптом через крон проверять? И при необходимости запускать...
    воспользуйтесь такой командой

    ps | grep -c transmission

    она посчитает сколько раз в запущенных процессах встречается transmission

    есть только один нюанс, сама команда ps | grep -c transmission тоже будет в списке процессов, т.е. число всегда будет как минимум 1

    if [ `ps | grep -c transmission` -le 1 ]; than

  14. #119
    Join Date
    Nov 2010
    Location
    Russia, SPb
    Posts
    23
    Quote Originally Posted by AndreyPopov View Post
    воспользуйтесь такой командой

    ps | grep -c transmission

    она посчитает сколько раз в запущенных процессах встречается transmission

    есть только один нюанс, сама команда ps | grep -c transmission тоже будет в списке процессов, т.е. число всегда будет как минимум 1

    if [ `ps | grep -c transmission` -le 1 ]; than
    Написал вот такой скрипт

    #!/bin/sh
    if [ `ps | grep -c transmission` -ge 4 ]; then
    echo Transmission work
    exit
    else
    /opt/etc/init.d/S99trans start
    fi
    exit

    Но так как мастерства нет , то он не проверяет почему то количество запущенных трансмиссий (их 5, как минимум, по подсчёту ps | grep -c transmission), а запускает очередную пачку.
    Как поправить?

  15. #120
    Join Date
    Feb 2008
    Location
    Dniepropetrovsk, Ukraine
    Posts
    1,527

    Exclamation

    оба exit - это лишнее!

Page 8 of 9 FirstFirst ... 6789 LastLast

Similar Threads

  1. FAQ: часто задаваемые вопросы
    By Oleg in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 56
    Last Post: 13-09-2016, 12:06
  2. Вопросы по работе IPTV (EMF & WMF)
    By theMIROn in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 119
    Last Post: 29-03-2015, 13:18
  3. Вопросы по работе PHP на роутере
    By Jekl in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 164
    Last Post: 21-10-2014, 12:45
  4. Wifi connect client bash script export.
    By aegisrtcw in forum WL-500gP Q&A
    Replies: 0
    Last Post: 25-04-2012, 05:36
  5. Вопросы по перепрошивке dir-320
    By gweri in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 344
    Last Post: 29-10-2011, 10:36

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •