2016-04-14 3 views
-1

что я хочу - это контролировать сортировку файла, когда я использую функцию php readdir() в системе linux. В моем случае, это имеет так много файлов в папке «A», и READDIR (A) вернет:Как изменить сортировку файла в файловой системе Linux?

3.txt 
1.txt 
2.txt 
2.xls 

... Но я хочу это возвращает не как создать временную порядок, или, точнее, последовательность узлов в файловой системе Linux, что, если я хочу, чтобы до возвращения «2.txt», такие как:

2.txt 
3.txt 
1.txt 
2.xls 

, как я должен делать? Это может сделать команда php или linux? благодаря

+0

Это невозможно напрямую, просто потому, что в файловой системе нет ничего подобного порядку сортировки. Конечно, задание _result_ можно упорядочить. Это делается в утилитах 'cli', используя дополнительные параметры времени выполнения. В php вы можете просто отсортировать массив записей в папках файловой системы по своему вкусу. Но нет «глобального режима сортировки» или подобного. – arkascha

+0

просто помещает вывод в массив и сортирует его, что вы хотите потом. – mitkosoft

+0

ОК, спасибо, я знаю метод, который нужно подобрать по массиву, я просто хочу знать, можно ли изменить атрибут, например touch (2.txt), это делается –

ответ

0

Вы можете EXEC A «LS» с параметром -S (--sort), а затем получить на выходе, обрабатывать и использовать его (лично я считаю, что это не то, что хорошее решение) или вы можете использовать встроенные инструменты php: - scandir возвращает структуру линейных данных (массив), которая сортируется по имени (второй параметр - тип сортировки) .... вы можете расширить, построив более сложный массив, получив каждый размер файла или его размер и т. д.

Обычно я предпочитаю полагаться на вход, но в большинстве случаев вам необходимо адаптировать общий вход на основе вас r нуждается.

+0

ОК, спасибо, Кажется, я неправильно, не только хотите продолжать использовать readdir(), но и попытаться изменить узел файловой системы Linux. Это невозможно, по крайней мере, php-функция или команда linux не могут, спасибо за ваш «ls -s», на данный момент Я бы не стал заменять метод get list. благодаря :) –

Смежные вопросы