Bash Skripte für das Startup gebaut
This commit is contained in:
Executable
+4
@@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
source manage_interpreter.sh activate_interpreter
|
||||
python "$PROJECT_LIB/drawdxf.py" "$@"
|
||||
source manage_interpreter.sh deactivate_interpreter
|
||||
Executable
+6
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
# getpositions.sh
|
||||
#!/bin/bash
|
||||
source manage_interpreter.sh activate_interpreter
|
||||
python "$PROJECT_LIB/getpositions.py" "$@"
|
||||
source manage_interpreter.sh deactivate_interpreter
|
||||
Executable
+16
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
source setenv.sh
|
||||
|
||||
if [ ! -d "$PROJECT/.venv" ]; then
|
||||
echo "Initialisiere Python virtual environment..."
|
||||
python3 -m venv "$PROJECT/.venv" --upgrade-deps
|
||||
echo "Erfolgreich."
|
||||
|
||||
source "$PROJECT/.venv/bin/activate"
|
||||
echo "Installiere erforderliche Python Packages..."
|
||||
pip install -r "$PROJECT_LIB/requirements.txt" -q
|
||||
echo "Erfolgreich"
|
||||
deactivate
|
||||
else
|
||||
echo "Erforderliche Python Packages bereits installiert!"
|
||||
fi
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
usage() {
|
||||
echo "Usage: $0 <dxfinWorkOrdner.dxf>"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
usage
|
||||
fi
|
||||
|
||||
INPUT_FILE="$1"
|
||||
FILENAME=$(basename "$INPUT_FILE" .dxf)
|
||||
DIR=$(dirname "$INPUT_FILE")
|
||||
|
||||
source /opt/dxf-calculator/kabellaengen/bin/setenv.sh
|
||||
|
||||
# Namen der Zwischenergebnis Dateien
|
||||
JSON_POS="${FILENAME}_positionsconv.json"
|
||||
JSON_TODRAW="${FILENAME}_todraw.json"
|
||||
# Namen der Ergebnisdateien
|
||||
ERROR_DOUBLE="${FILENAME}_errors.json"
|
||||
RESULT_TIA="${FILENAME}-*_TIA.xlsx"
|
||||
|
||||
echo
|
||||
echo "=== Fetching Positions ==="
|
||||
./getpositions.sh --filename "$1" -s -r -w "$JSON_POS" -e "$ERROR_DOUBLE"
|
||||
|
||||
if [ -f "$PROJECT_WORK/$ERROR_DOUBLE" ]; then
|
||||
echo "== failed: duplicate IDs in given layout"
|
||||
read -p "Press any key to continue..."
|
||||
mv "$PROJECT_WORK/$ERROR_DOUBLE" "$PROJECT_IO_RESULTS"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$PROJECT_WORK/$JSON_POS" ]; then
|
||||
echo "== failed: getpositions"
|
||||
read -p "Press any key to continue..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "=== Creating Excel Files for TIA, WSCAD, .. ==="
|
||||
./portalexport.sh --filename "$JSON_POS" --outname "$FILENAME"
|
||||
|
||||
if [ ! -f "$PROJECT_WORK/$RESULT_TIA" ]; then
|
||||
echo "== failed: creating .xlsx files"
|
||||
read -p "Press any key to continue..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "$PROJECT_IO_RESULTS/$FILENAME"
|
||||
echo "move $PROJECT_WORK/${FILENAME}-* $PROJECT_IO_RESULTS/$FILENAME"
|
||||
mv "$PROJECT_WORK/${FILENAME}"-* "$PROJECT_IO_RESULTS/$FILENAME"
|
||||
read -p "Press any key to continue..."
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
activate_interpreter() {
|
||||
if [ -f "$PROJECT/.venv/bin/activate" ]; then
|
||||
source "$PROJECT/.venv/bin/activate"
|
||||
else
|
||||
echo "Virtual environment not found. Run install_py.sh first."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
deactivate_interpreter() {
|
||||
if [ -n "$VIRTUAL_ENV" ]; then
|
||||
deactivate
|
||||
fi
|
||||
}
|
||||
|
||||
# Call function based on argument
|
||||
case "$1" in
|
||||
activate_interpreter)
|
||||
activate_interpreter
|
||||
;;
|
||||
deactivate_interpreter)
|
||||
deactivate_interpreter
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {activate_interpreter|deactivate_interpreter}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
source manage_interpreter.sh activate_interpreter
|
||||
python "$PROJECT_LIB/portalexport.py" "$@"
|
||||
source manage_interpreter.sh deactivate_interpreter
|
||||
Executable
+4
@@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
source manage_interpreter.sh activate_interpreter
|
||||
python "$PROJECT_LIB/routing.py" "$@"
|
||||
source manage_interpreter.sh deactivate_interpreter
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
export PROJECT=/opt/dxf-calculator/kabellaengen
|
||||
export PROJECT_BIN="$PROJECT/bin"
|
||||
export PROJECT_CFG="$PROJECT/cfg"
|
||||
export PROJECT_DOC="$PROJECT/doc"
|
||||
export PROJECT_LIB="$PROJECT/lib"
|
||||
export PROJECT_DATA="$PROJECT/data"
|
||||
export PROJECT_WORK="$PROJECT/work"
|
||||
export PROJECT_TEST="$PROJECT/testdata"
|
||||
|
||||
# Linux executable instead of Windows .exe
|
||||
export SIVAS_TEILESTAMM="/usr/local/bin/KSbExcelExportSivasTeilestamm"
|
||||
export SIVAS_EXCEL_EXPORT_DIR="$PROJECT_DATA"
|
||||
|
||||
# Create directories if they don't exist
|
||||
mkdir -p "$PROJECT/work"
|
||||
mkdir -p "$PROJECT/data"
|
||||
|
||||
# Samba shares (adjust mount points as needed)
|
||||
export PROJECT_IO_RESULTS=$PROJECT_WORK
|
||||
export PROJECT_BOM_RESULTS=$PROJECT_WORK
|
||||
export INSTALL_DIR="$HOME/kabeltool"
|
||||
|
||||
# Add project bin to PATH
|
||||
export PATH="$PROJECT_BIN:$PATH"
|
||||
Reference in New Issue
Block a user