faz upload do arquivo para ftp usando o script bash Linux

1

Eu sei que essa é uma pergunta bem simples, mas infelizmente não consigo encontrar nenhuma solução para o meu problema.

Eu tenho um arquivo chamado: x.txt dentro do diretório raiz /x.txt .

E eu quero enviar o arquivo para o meu servidor neste caminho: /public_html/backup ,

então, após o upload, será assim - /public_html/backup/x.txt .

Eu tentei todas as respostas dentro desta página: Como fazer upload de um arquivo por FTP a partir da linha de comando?

e nenhum funcionou. Eu encontrei este código:

#!/bin/bash

ftp -n -v host.net.com << EOT
ascii
user uname pass
cd /public_html/
ls -la
bye
EOT

e este é o resultado: (o nome de usuário e a senha estão corretos)

[root@centos-512mb-nyc3-01 ~]# ./linux
./linux: line 1: $'\r': command not found
./linux: line 3: $'\r': command not found
./linux: line 10: warning: here-document at line 4 delimited by end-of-file (wan')d 'EOT
Connected to host.net.com (78.47.98.110).
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 2 of 50 allowed.
220-Local time is now 03:44. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Remote system type is UNIX.
Using binary mode to transfer files.
?Invalid command
331 User admin OK. Password required
530 Login authentication failed
Login failed.
530 You aren't logged in
530 You aren't logged in
Passive mode refused.
?Invalid command
?Invalid command
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
    
por itzikb 27.12.2016 / 01:48

1 resposta

1

Eu encontrei a solução para o problema, Eu estava escrever no charset do windows e transferi-lo para unix com windows EOL.

Consigo corrigir o problema com o notepad ++ - > edit - EOL Converstion - e mude para o charset que eu quero.

THX.

    
por 27.12.2016 / 02:12