The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Подсчёт нажатий СTRL+C"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Подсчёт нажатий СTRL+C"
Сообщение от Storm emailИскать по авторуВ закладки on 18-Мрт-03, 08:39  (MSK)
Привет All! пишу на sh. Я знаю что trap'ом можно лочить прерывания, но как с помощью trapa их подсчитать? т.е задача такая по второму CTRL+C надо выводить "/bin/ls -l /". Помогите плиз. очь надо. лаба у меня такая.
Всем заранее спасибо
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Подсчёт нажатий СTRL+C"
Сообщение от Laskaviy emailИскать по авторуВ закладки on 18-Мрт-03, 17:05  (MSK)
>Привет All! пишу на sh. Я знаю что trap'ом можно лочить прерывания,
>но как с помощью trapa их подсчитать? т.е задача такая по
>второму CTRL+C надо выводить "/bin/ls -l /". Помогите плиз. очь надо.
>лаба у меня такая.
>Всем заранее спасибо

Трапом в шеле ты ловишь ПРЕРЫВАНИЯ ???? Круто чувак .... второй Гарри Поттер :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Подсчёт нажатий СTRL+C"
Сообщение от SergeiZz Искать по авторуВ закладки on 19-Мрт-03, 14:00  (MSK)
>Трапом в шеле ты ловишь ПРЕРЫВАНИЯ ???? Круто чувак .... второй Гарри
>Поттер :)
Это ещё что! Я тут ляпнул, то Java в 91-м разрабатывалась как решение
для "мобильной связи". Из какого места такие слова в голову приходят?... :)  

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Подсчёт нажатий СTRL+C"
Сообщение от sas emailИскать по авторуВ закладки on 20-Мрт-03, 00:58  (MSK)
>Привет All! пишу на sh. Я знаю что trap'ом можно лочить прерывания,
>но как с помощью trapa их подсчитать? т.е задача такая по
>второму CTRL+C надо выводить "/bin/ls -l /". Помогите плиз. очь надо.
>лаба у меня такая.
>Всем заранее спасибо


Вообще то проще некуда:

#!/bin/bash

COUNTER=0
CMD="ls -l /"

my_ls()
{
if [ $COUNTER -eq 1 ]; then
$CMD
echo -e "\n\n\tSecond Time Ctrl-C!!! Exiting...\n\n"
exit 0
fi

COUNTER=$(($COUNTER+1))
}

trap "my_ls" INT

while [ 1 -eq 1 ]; do
   continue
done

Если Вы собираетесь быть программистом такие вопросы надо бы решать без
подсказок.

Успехов
--- sas

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру