А не какую-нибудь функцию из стандартной библиотеки?
А что он еще может использовать?
Вот 2 варианта:
m@a70:~$ cat >removv.c
#include <unistd.h>
#include <stdlib.h>
int main(void) {
unlink("file1");
system("rm file2");
return 0;
}
m@a70:~$ make removv
cc removv.c -o removv
m@a70:~$ cat >file1
aaa
m@a70:~$ cat >file2
bbb
m@a70:~$ ls file*
file1 file2
m@a70:~$ ./removv
m@a70:~$ ls file*
ls: невозможно получить доступ к file*: Нет такого файла или каталога
m@a70:~$
Файлы удаляются двумя способами: с помощью внешней утилиты rm (которая, в свою очередь вызывает функцию операционной системы unlink),
либо с помощью обращения к системе напрямую.
Скачать сорцы наутилуса, к примеру, и проанализировать.
Чето мне это кажется малореальним
Я как-то решил просто посмотреть исходники geany. Так там один файл configure имеет размер почти МЕГАБАЙТ! 25 ТЫСЯЧ строк! Сорцы, конечно, еще больше. Думаю, в наутилусе всё гораздо хуже...
Не знаю, может, при некотором навыке там можно разобраться, но это не любой, далеко не любой человек за обозримое время сможет сделать.
Пользователь решил продолжить мысль 28 Сентября 2011, 20:28:03:
Как проверить, подскажите
Ну например на место /bin/rm положить свой скрипт. Только ОСТОРОЖНО! Иначе можно дров хороших наломать! Скрипт должен что-нибудь писать в лог, а потом вызывать настоящий rm (его следует переименовать в какой-нибудь rm1). После этого нажимаете в наутилусе del или Shift-del, потом смотрите лог. А потом переименовываете обратно /bin/rm1.
Вообще-то я, как и
arcfi думаю, что это функция из стандартной библиотеки —
Это наиболее вероятно.