escrevi um script de shell para fazer upload de todos os arquivos com nomes diferentes no caminho específico do local para o host, mas estou enfrentando algum problema e os arquivos não estão sendo carregados
#!/bin/sh
for file in /main/folder1/path/*
do
curl -u Pass:"Uname" -T $file http://www.example.com/folder/$file
done
por favor me ajude a resolver isso.
estou recebendo o erro da seguinte forma
<html>
<head>
<title> 500 Internal Server Error </title>
</head>
<body>
<h1>
Internal Server Error
</h1>
</body>
</html>
atualmente estou tendo o script dentro /main/folder_2
, se eu mudar /main/folder_1/path/*
para ../folder_1/path/*
, recebo a saída, os arquivos são movidos conforme o esperado. mas quero executar o script com o caminho completo especificado.
Responder1
Eu mudaria seu script assim:
#!/bin/sh
for file in /folder/path/*
do
curl -u username:password -T ${file} http://www.example.com/folder/${file}
done
Observe que a variável for-loop file
é usada com curl
.
A melhor maneira é fazer upload usando find + curl
(como foirespondido no SO):
find /folder/path/ -name '*' -type f -exec curl -u USERNAME:PASSWORD -T {} http://www.example.com/folder/ \;
PS Mais informações sobre
algum problema está impedindo o upload dos arquivos
seria útil.