Only create a command line replacer once

Test: CI
Change-Id: Ibb9b822aea808c936fedc4c8fea7b7d787b101d5
diff --git a/bazel/aquery.go b/bazel/aquery.go
index 6a5e054..6af472a 100644
--- a/bazel/aquery.go
+++ b/bazel/aquery.go
@@ -671,17 +671,18 @@
 	return replacer.Replace(actionEntry.TemplateContent)
 }
 
+// \->\\, $->\$, `->\`, "->\", \n->\\n, '->'"'"'
+var commandLineArgumentReplacer = strings.NewReplacer(
+	`\`, `\\`,
+	`$`, `\$`,
+	"`", "\\`",
+	`"`, `\"`,
+	"\n", "\\n",
+	`'`, `'"'"'`,
+)
+
 func escapeCommandlineArgument(str string) string {
-	// \->\\, $->\$, `->\`, "->\", \n->\\n, '->'"'"'
-	replacer := strings.NewReplacer(
-		`\`, `\\`,
-		`$`, `\$`,
-		"`", "\\`",
-		`"`, `\"`,
-		"\n", "\\n",
-		`'`, `'"'"'`,
-	)
-	return replacer.Replace(str)
+	return commandLineArgumentReplacer.Replace(str)
 }
 
 func (a action) isSymlinkAction() bool {