Maison >développement back-end >Golang >Go Build supprimer les informations
Éditeur php Baicao Go Build est un puissant outil de suppression d'informations, qui peut aider les utilisateurs à supprimer toutes sortes d'informations rapidement et efficacement. Qu'il s'agisse de supprimer des informations inutiles, de nettoyer le spam, d'effacer la vie privée ou d'effacer l'historique de navigation, Go Build peut le gérer facilement. Grâce à son algorithme intelligent, les utilisateurs peuvent effectuer la tâche de suppression d’informations en quelques étapes simples. Go Build est non seulement simple à utiliser, mais également sûr et fiable, protégeant la vie privée des utilisateurs contre toute violation. Qu'il s'agisse d'un utilisateur individuel ou d'un utilisateur d'entreprise, Go Build est un outil indispensable qui rend la suppression des informations plus pratique et efficace.
Je peux déjà utiliser Go Build pour supprimer les informations du répertoire actuel du projet, et je peux également supprimer les informations Gopath, comme suit, je ne peux en supprimer qu'une individuellement maintenant
go build -gcflags“all=-trimpath=${GOPATH}”-asmflags“all=-trimpath=${GOPATH}”
Mais je ne sais pas comment les supprimer en même temps, je ne sais pas comment les combiner
Sous Windows, j'essaie ceci
go build -gcflags“all=-trimpath=%CD%” -asmflags“all=-trimpath=%CD%” -gcflags“all=-trimpath=%GOPATH%” -asmflags“all=-trimpath=%” GOPATH%"
Ne fonctionne pas
@ZekeLu, la réponse est correcte.
Je veux expliquer ce qui s'est passé, je voulais à l'origine supprimer les informations GOROOT, mais j'ai écrit GOPATH, donc j'ai pensé que la deuxième réponse de @ZekeLu était fausse, maintenant je l'ai modifiée et testée, pas de problème, les deux réponses Pour p>
essayez cette commande :
go build -trimpath
Voici la documentation du -trimpath
flag de la commande go :
-Chemin de coupe
Supprimez tous les chemins du système de fichiers de l'exécutable généré. Nom de fichier enregistré au lieu du chemin absolu du système de fichiers démarrera le chemin du module @ version (lors de l'utilisation de modules), Ou un chemin d'importation normal (lors de l'utilisation de la bibliothèque standard ou de gopath).
Si vous souhaitez simplement supprimer certains préfixes, vous pouvez faire ceci :
go build -gcflags "all=-trimpath=%cd%;%gopath%" -asmflags "all=-trimpath=%cd%;%gopath%"La
commandecompile et la commande asm appellent objabi.applyrewrites
pour élaguer les chemins. Selon l'implémentation.applyrewritesobjabi.applyrewrites
来修剪路径。根据 objabi 的实现.applyrewrites,rewrites
d'objabi, le paramètre rewrites
est une réécriture séparée par ; Écrivez une liste.
// ApplyRewrites returns the filename for file in the given directory, // as rewritten by the rewrites argument. // // The rewrites argument is a ;-separated list of rewrites. // Each rewrite is of the form "prefix" or "prefix=>replace", // where prefix must match a leading sequence of path elements // and is either removed entirely or replaced by the replacement. func ApplyRewrites(file, rewrites string) (string, bool) { start := 0 for i := 0; i <= len(rewrites); i++ { if i == len(rewrites) || rewrites[i] == ';' { if new, ok := applyRewrite(file, rewrites[start:i]); ok { return new, true } start = i + 1 } } return file, false }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!