Форум программистов, компьютерный форум, киберфорум
С под Linux
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
18 / 18 / 7
Регистрация: 07.11.2010
Сообщений: 136
1

Мониторинг папки

26.12.2011, 20:54. Просмотров 1235. Ответов 2
Метки нет (Все метки)

написал демона который должен в два потока мониторить две заданые с консоли папки
при компиляции ошибок нет , но после запуска
./6 1
rm: невозможно удалить «/tmp/lognew.txt»: Нет такого файла или каталога
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <pthread.h>
#include <string.h>
#include <unistd.h>
#include<sys/stat.h>
#define N 6
struct param 
{
    char path [100];
    char count [10];
};
void * potok1(void *arg)
{   
    int t = 0;
    char text[100] = "\0";
    strcpy(text, "ls -hl ");
    strcat(text, ((struct param*)arg)->path);
    strcat(text, " >> /tmp/lognew.txt");
    system("touch /tmp/log.txt");
    while (t++ != N) {
        system(text);
        system("diff /tmp/lognew.txt /tmp/log.txt >> /tmp/changed.log || echo \"changed\" >> /tmp/changed.log");
        system("cp /tmp/lognew.txt /tmp/log.txt");
        system("rm /tmp/lognew.txt");
        sleep(10); 
    }
    return (EXIT_SUCCESS);
}
void * potok2(void *arg){
    int t = 0;
    char text2[100] = "\0";
    strcpy(text2, "ls -hl ");
    strcat(text2, ((struct param*)arg)->path);
    strcat(text2, " >> /tmp/lognew2.txt");
    system("touch /tmp/log2.txt");
    while (t++ != N) {
        system(text2);
        system("diff /tmp/lognew2.txt /tmp/log2.txt >> /tmp/changed2.log || echo \"changed\" >> /tmp/changed2.log");
        system("cp /tmp/lognew2.txt /tmp/log2.txt");
        system("rm /tmp/lognew2.txt");
        sleep(10); 
 
}
    return (EXIT_SUCCESS);
}
int main(int argc, char * argv[])
{   
 
    if(argc < 3)    {
        printf("Please, specify folder path!\n");
        return (1);}
    pid_t pid, sid;
    pid = fork();
    int result;
    struct param id[2];
    
    pthread_t thread1, thread2;
    strcpy(id[0].path, argv[1]);
    strcpy(id[1].path, argv[2]);
    
    pthread_create(&thread1, NULL, potok1, (void*)&(id[0]) );
    pthread_create(&thread2, NULL, potok2, (void*)&(id[1]) );
    pthread_join (thread1, NULL); 
    pthread_join (thread2, NULL); 
    printf("Done\n"); 
    return (0); 
}
Зарание благодарен за внимание
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2011, 20:54
Ответы с готовыми решениями:

Как ввести директорию папки и вывести все файлы и папки в ней?
Необходима программа, которая при вводе директории папки выводит список файлов и папок с их...

Мониторинг файла
Добрый день. Может кто подскажет - есть контроллер под Linux ARM У него одна из лап заведена на...

Мониторинг загруженности компонентов системы
Здравствуйте. Занялся небольшим проектом в связи с разгоном своего ПК. Хочу выводить загруженность...

Usbmon и мониторинг драйвера usb-устройства
Здравствуйте! Подскажите, пожалуста, как используя usbmon я могу узнать какое usb-устройство...

2
Mobile Developer
237 / 233 / 18
Регистрация: 10.05.2009
Сообщений: 917
29.12.2011, 01:24 2
а файл-то вообще создается?
0
Эксперт С++
3210 / 1459 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
29.12.2011, 01:54 3
Цитата Сообщение от mansp Посмотреть сообщение
два потока мониторить две заданые с консоли папки
а для чего тут два потока?

код вообще ужасно написан %)
нафига столько системных утилит выполнять? не на баше же пишешь.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.12.2011, 01:54

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

Мониторинг папки
Всем добрый вечер.Такой вопрос интересует,а точнее нужна помощь. Есть небольшая программка ,которая...

OleDbDataReader, мониторинг папки
Здравствуйте, уважаемые форумчане. Помогите решить задачку! Есть следующий код try...

Постоянный мониторинг папки на FTP
Здравствуйте знатоки! Нашёл в просторах интернета вот такой код: public class...

Мониторинг определенной папки. FileSystemWatcher
Привет, Всем! Хотел бы узнать такой момент, по поводу FileSystemWatcher. Мне нужно мониторить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.