Pourquoi PowerShell reconnaît-il le «travail» comme une commande
Dans ma session Powershell, le mot jobest reconnu comme une "action invocable":
PS C:\Users\Rene\> job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Completed True localhost ...
3 Job3 BackgroundJob Completed True localhost ...
5 Job5 BackgroundJob Completed True localhost ...
7 Job7 BackgroundJob Completed True localhost ...
9 Job9 BackgroundJob Completed True localhost ...
La sortie de jobest la même que de get-job. Donc, j'ai supposé que jobc'était une fonction ou un alias ou un cmdLet. Pourtant, cela ne semble pas être le cas:
PS C:\Users\Rene> get-command job
get-command : The term 'job' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path
was included, verify that the path is correct and try again.
Donc, si ce jobn'est ni une applet de commande, ni une fonction, ni un alias, ni un fichier de script, qu'est-ce que c'est?
Réponses
vous avez découvert comment PoSh décide de ce que vous avez l' intention d'exécuter. [ sourire ] pour ce qui se passe, voici ce que l'on m'a dit ou vu.
lorsque vous entrez une commande, PoSh recherche ...
- la commande exacte que vous avez entrée
- pour la commande exacte dans la liste des chemins du système d'exploitation
- la commande avec
Get-préfixe
cette séquence correspond à ce que je me souviens de ce que j'ai lu ou vécu, mais j'ai peut-être omis une étape ou deux.
bien que je n'ai jamais trouvé de documents officiels à ce sujet, plusieurs personnes de chez /r/powershellnous en ont posté au cours des dernières années. Je suppose que l'on pourrait creuser dans le code PowerShell Github et trouver le processus, mais je ne l'ai jamais fait. [ rougir ]
Je suppose également que tout site de golf de code axé sur PoSh aurait également des idées sur ce que tout est impliqué.