Escape a backup date in a file namethe slash (/) after a directory name on shell commandsDate time in Linux...

How can I kill an app using Terminal?

Proof of work - lottery approach

India just shot down a satellite from the ground. At what altitude range is the resulting debris field?

Does "every" first-order theory have a finitely axiomatizable conservative extension?

What is paid subscription needed for in Mortal Kombat 11?

A particular customize with green line and letters for subfloat

Increase performance creating Mandelbrot set in python

How can we prove that any integral in the set of non-elementary integrals cannot be expressed in the form of elementary functions?

What is the opposite of 'gravitas'?

Why are there no referendums in the US?

What does the word "Atten" mean?

How does Loki do this?

Short story about space worker geeks who zone out by 'listening' to radiation from stars

Unreliable Magic - Is it worth it?

Class Action - which options I have?

How to run a prison with the smallest amount of guards?

Customer Requests (Sometimes) Drive Me Bonkers!

when is out of tune ok?

Balance Issues for a Custom Sorcerer Variant

As a short term trader, do I personally have to keep track of every wash sale for tax purposes?

How does the UK government determine the size of a mandate?

How do we know the LHC results are robust?

How does buying out courses with grant money work?

Trouble understanding the speech of overseas colleagues



Escape a backup date in a file name


the slash (/) after a directory name on shell commandsDate time in Linux bashCreate sub-directories and organize files by date from file nameWhat is the difference between a directory name that ends with a slash and one that does not?How do you put date and time in a file name?adding date to beginning of file name using scripttcsh - echo escape code for escapeConvert date in bash shellHow to adjust the Exif timestamp of a photo using the date in its nameshell script to walk folders and sub-folders, convert timestamp to UTC format and export .csv file













3















I have been trying to:



cp file.csv file.$(date +%D).csv


But it fails because the filenames is: file.03/27/19.csv with the slash of separate directories.



And I have been trying again to:



cp file.csv file.$(printf "%q" $(date +%D)).csv


But it still fails.










share|improve this question

























  • You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

    – tres.14159
    5 hours ago











  • the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

    – 0xSheepdog
    5 hours ago


















3















I have been trying to:



cp file.csv file.$(date +%D).csv


But it fails because the filenames is: file.03/27/19.csv with the slash of separate directories.



And I have been trying again to:



cp file.csv file.$(printf "%q" $(date +%D)).csv


But it still fails.










share|improve this question

























  • You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

    – tres.14159
    5 hours ago











  • the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

    – 0xSheepdog
    5 hours ago
















3












3








3








I have been trying to:



cp file.csv file.$(date +%D).csv


But it fails because the filenames is: file.03/27/19.csv with the slash of separate directories.



And I have been trying again to:



cp file.csv file.$(printf "%q" $(date +%D)).csv


But it still fails.










share|improve this question
















I have been trying to:



cp file.csv file.$(date +%D).csv


But it fails because the filenames is: file.03/27/19.csv with the slash of separate directories.



And I have been trying again to:



cp file.csv file.$(printf "%q" $(date +%D)).csv


But it still fails.







shell filenames date escape-characters slash






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 31 mins ago









Gilles

544k12811041621




544k12811041621










asked 5 hours ago









tres.14159tres.14159

2612




2612













  • You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

    – tres.14159
    5 hours ago











  • the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

    – 0xSheepdog
    5 hours ago





















  • You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

    – tres.14159
    5 hours ago











  • the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

    – 0xSheepdog
    5 hours ago



















You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

– tres.14159
5 hours ago





You can not set a filename with slash characters: stackoverflow.com/questions/9847288/…

– tres.14159
5 hours ago













the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

– 0xSheepdog
5 hours ago







the problem is your use of the date format using the / character. You said it yourself, the shell is seeing them as directory markers. Try one of the many other options available from date. You might be able to get the / escaped so the filename uses the character code (like putting a space in a filename), but that is often problematic.

– 0xSheepdog
5 hours ago












1 Answer
1






active

oldest

votes


















10














You can't have / (byte 0x2F on ASCII-based systems) in a file name, period.



