В каком порядке sftp выбирает файлы при использовании «get -r folder»?

Вы можете использовать команды start-instances и stop-instances для запуска/остановки экземпляра следующим образом...

aws ec2 stop-instances --instance-ids i-b78a096f
aws ec2 start-instances --instance-ids i-b78a096f

Вы увидите, что вы не указываете имя региона в командной строке, потому что AWS cli считывает информацию о регионе из /. aws/config файла. Этот файл выглядит следующим образом -

[default]
output = json
region = us-east-1

Скорее всего, значение атрибута region в этом файле отличается от региона, в котором находится ваш экземпляр. Таким образом, ваш вызов отправляется в регион, отличный от того, в который, по вашему мнению, он должен отправиться. Я не вижу других причин, почему это не сработает.

Чтобы проверить, с каким значением региона работает AWS cli, просто вызовите aws configure из командной строки. Он спросит вас о ключе aws, секрете, регионе и формате ответа. В то же время он покажет значения, которые он будет использовать, если вы не укажете ни одного значения.

Я использую AWS cli в подобных сценариях, где управление AWS из командной строки намного быстрее. Однако я создал инструмент с открытым исходным кодом для одновременной визуализации многих ресурсов AWS, который вы можете найти полезным -

https://github.com/pistonportal/custom-turbine/wiki/Running-and-operating-Turbine-app 

Например, вы можете открыть VPC Designer в этом инструменте и увидеть, какие зоны доступности охватывает VPC, какие подсети находятся в каких зонах доступности и какие виртуальные машины находятся в каких подсетях. Это то, что либо требует много кликов в консоли AWS, либо вообще невозможно.

На данный момент у него нет возможности запуска/остановки экземпляра, но это будет доступно в ближайшие несколько дней.

5
17.03.2019, 12:40
1 ответ

Когда вы перечисляете содержимое каталога с помощью команды ls, список будет отсортирован в алфавитно-цифровом порядке в соответствии с правилами сортировки текущей локали по умолчанию. Легко предположить, что это «естественный порядок вещей» в файловой системе -, но это не так.

Большинство файловых систем никаким образом не сортируют свои каталоги :при добавлении нового файла в каталог новый файл в основном получает первый свободный слот в структуре метаданных каталога. Сортировка выполняется только при отображении списка каталогов пользователю. Если в одном каталоге находятся сотни тысяч или миллионы файлов, такая сортировка может потребовать нетривиальных -объемов памяти и вычислительной мощности.

Когда порядок, в котором обрабатываются файлы, не имеет значения, наиболее эффективным способом является просто чтение метаданных каталога по порядку и обработка файлов в том порядке, в котором они встречаются, без какой-либо явной сортировки. В большинстве случаев это будет означать, что файлы будут обрабатываться в основном в том порядке, в котором они были добавлены в каталог, перемежаясь с более новыми файлами в случаях, когда старый файл был удален, а более поздний -добавленный файл освободил свой слот метаданных.

Некоторые файловые системы могут использовать древовидные структуры или что-то еще во внутренней структуре, что может в качестве побочного эффекта обеспечивать определенный порядок записей в их каталогах. Но такое упорядочение может быть основано на номерах инодов файлов или некоторых других внутренних деталях файловой системы -, и, таким образом, не гарантируется, что оно будет полезным для людей в каких-либо практических целях.

Как сказал @A.B в комментариях к вопросу , команда find, ls -fили ls --sort=noneбудет отображать файлы без какой-либо явной сортировки, в каком бы порядке файловая система ни хранила свои каталоги.

9
27.01.2020, 20:35

Теги

Похожие вопросы