Russian Qt Forum
Сентябрь 30, 2024, 22:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: поиск файлов в Linux  (Прочитано 7806 раз)
virtual_root
Гость
« : Август 28, 2012, 16:50 »

Добрый вечер! Ребята, подскажите пожалуйста, как мне при поиске файлов отсечь все те которые не являются исполняемыми?
Мне нужно найти все исполняемые файлы в определенной директории. Я работаю в kUbuntu. Там исполняемые файлы не имеют расширения, из-за чего я не могу при поиске его задать. Использую следующий код для поиска файлов:
Код
C++ (Qt)
       // поиск файлов
       QString fileName;
       QDir dir(qApp->applicationDirPath());
       QStringList files;
       if (fileName.isEmpty())
           fileName = "*";
       files = dir.entryList(QStringList(fileName),
                                    QDir::Files | QDir::NoSymLinks);
       qDebug()<<files;
 

код работает, но выводит абсолютно все файлы, так как я задаю *
Что мне задать, чтобы нашлись только исполняемые файлы?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Август 28, 2012, 16:54 »

Код
C++ (Qt)
files = dir.entryList(QStringList(fileName),
                                    QDir::Files | QDir::NoSymLinks | QDir::Executable);
 
« Последнее редактирование: Август 28, 2012, 16:56 от GreatSnake » Записан

Qt 5.11/4.8.7 (X11/Win)
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4744



Просмотр профиля WWW
« Ответ #2 : Август 28, 2012, 16:55 »

использовать QDir::entryInfoList() и после получения списка отсеять те, для которых QFileInfo::isExecutable() вернёт false
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
mutineer
Гость
« Ответ #3 : Август 28, 2012, 16:57 »

Флаг QDir::Executable
Записан
virtual_root
Гость
« Ответ #4 : Август 28, 2012, 17:15 »

спасибо всем большое!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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