blob: 88bf70c74e30586603412de338741a4067898370 (
plain)
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
#!/bin/bash
#/**
# * @file wg++
# * @brief just start WebGrab+Plus
# * @author WebGrab+Plus Community
# * @date 31/07/2016
# * @dotnet version
# * @date 13/03/2022
# */
CONFIG_DIR=~/wg++
EXECUTABLE=$(basename $0)
print_help () {
echo -e "Usage:"
echo -e "\t$EXECUTABLE - Uses default '$CONFIG_DIR' configuration directory. Will be created if missing."
echo -e "\t$EXECUTABLE <path> - Path to configuration directory."
echo -e "\t$EXECUTABLE --help - Show help screen."
echo -e "\t"
echo -e "Configuration template is stored in '/usr/share/wg++'. Copy it to your preferred location:"
echo -e "\tcp -R /usr/share/wg++ /path/to/<configuration_directory>"
}
# Check if user supplied any arguments
if [ $# -eq 0 ]; then
#### User did not provide any arguments to wg++ ####
# Use default config dir "$CONFIG_DIR"
if [ ! -d "$CONFIG_DIR" ]; then
cp -R /usr/share/wg++ "$CONFIG_DIR"
if [ -d "$CONFIG_DIR" ]; then
echo "Configuration folder '$CONFIG_DIR' created! Run '$EXECUTABLE' again to use it."
echo "For more information, see '$EXECUTABLE --help'."
exit 0
else
echo "Failed to create configuration folder '$CONFIG_DIR'!"
print_help
exit 1
fi
fi
# Check if "$CONFIG_DIR" contains configuration file
if [ ! -f "$CONFIG_DIR/WebGrab++.config.xml" ]; then
echo "Some configuration files are missing from '$CONFIG_DIR' directory!"
print_help
exit 1
fi
# Double check if user can read/write "$CONFIG_DIR"
if [ ! -r "$CONFIG_DIR/WebGrab++.config.xml" ] || [ ! -w "$CONFIG_DIR/WebGrab++.config.xml" ]; then
echo "You do not have read/write access in '$CONFIG_DIR'."
print_help
exit 1
fi
dotnet /opt/wg++/bin.net/WebGrab+Plus.dll "$CONFIG_DIR"
else
#### User provided arguments to wg++ ####
# Check if there is 1 argument. Exit if more
if [ $# -ge 2 ]; then
echo "Invalid path! You need to provide a path to WebGrabber+Plus configuration directory."
print_help
exit 1
fi
# Check if user asked for help
if [ "$1" == "-h" ] || [ "$1" == "-H" ] || [ "$1" == "--help" ] || [ "$1" == "--HELP" ]; then
print_help
exit 0
fi
# Check if given parameter is existing directory
if [ ! -d "$1" ]; then
echo "Invalid path! You need to provide a path to WebGrabber+Plus configuration directory."
print_help
exit 1
fi
# Check if directory contains configuration file
if [ ! -f "$1/WebGrab++.config.xml" ]; then
echo "Wrong path! Your provided path does not contain configuration files."
print_help
exit 1
fi
# Check if user has read/write access to given path
if [ ! -r "$1/WebGrab++.config.xml" ] || [ ! -w "$1/WebGrab++.config.xml" ]; then
echo "You do not have read/write access to your given directory."
print_help
exit 1
fi
dotnet /opt/wg++/bin.net/WebGrab+Plus.dll "$1"
fi
|