TLDR:

TLDR:

Tenho arquivos executáveis ​​Unix junto com um aplicativo Mac OS X que transferi para meu servidor FTP. Quando eu baixo esses arquivos depois de carregá-los, os executáveis ​​Unix são baixados como documentos do TextEdit. Da mesma forma que o aplicativo, quando baixado diz "O aplicativo MyApp não pode ser aberto". Acredito que isso ocorre porque quando ele baixa o aplicativo ele baixa o executável unix no diretório MyApp/Contents/MacOS/Myapp como um documento de texto. Portanto, presumo que o problema seja o mesmo com os dois problemas que estou tendo. Como isso pode ser consertado. Além disso, gostaria de ter o mesmo ícone personalizado com o qual carreguei o arquivo. Nota: A soma de verificação do arquivo original e do arquivo baixado do servidor FTP é a mesma.

Responder1

TLDR:

Isso é normal quando você baixa no modo ASCII. Mudar para download binário

Fundo:

Na época da tradição, quando só tínhamos inglês nos computadores e nenhum sotaque, trema ou outros caracteres interessantes e quando a memória ainda era muito escassa, usamos ASCII para representar letras e números. ASCSII contém 127 entradas.

127 entradas cabem em 7 bits, enquanto um byte regular atual tem 8 bits. *1

Se você enviar todos os 8 bits, estará desperdiçando largura de banda (então muito cara e limitada) *2 , então os 8 bits foram eliminados. Isso funcionou bem para arquivos de texto. Se você transferiu dados binários (não_ASCII), precisará informar explicitamente ao FTP para baixar todos os 8 bits, alternando para o modo binário.


*1: Além de fazer coisas úteis, como converter seu texto do formato remoto para o local. Por exemplo, do mainframe EBDIC para ASCII, alterando o final da linha entre etc.

*2: Exemplo de largura de banda:

Modo ASCII:

AAAAAAAB BBBBBBCC CCCCCDDD DDDDEEEE EEEFFFFF FFFGGGGG GGHHHHHH H...   
                                                        ^^^^^^
                                                        Savings

Modo binário:

AAAAAAA- BBBBBBB- CCCCCCC- DDDDDDD- EEEEEEE- FFFFFFF- GGGGGGG- H....

informação relacionada