Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: аналог команды ls -l  (Прочитано 14587 раз)
0 Пользователей и 1 Гость смотрят эту тему.
mangy rat
Гость
« : 18-11-2007 20:34 » new

Помогите. Очень нужен совет умных и знающих людей. Я пишу курсовую работу, задение - командный интерпретатор. 3-4 команды. ls c ключем -l - одна из них. Надо написать на си аналог стандантых команд bash-а. Я решила сделать интерфейс с помощью curses. Окно с менюшкой. В менюшке выбираются команды, монтировать там, или копировать (собственно все, что пока я успела написать). Проблема в том, что для команд необходимо вводить имена файлов, пути и т д. Это довольно неудобно, когда не можешь посмотреть директорию.
Соответсвенно у меня такие вопросы:
1. Как можно сделать в окне curses просмотр файлов и каталогов по типу как в mc чтобы каталоги могли открываться?
Я думаю брать с помощью команды ls имена файлов и каталогов и заносить их в новое меню, которое будет играть роль списка. Может подскажете что-то более нормальное.
2. Как реализовать команду ls -l. Просто команду ls я у же поняла как делать.

Может я и зря КИ стала через менюшку писать, но отступать уже некуда.

Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 18-11-2007 21:01 » 

mangy rat, посмотри мануал по стандартной библиотеке C: pinfo libc
В разделе File System Interface/Accessing Directories есть то, что тебе надо.
См. ф-ии opendir, readdir, closedir и структуру dirent. Еще, как вариант, ф-ия scandir.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
mangy rat
Гость
« Ответ #2 : 19-11-2007 14:56 » 

mangy rat, посмотри мануал по стандартной библиотеке C: pinfo libc
В разделе File System Interface/Accessing Directories есть то, что тебе надо.
См. ф-ии opendir, readdir, closedir и структуру dirent. Еще, как вариант, ф-ия scandir.
Может я сейчас глупый вопрос задам, а где можно посмотреть исходники на си стандартных программ, вмешних команд типа ln ls cp rm и т д
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 19-11-2007 15:07 » 

Посмотри на сайте GNU: http://www.gnu.org/order/ftp.html
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines