Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: [HOWTO] Пишем bash скрипты  (Прочитано 220942 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Mioki

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #210 : 25 Апреля 2012, 16:57:48 »
#!/bin/bash

if [ -z "$1" ]; then
echo "vvedite komandu"
fi

if [ -z "$2" ]; then
echo "vvedite komandu"
fi

if [ -z "$3" ]; then
echo "vvedite komandu"
fi

xterm -e $1 &

xterm -e $2 &

xterm -e $3 &




запускаю скрипт, он запускает три терминала, и через секунду его закрывает, как сделать так чтоб не закрывал?  :D

Пользователь решил продолжить мысль 25 Апреля 2012, 17:26:47:
Цитировать
В конце дописать wait

не, не работает, отправяю так, не было в задании чтоб не закрывалось))))
« Последнее редактирование: 25 Апреля 2012, 17:26:47 от Mioki »

Оффлайн romchiksoad

  • Новичок
  • *
  • Сообщений: 26
  • romchiksoad@ubuntu.ru
    • Просмотр профиля
    • Блог о веб-разработке
Re: [HOWTO] Пишем bash скрипты
« Ответ #211 : 30 Апреля 2012, 15:20:07 »
Хочу научить свой комп приносить тапочки и варить кофе, но ссылка https://forum.ubuntu.ru/index.php?topic=24150.0 уже не доступна :'( Что там было? :)

Оффлайн Mioki

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #212 : 25 Июля 2012, 16:56:16 »
#!/bin/bash

 if [ -z "$1" ]; then
 echo "vvdedite slovo 1" ;
 fi
 if [ -z "$2" ]; then
 echo "vvdedite slovo 2" ;
 fi
 if [ -z "$3" ]; then
 echo "vvdedite slovo 3" ;
 fi

for i in $1 $2 $3
do
  grep -n $i * | while read line ;
  do
    name=$(echo "$line" | cut -f1 -d:) ;
    string=$(echo "$line" | cut -f2 -d:) ;
    a=$(expr $string - 10)
    if [ $a -lt 1 ] ; then
    a=1 ;
    fi ;
    b=$(expr $string + 10) ;   
    echo "___________________________"
    echo $name:$a
    sed -n $a,${b}p $name;
  done
done



запускаю и пишет
1234.sh: line 8: syntax error near unexpected token `fi'
1234.sh: line 8: ` fi'

вроде все правильно, но возможно не вижу,

подскажите пожалуйста что делать?

Оффлайн Сперанский

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4055
  • Dictum ac factum
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #213 : 25 Июля 2012, 17:21:46 »
У меня работает
::~::->> ./test
vvdedite slovo 1
vvdedite slovo 2
vvdedite slovo 3
::~::->>

Оффлайн Abears

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #214 : 26 Августа 2012, 07:54:20 »
Мир Вам Всем!
У меня Sabily Al-Badr (Ubuntu Natty), Ядро Linux 2.6.38-15, Gnome 2.32.1
Установил себе под Увайном (Wine) MediaGet.
Всё вроде нормально работает, вот только не получается вновь отобразить окно программы, после того как её сворачиваешь или закрываешь, а висящий в Трее значёк никак не откликается!
Приходится запускать Системный монитор и в ручную отключать процесс под названием mediaget.exe
В линуксе Я пока ещё чайник, поэтому и пишу с просьбой подсказать мне Как написать скрипт который будет останавливать процесс mediaget.exe!
Заранее Спасибо!
« Последнее редактирование: 26 Августа 2012, 09:09:33 от Abears »

Оффлайн RodionHomyak_UA

  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #215 : 26 Августа 2012, 22:45:45 »
#!/bin/bash

if [ -z "$1" ]; then
echo "vvedite komandu"
fi

if [ -z "$2" ]; then
echo "vvedite komandu"
fi

if [ -z "$3" ]; then
echo "vvedite komandu"
fi

xterm -e $1 &

xterm -e $2 &

xterm -e $3 &




запускаю скрипт, он запускает три терминала, и через секунду его закрывает, как сделать так чтоб не закрывал?  :D

Пользователь решил продолжить мысль 25 Апреля 2012, 17:26:47:
Цитировать
В конце дописать wait

не, не работает, отправяю так, не было в задании чтоб не закрывалось))))
так на будущее
read -n1 -r -p "
Нажмите любую клавишу для выхода" key

Axa-Ru

  • Автор темы
  • Гость
Re: [HOWTO] Пишем bash скрипты
« Ответ #216 : 26 Августа 2012, 23:16:35 »
Abears,
А зачем вам это mediaget?

Чем обычный торрент не угодил?

ЗЫ. почитал здесь: http://ЗАПРЕЩЁННЫЙ РЕСУРС/forum/viewtopic.php?t=3360115.
В помойку однозначно. Пускай его чиновники пользуют.

