Skip to content

Commit 2a9c57a

Browse files
committed
[power_switching_tools_ros] Enable to prepare multiple udev rules for USB-Serial troubleshooters
1 parent fc9d9ac commit 2a9c57a

File tree

1 file changed

+36
-5
lines changed

1 file changed

+36
-5
lines changed

power_switching_tools_ros/scripts/setup_udev_for_usb_serial_troubleshooter

Lines changed: 36 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,44 @@ echo ""
1919
echo "This script generates udev rules for USB-Serial troubleshooter"
2020
echo "Serial number : $SERIAL_NUMBER"
2121
echo "Symlink name : $SYMLINK_NAME"
22-
echo "Output rule : $RULES_PATH"
22+
echo "Output file : $RULES_PATH"
2323
echo ""
2424

25-
sudo bash -c "sed \
26-
-e 's|{{SERIAL}}|$SERIAL_NUMBER|' \
27-
-e 's|{{SYMLINK}}|$SYMLINK_NAME|' \
28-
'$TEMPLATE_PATH' > '$RULES_PATH'"
25+
NEW_RULE=$(sed \
26+
-e "s|{{SERIAL}}|$SERIAL_NUMBER|" \
27+
-e "s|{{SYMLINK}}|$SYMLINK_NAME|" \
28+
"$TEMPLATE_PATH")
29+
30+
# Check existing file
31+
if [ -f "$RULES_PATH" ]; then
32+
echo "The file $RULES_PATH already exists. Current contents:"
33+
echo "--------------------------------------------------"
34+
cat "$RULES_PATH"
35+
echo "--------------------------------------------------"
36+
echo "How would you like to proceed?"
37+
echo " [o] Overwrite"
38+
echo " [a] Append"
39+
echo " [c] Cancel"
40+
read -p "Enter your choice [o/a/c]: " USER_CHOICE
41+
42+
case "$USER_CHOICE" in
43+
[oO])
44+
echo "Overwriting $RULES_PATH..."
45+
echo "$NEW_RULE" | sudo tee "$RULES_PATH" > /dev/null
46+
;;
47+
[aA])
48+
echo "Appending to $RULES_PATH..."
49+
echo "$NEW_RULE" | sudo tee -a "$RULES_PATH" > /dev/null
50+
;;
51+
*)
52+
echo "Operation cancelled."
53+
exit 0
54+
;;
55+
esac
56+
else
57+
echo "Creating new rules file..."
58+
echo "$NEW_RULE" | sudo tee "$RULES_PATH" > /dev/null
59+
fi
2960

3061
echo ""
3162
echo "Restarting udev"

0 commit comments

Comments
 (0)