{"id":84550,"date":"2020-10-12T10:01:44","date_gmt":"2020-10-12T10:01:44","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=idea&#038;p=84550"},"modified":"2020-10-14T06:33:34","modified_gmt":"2020-10-14T06:33:34","slug":"utilisation-du-terminal-dans-intellij-idea","status":"publish","type":"idea","link":"https:\/\/blog.jetbrains.com\/fr\/idea\/2020\/10\/utilisation-du-terminal-dans-intellij-idea\/","title":{"rendered":"Utilisation du terminal dans IntelliJ IDEA"},"content":{"rendered":"<p>Dans cette vid\u00e9o, nous vous pr\u00e9sentons le <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html\" target=\"_blank\" rel=\"noopener\">Terminal int\u00e9gr\u00e9 d&#8217;IntelliJ IDEA<\/a>. Il remplit la m\u00eame fonction que le terminal ou la fonctionnalit\u00e9 de commande de votre syst\u00e8me d&#8217;exploitation mais offre un certain nombre d&#8217;avantages.<\/p>\n<p><iframe loading=\"lazy\" title=\"IntelliJ IDEA. Utilisation du terminal (2020)\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/tlEkrWU0d1M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h2>Ouverture de la Fen\u00eatre du Terminal d&#8217;IntelliJ IDEA<\/h2>\n<p>Dans cet exemple, nous avons une application Spring Boot simple qui n\u00e9cessite une <a href=\"https:\/\/www.mongodb.com\/\" target=\"_blank\" rel=\"noopener\">base de donn\u00e9es MongoDB<\/a> en cours d&#8217;ex\u00e9cution. Nous pouvons <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html#open-terminal\" target=\"_blank\" rel=\"noopener\">ouvrir la fen\u00eatre du terminal<\/a> avec <strong>\u2325F12<\/strong> sous macOS, ou <strong>Alt<\/strong> + <strong>F12<\/strong> sous Windows et Linux. Le terminal prend en charge les m\u00eames commandes que le syst\u00e8me d&#8217;exploitation. <\/p>\n<p>Pour d\u00e9marrer l&#8217;instance de base de donn\u00e9es MongoDB <a href=\"https:\/\/docs.mongodb.com\/manual\/tutorial\/manage-mongodb-processes\/#specify-a-data-directory\" target=\"_blank\" rel=\"noopener\"> avec un chemin sp\u00e9cifique pour stocker les donn\u00e9es<\/a>, nous pouvons saisir\u00a0: <\/p>\n<p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"\">mongod --dbpath [path to data here]<\/pre>\n<\/p>\n<p>et appuyer sur Entr\u00e9e. Lorsque MongoDB s&#8217;ex\u00e9cute dans la session du terminal, nous pouvons revenir \u00e0 l&#8217;\u00e9criture du code de l&#8217;application dans l&#8217;\u00e9diteur. L&#8217;utilisation du terminal int\u00e9gr\u00e9 \u00e9vite d&#8217;avoir \u00e0 passer d&#8217;une application \u00e0 l&#8217;autre et permet d&#8217;avoir tous les aspects de notre d\u00e9veloppement sous les yeux dans la m\u00eame fen\u00eatre.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/00-mongodb.png\" alt=\"MongoDB dans le terminal\" \/><\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=20\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em><\/p>\n<h2>Utiliser plusieurs sessions du Terminal<\/h2>\n<p>Pour ex\u00e9cuter le shell MongoDB en tant que nouvelle commande, <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html#new_session\" target=\"_blank\" rel=\"noopener\">ouvrez un second onglet du terminal<\/a> avec <strong>\u2318T<\/strong> sous macOS ou <strong>Ctrl<\/strong> + <strong>Maj<\/strong> + <strong>T<\/strong> sous Windows et Linux :<\/p>\n<p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"\">mongo<\/pre>\n<\/p>\n<p>Vous pouvez ensuite interagir avec le serveur afin de v\u00e9rifier que tout est ok pour votre application.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/01-mongo-shell.png\" alt=\"Shell MongoDB\" \/><\/p>\n<p>La possibilit\u00e9 d&#8217;ex\u00e9cuter des commandes dans plusieurs onglet est pratique dans certains cas, mais lorsque deux processus diff\u00e9rents sont \u00e9troitement li\u00e9s il est pr\u00e9f\u00e9rable de pouvoir les visualiser et les ex\u00e9cuter ensemble. Pour ce faire, nous pouvons <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/using-code-editor.html#split_screen\" target=\"_blank\" rel=\"noopener\">diviser<\/a> notre fen\u00eatre de terminal. Vous pouvez par exemple ouvrir le shell Mongo dans cette fen\u00eatre fractionn\u00e9e pour voir si les commandes ont un impact sur le serveur en cours d&#8217;ex\u00e9cution.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/01-mongo-shell.png\" alt=\"Diviser la fen\u00eatre du terminal\" \/><\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=74\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>Attribution d&#8217;un nom aux onglets du Terminal<\/h2>\n<p>Il est possible d&#8217;ex\u00e9cuter n&#8217;importe quel type de commande \u00e0 partir de la fen\u00eatre du terminal. Par exemple, bien qu&#8217;IntelliJ IDEA b\u00e9n\u00e9ficie d&#8217;une int\u00e9gration compl\u00e8te avec Gradle, nous pouvons parfois souhaiter v\u00e9rifier qu&#8217;un outil de build comme Gradle ou Maven fonctionne correctement \u00e0 partir de la ligne de commande, par exemple, pour le tester avec diff\u00e9rentes versions de Java ou des arguments diff\u00e9rents de ceux que nous utilisons dans l&#8217;application. Sachant nous pourrons \u00eatre amen\u00e9s \u00e0 utiliser un grand nombre de sessions de terminal avec des processus ou des param\u00e8tres diff\u00e9rents, il est recommand\u00e9 de renommer les onglets de fa\u00e7on pertinente. C&#8217;est possible \u00e0 partir du menu contextuel, que vous pouvez ouvrir en cliquant avec le bouton droit sur l&#8217;onglet. Cela nous permet de rouvrir facilement celui qui nous int\u00e9resse. <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/03-rename-tab.png\" alt=\"Renommer un onglet du terminal\" \/><\/p>\n<p>Pour <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html#new_session\" target=\"_blank\" rel=\"noopener\">vous d\u00e9placer entre les diff\u00e9rents onglets<\/a>, utilisez <strong>\u2318\u21e7[<\/strong> et <strong>\u2318\u21e7]<\/strong> sous macOS, ou <strong>Alt<\/strong>+<strong>\u2190<\/strong> et <strong>Alt<\/strong>+<strong>\u2192<\/strong> sous Windows et Linux. Vous pouvez passer d&#8217;une partie \u00e0 l&#8217;autre avec <strong>\u2325\u21e5<\/strong> sur macOS, ou <strong>Ctrl<\/strong>+<strong>Tab<\/strong> sous Windows et Linux. Pour fermer les parties fractionn\u00e9es ou les onglets, utilisez <strong>\u2318W<\/strong> sous macOS ou <strong>Ctrl<\/strong>+<strong>F4<\/strong> sous Windows et Linux. <\/p>\n<p>Lorsque vous red\u00e9marrez IntelliJ IDEA, les noms des session du terminal et autres param\u00e8tres sont conserv\u00e9s.<\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=123\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>Coller du code de l&#8217;\u00c9diteur dans le Terminal<\/h2>\n<p>L&#8217;ex\u00e9cution de processus de ligne de commande \u00e0 partir d&#8217;IntelliJ IDEA permet de rester dans le m\u00eame contexte pendant le d\u00e9veloppement et de partager du contenu entre diff\u00e9rentes parties de notre application. Par exemple, si nous ex\u00e9cutons le REPL Java JShell dans une fen\u00eatre du terminal d&#8217;IntelliJ IDEA, il est facile de copier du code dans l&#8217;\u00e9diteur et de le coller dans JShell. Cela n\u2019est pas sp\u00e9cifique \u00e0 l\u2019ex\u00e9cution de JShell dans le terminal, il est facile de copier du code depuis n\u2019importe quel emplacement dans IntelliJ IDEA pour le coller dans la fen\u00eatre du terminal.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/04-paste.png\" alt=\"Coller du code\" \/><br \/>\n<em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=211\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>Emplacements du terminal depuis la fen\u00eatre de commande<\/h2>\n<p>L&#8217;int\u00e9gration fournie par l&#8217;EDI permet \u00e9galement <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html#open-terminal\" target=\"_blank\" rel=\"noopener\">d&#8217;ouvrir un emplacement depuis l&#8217;int\u00e9rieur de la fen\u00eatre du projet<\/a> dans la fen\u00eatre du terminal \u00e0 partir du menu contextuel. Faites un clic droit sur un \u00e9l\u00e9ment dans la fen\u00eatre Project et s\u00e9lectionnez \u00ab Open in Terminal \u00bb. Nous pouvons donc avoir une fen\u00eatre de terminal au bon endroit imm\u00e9diatement, sans avoir \u00e0 naviguer \u00e0 l&#8217;aide de la ligne de commande.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/05-open-in-terminal.png\" alt=\"Shell MongoDB\" \/><\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=249\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>URL et Traces de pile dans la Fen\u00eatre du Terminal<\/h2>\n<p>Les URL dans la fen\u00eatre du terminal sont cliquables, nous pouvons donc cliquer sur n&#8217;importe quel lien qui y est affich\u00e9 pour l&#8217;ouvrir dans le navigateur. Les noms de fichiers dans le terminal peuvent \u00e9galement renvoyer au fichier dans le projet. Si vous cliquez sur le nom du fichier dans les traces de pile IntelliJ IDEA l&#8217;ouvrira et placera le caret sur la ligne qui est \u00e0 l&#8217;origine du probl\u00e8me. Cela permet d&#8217;att\u00e9nuer les probl\u00e8mes de d\u00e9bogage.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/06-clickable-links.png\" alt=\"URL dans le Terminal\" \/><\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=286\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>Ex\u00e9cuter les fonctionnalit\u00e9s de l&#8217;EDI \u00e0 partir du Terminal<\/h2>\n<p>Vous remarquez peut-\u00eatre que certaines commandes de la fen\u00eatre du terminal sont mises en surbrillance. Il s&#8217;agit d&#8217;une <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html#smart-command-execution\" target=\"_blank\" rel=\"noopener\">nouvelle fonctionnalit\u00e9 d&#8217;IntelliJ IDEA 2020.2<\/a> qui montre que la commande peut \u00eatre ex\u00e9cut\u00e9e dans l&#8217;EDI. Nous n&#8217;avons donc pas besoin d&#8217;utiliser la ligne de commande. <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/07-yellow-highlight.png\" alt=\"URL dans le Terminal\" \/><\/p>\n<p>Si une commande est surlign\u00e9e en jaune et que nous appuyons sur <strong>Entr\u00e9e<\/strong>, elle s&#8217;ex\u00e9cutera dans la fen\u00eatre du terminal comme pr\u00e9vu. Si nous tapons \u00e0 nouveau la m\u00eame commande, mais cette fois avec <strong>\u2318\u23ce<\/strong> sous macOS ou <strong>Ctrl<\/strong> + <strong>Entr\u00e9e<\/strong> sous Windows et Linux, IntelliJ IDEA utilisera la fonctionnalit\u00e9 dans IntelliJ IDEA et ouvrira la fen\u00eatre d&#8217;outils appropri\u00e9e. <\/p>\n<p>IntelliJ IDEA d\u00e9tecte un certain nombre de commandes diff\u00e9rentes qui pourraient \u00eatre ex\u00e9cut\u00e9es dans l&#8217;EDI plut\u00f4t qu&#8217;\u00e0 partir de la ligne de commande. Par exemple, la commande git\u00a0:<\/p>\n<p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"\">git log<\/pre>\n<\/p>\n<p>s&#8217;ex\u00e9cutera normalement si nous appuyons sur <strong>Entr\u00e9e<\/strong>. Si nous appuyons sur <strong>\u2318\u23ce<\/strong> sous macOS ou sur <strong>Ctrl<\/strong> + <strong>Entr\u00e9e<\/strong> sous Windows et Linux, la <a href=\"https:\/\/www.jetbrains.com\/help\/idea\/log-tab.html\" target=\"_blank\" rel=\"noopener\">fen\u00eatre Git log<\/a> s&#8217;ouvre dans IntelliJ IDEA. <\/p>\n<p>C&#8217;est un excellent moyen de d\u00e9couvrir les fonctionnalit\u00e9s de l&#8217;EDI qui offrent une alternative \u00e0 l&#8217;utilisation de la ligne de commande. Si vous pensez ne pas avoir besoin de ces suggestions, vous pouvez d\u00e9sactiver &#8220;Run IDE Features from the Terminal&#8221; dans les param\u00e8tres de la fen\u00eatre du terminal \u00e0 l&#8217;aide du menu contextuel. Les commandes ne seront alors plus mises en \u00e9vidence.<\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=327\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<h2>En r\u00e9sum\u00e9<\/h2>\n<p><a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html\" target=\"_blank\" rel=\"noopener\">La fen\u00eatre du terminal d&#8217;IntelliJ IDEA<\/a> est un outil puissant et utile pour les d\u00e9veloppeurs. Il nous permet de maintenir notre attention sur les m\u00eames outils et r\u00e9duit le nombre de changements de contexte. Il nous est plus facile de partager les choses entre l&#8217;\u00e9diteur et la ligne de commande. Le terminal \u00e9tant int\u00e9gr\u00e9, il est facile de se d\u00e9placer du code du projet vers le terminal et inversement. Cela nous donne aussi des moyens alternatifs pour effectuer une m\u00eame op\u00e9ration, en utilisant la version EDI de l&#8217;outil de ligne de commande.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/09\/08-different-java-home.png\" alt=\"URL dans le Terminal\" \/><\/p>\n<p><em><a href=\"https:\/\/youtu.be\/tlEkrWU0d1M?t=422\" target=\"_blank\" rel=\"noopener\">Voir les \u00e9tapes en vid\u00e9o<\/a><\/em>  <\/p>\n<p>Voir aussi :<\/p>\n<ul>\n<li><a href=\"https:\/\/blog.jetbrains.com\/idea\/2020\/07\/run-ide-features-from-the-terminal\/\">Ex\u00e9cuter les fonctionnalit\u00e9s de l&#8217;EDI \u00e0 partir du Terminal<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/idea\/terminal-emulator.html\" target=\"_blank\" rel=\"noopener\">Documentation d&#8217;aide pour le Terminal<\/a><\/li>\n<\/ul>\n<p><em>Auteur de l&#8217;article original en anglais : <a href=\"https:\/\/blog.jetbrains.com\/author\/helen-scott-jetbrains-com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Helen Scott<\/a><\/em><\/p>\n","protected":false},"author":813,"featured_media":79537,"comment_status":"closed","ping_status":"closed","template":"","categories":[4759],"tags":[2004],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/idea\/84550"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/idea"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/idea"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/comments?post=84550"}],"version-history":[{"count":3,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/idea\/84550\/revisions"}],"predecessor-version":[{"id":84554,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/idea\/84550\/revisions\/84554"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media\/79537"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=84550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=84550"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=84550"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=84550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}