-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlftp_files_alone.sh
69 lines (60 loc) · 1.2 KB
/
lftp_files_alone.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/bash
#usage
function usage {
echo "USAGE: For MAN page use -m [help command]"
echo "$0 -u Username -p 'Password' -h Host -d Domain.com -f path_to_remotefile.txt"
}
while getopts ":u:p:h:d:f:m" opt; do
case "$opt" in
u)
FTPNAME=$OPTARG
;;
p)
FTPPASS=$OPTARG
;;
h)
HOST=$OPTARG
;;
d)
DOMAIN=$OPTARG
;;
f)
REMOTE_FILE=$OPTARG
;;
m | *)
usage
exit
;;
?)
echo "I don't know what $OPTARG is !!!"
usage
exit 1
;;
esac
done
locpath="/home/sathish/Downloads/${DOMAIN}/out"
dom="/home/sathish/Downloads/${DOMAIN}"
if [ -d "${dom}" ]; then
echo "The Domain name already exist!"
exit 1
else
mkdir -p "${locpath}"
#Passing Arguments
# Creating lftp_runner
echo "
set net:timeout 10
set ssl:verify-certificate false
set ftp:ssl-allow no
set ftp:passive-mode true
set ftp:list-options -a
open $HOST
user $FTPNAME \"$FTPPASS\"" > "${locpath}/lftp_runner.txt"
cat "$REMOTE_FILE" 2> /dev/null | while read line
do
echo "mget -d ${line}" >> "${locpath}/lftp_runner.txt"
done
cd "${dom}"
# Executing lftp runner
lftp -f "${locpath}/lftp_runner.txt"
echo "Mirroring Completed, Successfully!"
fi