You can use characters that look like / like (fraction slash), so you could do:



 cp file.csv "file.$(date +%D | sed 's|/|⁄|g').csv"


But you may run into problems like the file name being rendered differently in locales using a different charset.



My advice would be to use the standard non-ambiguous (for most people outside the US, 03/12/18 would be interpreted as the 3rd of December 2018 for instance) YYYY-mm-dd format instead (which also helps wrt sorting):



 cp file.csv "file.$(date +%Y-%m-%d).csv"


Which with many date implementations you can shorten to:



 cp file.csv "file.$(date +%F).csv"





share|improve this answer

























    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',
    autoActivateHeartbeat: false,
    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
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f509043%2fescape-a-backup-date-in-a-file-name%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









    10














    You can't have / (byte 0x2F on ASCII-based systems) in a file name, period.



    You can use characters that look like / like (fraction slash), so you could do:



     cp file.csv "file.$(date +%D | sed 's|/|⁄|g').csv"


    But you may run into problems like the file name being rendered differently in locales using a different charset.



    My advice would be to use the standard non-ambiguous (for most people outside the US, 03/12/18 would be interpreted as the 3rd of December 2018 for instance) YYYY-mm-dd format instead (which also helps wrt sorting):



     cp file.csv "file.$(date +%Y-%m-%d).csv"


    Which with many date implementations you can shorten to:



     cp file.csv "file.$(date +%F).csv"





    share|improve this answer






























      10














      You can't have / (byte 0x2F on ASCII-based systems) in a file name, period.



      You can use characters that look like / like (fraction slash), so you could do:



       cp file.csv "file.$(date +%D | sed 's|/|⁄|g').csv"


      But you may run into problems like the file name being rendered differently in locales using a different charset.



      My advice would be to use the standard non-ambiguous (for most people outside the US, 03/12/18 would be interpreted as the 3rd of December 2018 for instance) YYYY-mm-dd format instead (which also helps wrt sorting):



       cp file.csv "file.$(date +%Y-%m-%d).csv"


      Which with many date implementations you can shorten to:



       cp file.csv "file.$(date +%F).csv"





      share|improve this answer




























        10












        10








        10







        You can't have / (byte 0x2F on ASCII-based systems) in a file name, period.



        You can use characters that look like / like (fraction slash), so you could do:



         cp file.csv "file.$(date +%D | sed 's|/|⁄|g').csv"


        But you may run into problems like the file name being rendered differently in locales using a different charset.



        My advice would be to use the standard non-ambiguous (for most people outside the US, 03/12/18 would be interpreted as the 3rd of December 2018 for instance) YYYY-mm-dd format instead (which also helps wrt sorting):



         cp file.csv "file.$(date +%Y-%m-%d).csv"


        Which with many date implementations you can shorten to:



         cp file.csv "file.$(date +%F).csv"





        share|improve this answer















        You can't have / (byte 0x2F on ASCII-based systems) in a file name, period.



        You can use characters that look like / like (fraction slash), so you could do:



         cp file.csv "file.$(date +%D | sed 's|/|⁄|g').csv"


        But you may run into problems like the file name being rendered differently in locales using a different charset.



        My advice would be to use the standard non-ambiguous (for most people outside the US, 03/12/18 would be interpreted as the 3rd of December 2018 for instance) YYYY-mm-dd format instead (which also helps wrt sorting):



         cp file.csv "file.$(date +%Y-%m-%d).csv"


        Which with many date implementations you can shorten to:



         cp file.csv "file.$(date +%F).csv"






        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited 4 hours ago

























        answered 5 hours ago









        Stéphane ChazelasStéphane Chazelas

        311k57588946




        311k57588946






























            draft saved

            draft discarded




















































            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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f509043%2fescape-a-backup-date-in-a-file-name%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

            What is the “three and three hundred thousand syndrome”?Who wrote the book Arena?What five creatures were...

            Gersau Kjelder | Navigasjonsmeny46°59′0″N 8°31′0″E46°59′0″N...

            Hestehale Innhaldsliste Hestehale på kvinner | Hestehale på menn | Galleri | Sjå òg |...