When running a command on a file, is there anyway to reference the file without typing the entire name?











up vote
1
down vote

favorite












For example:



tar xvf test.tar.gz ;  rm test.tar.gz


Is there a faster way to reference the file name on the second execution?



I was thinking something like this (which is invalid):



tar xvf test.tar.gz ; rm $1


Anything possible?



I'm fully aware of wildcards.










share|improve this question







New contributor




user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    up vote
    1
    down vote

    favorite












    For example:



    tar xvf test.tar.gz ;  rm test.tar.gz


    Is there a faster way to reference the file name on the second execution?



    I was thinking something like this (which is invalid):



    tar xvf test.tar.gz ; rm $1


    Anything possible?



    I'm fully aware of wildcards.










    share|improve this question







    New contributor




    user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      For example:



      tar xvf test.tar.gz ;  rm test.tar.gz


      Is there a faster way to reference the file name on the second execution?



      I was thinking something like this (which is invalid):



      tar xvf test.tar.gz ; rm $1


      Anything possible?



      I'm fully aware of wildcards.










      share|improve this question







      New contributor




      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      For example:



      tar xvf test.tar.gz ;  rm test.tar.gz


      Is there a faster way to reference the file name on the second execution?



      I was thinking something like this (which is invalid):



      tar xvf test.tar.gz ; rm $1


      Anything possible?



      I'm fully aware of wildcards.







      bash






      share|improve this question







      New contributor




      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 3 hours ago









      user327021

      61




      61




      New contributor




      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      user327021 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          4
          down vote













          You could assign the file name to a variable first:



          f=test.tar.gz; tar xvf "$f"; rm "$f"


          Or use the $_ special parameter, it contains the last word of the previous command, which is often (but of course not always) the filename you've been working with:



          tar xvf test.tar.gz; rm "$_"


          As an aside, you may want to consider using tar ... && rm ..., i.e. with the && operator instead of a semicolon. That way, the rm will not run if the first command fails.






          share|improve this answer





















          • Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
            – Marco
            1 hour ago











          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "106"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });






          user327021 is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f489154%2fwhen-running-a-command-on-a-file-is-there-anyway-to-reference-the-file-without%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          4
          down vote













          You could assign the file name to a variable first:



          f=test.tar.gz; tar xvf "$f"; rm "$f"


          Or use the $_ special parameter, it contains the last word of the previous command, which is often (but of course not always) the filename you've been working with:



          tar xvf test.tar.gz; rm "$_"


          As an aside, you may want to consider using tar ... && rm ..., i.e. with the && operator instead of a semicolon. That way, the rm will not run if the first command fails.






          share|improve this answer





















          • Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
            – Marco
            1 hour ago















          up vote
          4
          down vote













          You could assign the file name to a variable first:



          f=test.tar.gz; tar xvf "$f"; rm "$f"


          Or use the $_ special parameter, it contains the last word of the previous command, which is often (but of course not always) the filename you've been working with:



          tar xvf test.tar.gz; rm "$_"


          As an aside, you may want to consider using tar ... && rm ..., i.e. with the && operator instead of a semicolon. That way, the rm will not run if the first command fails.






          share|improve this answer





















          • Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
            – Marco
            1 hour ago













          up vote
          4
          down vote










          up vote
          4
          down vote









          You could assign the file name to a variable first:



          f=test.tar.gz; tar xvf "$f"; rm "$f"


          Or use the $_ special parameter, it contains the last word of the previous command, which is often (but of course not always) the filename you've been working with:



          tar xvf test.tar.gz; rm "$_"


          As an aside, you may want to consider using tar ... && rm ..., i.e. with the && operator instead of a semicolon. That way, the rm will not run if the first command fails.






          share|improve this answer












          You could assign the file name to a variable first:



          f=test.tar.gz; tar xvf "$f"; rm "$f"


          Or use the $_ special parameter, it contains the last word of the previous command, which is often (but of course not always) the filename you've been working with:



          tar xvf test.tar.gz; rm "$_"


          As an aside, you may want to consider using tar ... && rm ..., i.e. with the && operator instead of a semicolon. That way, the rm will not run if the first command fails.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 3 hours ago









          ilkkachu

          54.8k782148




          54.8k782148












          • Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
            – Marco
            1 hour ago


















          • Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
            – Marco
            1 hour ago
















          Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
          – Marco
          1 hour ago




          Loved “$_” didn’t knew about it! Thanks a lot for your contribution, well put!
          – Marco
          1 hour ago










          user327021 is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          user327021 is a new contributor. Be nice, and check out our Code of Conduct.













          user327021 is a new contributor. Be nice, and check out our Code of Conduct.












          user327021 is a new contributor. Be nice, and check out our Code of Conduct.
















          Thanks for contributing an answer to Unix & Linux Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f489154%2fwhen-running-a-command-on-a-file-is-there-anyway-to-reference-the-file-without%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Quarter-circle Tiles

          build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

          Mont Emei