Особенно повеселило вот это:
Цитировать
После того как это говенная прога удалила 400 ГБ скаченных фильмов и музыки, сама, больше ей не пользуюсь. Самое смешное, что я подумал было на вирус, но нет, по названиям всё восстановил, и снова все удалилось!.

Судя по всему это  медиагет делает из компьютера зомби.
« Последнее редактирование: 27 Августа 2012, 23:46:12 от Axa-Ru »

Оффлайн spk-ubuntu

  • Активист
  • *
  • Сообщений: 502
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #217 : 27 Августа 2012, 23:39:24 »
Как написать скрипт который будет останавливать процесс mediaget.exe!
может так: http://rus-linux.net/lib.php?name=MyLDP/FAQ/wine-faq.html#24

Оффлайн Abears

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #218 : 28 Августа 2012, 13:07:37 »
Abears,
А зачем вам это mediaget?

Чем обычный торрент не угодил?


Наверное поисковиком и он-лайн просмотром фильмов.....

Axa-Ru

  • Автор темы
  • Гость
Re: [HOWTO] Пишем bash скрипты
« Ответ #219 : 28 Августа 2012, 23:28:05 »
Комментарии про этот тулз настораживают.
Как то стремно его пользовать.

Оффлайн Abears

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #220 : 29 Августа 2012, 11:19:25 »
Оки! Прислушаюсь к мнению знающих и опытных!! :) В помойку!!!

Оффлайн tеma

  • Активист
  • *
  • Сообщений: 306
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #221 : 30 Августа 2012, 19:39:41 »
Abears, онлайн просмотр фильмов, если я не ошибаюсь, можно реализовать в ktorrent, а поиск -- любой торент трекер.

Оффлайн blackride

  • Любитель
  • *
  • Сообщений: 59
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #222 : 21 Января 2013, 00:18:59 »
Ребят не пинайте, если что. Но честно пытался осилить написание скриптов так и не получилось. Нужно следующее (хотя сложноватые скрипты получатся):
1 скрипт. При подключении нового жесткого диска:
а) определялся через вывод комманды bkld его UUID (условие, все диски кроме системного) + ФС
б) занесение UUID нового диска со всеми стандартными параметрами и определенной ФС в fstab

2 скрипт. При подключении через USB 2-х жестких дисков копировать черезе rsync (опции rsync'а знаю и смогу подставить в скрипт) (подключение поочередное) (зная заранее UUID бэкапных дисков и вставка этих UUID в скрипт вручную - один раз):
- весь жесткий диск №1 (системный) на другой (конкретный - UUID)
- весь жесткий диск №2 (с данными) на другой (конкретный - UUID)

Axa-Ru

  • Автор темы
  • Гость
Re: [HOWTO] Пишем bash скрипты
« Ответ #223 : 21 Января 2013, 00:27:15 »
Давай сюда тексты скриптов, которые писал.  8)

Оффлайн blackride

  • Любитель
  • *
  • Сообщений: 59
    • Просмотр профиля
Re: [HOWTO] Пишем bash скрипты
« Ответ #224 : 21 Января 2013, 11:54:33 »
Давай сюда тексты скриптов, которые писал.  8)
Это все что я смог осилить для первого скрипта ((((
#!/bin/bash
# объявляем переменную STRING
STRING="Добавление нового диска в автозагрузку"
# вывод на экран
echo $STRING
echo `blkid`
# Продолжение не могу осилить.

Вывод комманды к примеру будет таким:
bop0hz@bop0hz-laptop:~$ sudo blkid
 /dev/sda1: UUID="fbf273ce-8cf6-4653—8275-2498659f554d" TYPE="ext4"
 /dev/sdb2: UUID="E44ECA8D4ECA57C6" TYPE="ntfs"
 /dev/sdb5: UUID="7ebf7edf-29a8-42cb-b964-12a3a3be5530" TYPE="ext4"
 /dev/sdb6: UUID="9e63c98c-5f6f-4bae-9929-abf5a1de3c80" TYPE="ext2"
 /dev/sdb7: UUID="96a5bd26-f636-4a98-b126-92915e07c583" TYPE="ext2"
Это не мой вывод (взял в интернете).
Тогда как указать через проверку условий (if|then|else), что к примру ecли есть кроме uuid (определенный - знаем его за ранее или системный раздел) то брать все другие номера uuid отличные от того и их TYPE записывать (добавлять, а не стирать) в файл fstab с такими то опциями (к примеру users,defaults,umask=0 0 0)?
То есть смысл проверки условия я представляю себе, но как указать все это в условиях i don't know(((.
« Последнее редактирование: 21 Января 2013, 12:12:26 от blackride »

 

Страница сгенерирована за 0.066 секунд. Запросов: 25.