mirror of
https://github.com/MaksTinyWorkshop/_Assistant_Lead_Tech
synced 2026-04-06 13:31:43 +02:00
fix: remplacer sed par awk dans post-bmad-install pour éviter le conflit de délimiteurs
Les memories contiennent des | (listes de fichiers cibles) qui cassaient la commande sed s|...|...| sur Linux. awk n'a pas cette limitation.
This commit is contained in:
@@ -67,12 +67,11 @@ patch_agent() {
|
||||
memory="$(build_memory "$agent")"
|
||||
|
||||
# Remplacer memories: [] par le bloc injecté
|
||||
# Compatible macOS (sed -i '') et Linux (sed -i)
|
||||
if [[ "$(uname)" == "Darwin" ]]; then
|
||||
sed -i '' "s|^memories: \[\]|memories:\n - \"${memory}\"|" "$file"
|
||||
else
|
||||
sed -i "s|^memories: \[\]|memories:\n - \"${memory}\"|" "$file"
|
||||
fi
|
||||
# Utilise awk pour éviter les conflits avec les caractères spéciaux (|, <, >) dans sed
|
||||
awk -v mem="$memory" '
|
||||
/^memories: \[\]/ { print "memories:"; print " - \"" mem "\""; next }
|
||||
{ print }
|
||||
' "$file" > "${file}.tmp" && mv "${file}.tmp" "$file"
|
||||
|
||||
echo " [ok] $agent — memory injectée"
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user