Copying files interactively: “cp: overwrite”Copying recursively files with spacesPrompt when copying...

What is a term for a function that when called repeatedly, has the same effect as calling once?

When does inspiration across artforms become plagiarism

Reason Why Dimensional Travelling Would be Restricted

What do the pedals on grand pianos do?

Understanding Kramnik's play in game 1 of Candidates 2018

Can you 'upgrade' leather armor to studded leather armor without purchasing the new armor directly?

Why zero tolerance on nudity in space?

Significance and timing of "mux scans"

What is the wife of a henpecked husband called?

How can I find an Adventure or Adventure Path I need that meets certain criteria?

What's the difference between a cart and a wagon?

Can chords be played on the flute?

How to avoid being sexist when trying to employ someone to function in a very sexist environment?

Is there a German word for “analytics”?

What are these green text/line displays shown during the livestream of Crew Dragon's approach to dock with the ISS?

Contradiction with Banach Fixed Point Theorem

I can't die. Who am I?

How to add multiple differently colored borders around a node?

Does music exist in Panem? And if so, what kinds of music?

How to deny access to SQL Server to certain login over SSMS, but allow over .Net SqlClient Data Provider

Multiplication via squaring and addition

Replacement ford fiesta radiator has extra hose

Did 5.25" floppies undergo a change in magnetic coating?

When was drinking water recognized as crucial in marathon running?



Copying files interactively: “cp: overwrite”


Copying recursively files with spacesPrompt when copying multiple files?Copying files with multiple extensionsbash - Change line by line InteractivelyDoes cp -a refresh existing files, overwrite or skipcp command does not overwrite existing filesCopying files in bashCopying newer files onlyMove Directory Contents Up A Level And OVERWRITE Target Filescp -Tr overwrite behavior













3















I'm trying to figure out what words does the -interactive shell of cp accepts as input.



For your convenience, here's code that sets up files for experimentation.



touch example_file{1..3}
mkdir example_dir
cp example_file? example_dir
cp -i example_file? example_dir


The shell then asks interactively for each file whether it should be overwritten. It seems to accept all sorts of random input.



cp: overwrite 'example_dir/example_file1'? q
cp: overwrite 'example_dir/example_file2'? w
cp: overwrite 'example_dir/example_file3'? e


I tried looking into the source code of cp, but I don't know C and searching for overwrite is of no help.



As far as I can tell it accepts some words as confirmation for overwriting, and everything else is taken as a no. The problem is even words like ys seem to be accepted as yes, so I don't know what works and what doesn't.



I'd like to know how exactly does this work and to have some proof of it by means of documentation or intelligible snippets of source code.










share|improve this question







New contributor




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





















  • In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

    – Git Gud
    10 hours ago


















3















I'm trying to figure out what words does the -interactive shell of cp accepts as input.



For your convenience, here's code that sets up files for experimentation.



touch example_file{1..3}
mkdir example_dir
cp example_file? example_dir
cp -i example_file? example_dir


The shell then asks interactively for each file whether it should be overwritten. It seems to accept all sorts of random input.



cp: overwrite 'example_dir/example_file1'? q
cp: overwrite 'example_dir/example_file2'? w
cp: overwrite 'example_dir/example_file3'? e


I tried looking into the source code of cp, but I don't know C and searching for overwrite is of no help.



As far as I can tell it accepts some words as confirmation for overwriting, and everything else is taken as a no. The problem is even words like ys seem to be accepted as yes, so I don't know what works and what doesn't.



I'd like to know how exactly does this work and to have some proof of it by means of documentation or intelligible snippets of source code.










share|improve this question







New contributor




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





















  • In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

    – Git Gud
    10 hours ago
















3












3








3








I'm trying to figure out what words does the -interactive shell of cp accepts as input.



For your convenience, here's code that sets up files for experimentation.



touch example_file{1..3}
mkdir example_dir
cp example_file? example_dir
cp -i example_file? example_dir


The shell then asks interactively for each file whether it should be overwritten. It seems to accept all sorts of random input.



cp: overwrite 'example_dir/example_file1'? q
cp: overwrite 'example_dir/example_file2'? w
cp: overwrite 'example_dir/example_file3'? e


I tried looking into the source code of cp, but I don't know C and searching for overwrite is of no help.



As far as I can tell it accepts some words as confirmation for overwriting, and everything else is taken as a no. The problem is even words like ys seem to be accepted as yes, so I don't know what works and what doesn't.



I'd like to know how exactly does this work and to have some proof of it by means of documentation or intelligible snippets of source code.










share|improve this question







New contributor




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












I'm trying to figure out what words does the -interactive shell of cp accepts as input.



For your convenience, here's code that sets up files for experimentation.



touch example_file{1..3}
mkdir example_dir
cp example_file? example_dir
cp -i example_file? example_dir


The shell then asks interactively for each file whether it should be overwritten. It seems to accept all sorts of random input.



cp: overwrite 'example_dir/example_file1'? q
cp: overwrite 'example_dir/example_file2'? w
cp: overwrite 'example_dir/example_file3'? e


I tried looking into the source code of cp, but I don't know C and searching for overwrite is of no help.



As far as I can tell it accepts some words as confirmation for overwriting, and everything else is taken as a no. The problem is even words like ys seem to be accepted as yes, so I don't know what works and what doesn't.



I'd like to know how exactly does this work and to have some proof of it by means of documentation or intelligible snippets of source code.







shell cp interactive






share|improve this question







New contributor




Git Gud 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




Git Gud 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




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









asked 10 hours ago









Git GudGit Gud

1183




1183




New contributor




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





New contributor





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






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













  • In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

    – Git Gud
    10 hours ago





















  • In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

    – Git Gud
    10 hours ago



















In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

– Git Gud
10 hours ago







In the interest of making this not too localized, I can accept unintelligible source code as well, but it will be hard for me to accept an answer if I can't be convinced of what the code is doing.

– Git Gud
10 hours ago












2 Answers
2






active

oldest

votes


















6














The POSIX standard only specifies that the response need to be "affirmative" for the copying to be carried out when -i is in effect.



For GNU cp,
the actual input at that point is handled by a function called yesno(). This function is defined in the lib/yesno.c file in the gnulib source distribution, and looks like this:



bool
yesno (void)
{
bool yes;

#if ENABLE_NLS
char *response = NULL;
size_t response_size = 0;
ssize_t response_len = getline (&response, &response_size, stdin);

if (response_len <= 0)
yes = false;
else
{
/* Remove EOL if present as that's not part of the matched response,
and not matched by $ for example. */
if (response[response_len - 1] == 'n')
response[response_len - 1] = '';
yes = (0 < rpmatch (response));
}

free (response);
#else
/* Test against "^[yY]", hardcoded to avoid requiring getline,
regex, and rpmatch. */
int c = getchar ();
yes = (c == 'y' || c == 'Y');
while (c != 'n' && c != EOF)
c = getchar ();
#endif

return yes;
}


If NLS ("National Language Support") is not used, you can see that the only reply that the function returns true for is a response that starts with an upper or lower case Y character. Any additional or other input is discarded.



If NLS is used, the rpmatch() function is called to determine whether the response was affirmative or not. The purpose of the rpmatch() NLS library function is to determine whether a given string is affirmative or not (with support for internationalisation).



On BSD systems, the corresponding function is found in src/bin/cp/utils.c:



/*
* If the file exists and we're interactive, verify with the user.
*/
int
copy_overwrite(void)
{
int ch, checkch;

if (iflag) {
(void)fprintf(stderr, "overwrite %s? ", to.p_path);
checkch = ch = getchar();
while (ch != 'n' && ch != EOF)
ch = getchar();
if (checkch != 'y' && checkch != 'Y')
return (0);
}
return 1;
}


This is essentially the same as the non-NLS code path in the GNU code.






share|improve this answer


























  • Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

    – Git Gud
    9 hours ago








  • 1





    git.savannah.gnu.org/gitweb/…

    – Jeff Schaller
    9 hours ago











  • @JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

    – Git Gud
    9 hours ago





















2














If you look at the source code and search for interactive you can see that it sets x.interactive = I_ASK_USER;, so you can search in this and other files where I_ASK_USER is checked.



In copy.c you will find this symbol near a function call overwrite_ok, and this function contains a call to a function yesno.



The rest is left as an exercise for the reader. ;-)






share|improve this answer
























  • I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

    – Git Gud
    9 hours 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',
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
});


}
});






Git Gud 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%2f504262%2fcopying-files-interactively-cp-overwrite%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









6














The POSIX standard only specifies that the response need to be "affirmative" for the copying to be carried out when -i is in effect.



For GNU cp,
the actual input at that point is handled by a function called yesno(). This function is defined in the lib/yesno.c file in the gnulib source distribution, and looks like this:



bool
yesno (void)
{
bool yes;

#if ENABLE_NLS
char *response = NULL;
size_t response_size = 0;
ssize_t response_len = getline (&response, &response_size, stdin);

if (response_len <= 0)
yes = false;
else
{
/* Remove EOL if present as that's not part of the matched response,
and not matched by $ for example. */
if (response[response_len - 1] == 'n')
response[response_len - 1] = '';
yes = (0 < rpmatch (response));
}

free (response);
#else
/* Test against "^[yY]", hardcoded to avoid requiring getline,
regex, and rpmatch. */
int c = getchar ();
yes = (c == 'y' || c == 'Y');
while (c != 'n' && c != EOF)
c = getchar ();
#endif

return yes;
}


If NLS ("National Language Support") is not used, you can see that the only reply that the function returns true for is a response that starts with an upper or lower case Y character. Any additional or other input is discarded.



If NLS is used, the rpmatch() function is called to determine whether the response was affirmative or not. The purpose of the rpmatch() NLS library function is to determine whether a given string is affirmative or not (with support for internationalisation).



On BSD systems, the corresponding function is found in src/bin/cp/utils.c:



/*
* If the file exists and we're interactive, verify with the user.
*/
int
copy_overwrite(void)
{
int ch, checkch;

if (iflag) {
(void)fprintf(stderr, "overwrite %s? ", to.p_path);
checkch = ch = getchar();
while (ch != 'n' && ch != EOF)
ch = getchar();
if (checkch != 'y' && checkch != 'Y')
return (0);
}
return 1;
}


This is essentially the same as the non-NLS code path in the GNU code.






share|improve this answer


























  • Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

    – Git Gud
    9 hours ago








  • 1





    git.savannah.gnu.org/gitweb/…

    – Jeff Schaller
    9 hours ago











  • @JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

    – Git Gud
    9 hours ago


















6














The POSIX standard only specifies that the response need to be "affirmative" for the copying to be carried out when -i is in effect.



For GNU cp,
the actual input at that point is handled by a function called yesno(). This function is defined in the lib/yesno.c file in the gnulib source distribution, and looks like this:



bool
yesno (void)
{
bool yes;

#if ENABLE_NLS
char *response = NULL;
size_t response_size = 0;
ssize_t response_len = getline (&response, &response_size, stdin);

if (response_len <= 0)
yes = false;
else
{
/* Remove EOL if present as that's not part of the matched response,
and not matched by $ for example. */
if (response[response_len - 1] == 'n')
response[response_len - 1] = '';
yes = (0 < rpmatch (response));
}

free (response);
#else
/* Test against "^[yY]", hardcoded to avoid requiring getline,
regex, and rpmatch. */
int c = getchar ();
yes = (c == 'y' || c == 'Y');
while (c != 'n' && c != EOF)
c = getchar ();
#endif

return yes;
}


If NLS ("National Language Support") is not used, you can see that the only reply that the function returns true for is a response that starts with an upper or lower case Y character. Any additional or other input is discarded.



If NLS is used, the rpmatch() function is called to determine whether the response was affirmative or not. The purpose of the rpmatch() NLS library function is to determine whether a given string is affirmative or not (with support for internationalisation).



On BSD systems, the corresponding function is found in src/bin/cp/utils.c:



/*
* If the file exists and we're interactive, verify with the user.
*/
int
copy_overwrite(void)
{
int ch, checkch;

if (iflag) {
(void)fprintf(stderr, "overwrite %s? ", to.p_path);
checkch = ch = getchar();
while (ch != 'n' && ch != EOF)
ch = getchar();
if (checkch != 'y' && checkch != 'Y')
return (0);
}
return 1;
}


This is essentially the same as the non-NLS code path in the GNU code.






share|improve this answer


























  • Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

    – Git Gud
    9 hours ago








  • 1





    git.savannah.gnu.org/gitweb/…

    – Jeff Schaller
    9 hours ago











  • @JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

    – Git Gud
    9 hours ago
















6












6








6







The POSIX standard only specifies that the response need to be "affirmative" for the copying to be carried out when -i is in effect.



For GNU cp,
the actual input at that point is handled by a function called yesno(). This function is defined in the lib/yesno.c file in the gnulib source distribution, and looks like this:



bool
yesno (void)
{
bool yes;

#if ENABLE_NLS
char *response = NULL;
size_t response_size = 0;
ssize_t response_len = getline (&response, &response_size, stdin);

if (response_len <= 0)
yes = false;
else
{
/* Remove EOL if present as that's not part of the matched response,
and not matched by $ for example. */
if (response[response_len - 1] == 'n')
response[response_len - 1] = '';
yes = (0 < rpmatch (response));
}

free (response);
#else
/* Test against "^[yY]", hardcoded to avoid requiring getline,
regex, and rpmatch. */
int c = getchar ();
yes = (c == 'y' || c == 'Y');
while (c != 'n' && c != EOF)
c = getchar ();
#endif

return yes;
}


If NLS ("National Language Support") is not used, you can see that the only reply that the function returns true for is a response that starts with an upper or lower case Y character. Any additional or other input is discarded.



If NLS is used, the rpmatch() function is called to determine whether the response was affirmative or not. The purpose of the rpmatch() NLS library function is to determine whether a given string is affirmative or not (with support for internationalisation).



On BSD systems, the corresponding function is found in src/bin/cp/utils.c:



/*
* If the file exists and we're interactive, verify with the user.
*/
int
copy_overwrite(void)
{
int ch, checkch;

if (iflag) {
(void)fprintf(stderr, "overwrite %s? ", to.p_path);
checkch = ch = getchar();
while (ch != 'n' && ch != EOF)
ch = getchar();
if (checkch != 'y' && checkch != 'Y')
return (0);
}
return 1;
}


This is essentially the same as the non-NLS code path in the GNU code.






share|improve this answer















The POSIX standard only specifies that the response need to be "affirmative" for the copying to be carried out when -i is in effect.



For GNU cp,
the actual input at that point is handled by a function called yesno(). This function is defined in the lib/yesno.c file in the gnulib source distribution, and looks like this:



bool
yesno (void)
{
bool yes;

#if ENABLE_NLS
char *response = NULL;
size_t response_size = 0;
ssize_t response_len = getline (&response, &response_size, stdin);

if (response_len <= 0)
yes = false;
else
{
/* Remove EOL if present as that's not part of the matched response,
and not matched by $ for example. */
if (response[response_len - 1] == 'n')
response[response_len - 1] = '';
yes = (0 < rpmatch (response));
}

free (response);
#else
/* Test against "^[yY]", hardcoded to avoid requiring getline,
regex, and rpmatch. */
int c = getchar ();
yes = (c == 'y' || c == 'Y');
while (c != 'n' && c != EOF)
c = getchar ();
#endif

return yes;
}


If NLS ("National Language Support") is not used, you can see that the only reply that the function returns true for is a response that starts with an upper or lower case Y character. Any additional or other input is discarded.



If NLS is used, the rpmatch() function is called to determine whether the response was affirmative or not. The purpose of the rpmatch() NLS library function is to determine whether a given string is affirmative or not (with support for internationalisation).



On BSD systems, the corresponding function is found in src/bin/cp/utils.c:



/*
* If the file exists and we're interactive, verify with the user.
*/
int
copy_overwrite(void)
{
int ch, checkch;

if (iflag) {
(void)fprintf(stderr, "overwrite %s? ", to.p_path);
checkch = ch = getchar();
while (ch != 'n' && ch != EOF)
ch = getchar();
if (checkch != 'y' && checkch != 'Y')
return (0);
}
return 1;
}


This is essentially the same as the non-NLS code path in the GNU code.







share|improve this answer














share|improve this answer



share|improve this answer








edited 2 hours ago

























answered 10 hours ago









KusalanandaKusalananda

133k17254417




133k17254417













  • Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

    – Git Gud
    9 hours ago








  • 1





    git.savannah.gnu.org/gitweb/…

    – Jeff Schaller
    9 hours ago











  • @JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

    – Git Gud
    9 hours ago





















  • Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

    – Git Gud
    9 hours ago








  • 1





    git.savannah.gnu.org/gitweb/…

    – Jeff Schaller
    9 hours ago











  • @JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

    – Git Gud
    9 hours ago



















Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

– Git Gud
9 hours ago







Thanks a lot. I was unable to find the source other than on opencoverage.net. Any chance you can link to it on git.savannah.gnu.org ? As I understand it (and correct me if I'm wrong), this is the closest to the truth that we can have (other than looking into what's inside one's machine), so a link there would be very much appreciated.

– Git Gud
9 hours ago






1




1





git.savannah.gnu.org/gitweb/…

– Jeff Schaller
9 hours ago





git.savannah.gnu.org/gitweb/…

– Jeff Schaller
9 hours ago













@JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

– Git Gud
9 hours ago







@JeffSchaller Thank you very much. I suggested an edit to the answer in order to include this.

– Git Gud
9 hours ago















2














If you look at the source code and search for interactive you can see that it sets x.interactive = I_ASK_USER;, so you can search in this and other files where I_ASK_USER is checked.



In copy.c you will find this symbol near a function call overwrite_ok, and this function contains a call to a function yesno.



The rest is left as an exercise for the reader. ;-)






share|improve this answer
























  • I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

    – Git Gud
    9 hours ago
















2














If you look at the source code and search for interactive you can see that it sets x.interactive = I_ASK_USER;, so you can search in this and other files where I_ASK_USER is checked.



In copy.c you will find this symbol near a function call overwrite_ok, and this function contains a call to a function yesno.



The rest is left as an exercise for the reader. ;-)






share|improve this answer
























  • I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

    – Git Gud
    9 hours ago














2












2








2







If you look at the source code and search for interactive you can see that it sets x.interactive = I_ASK_USER;, so you can search in this and other files where I_ASK_USER is checked.



In copy.c you will find this symbol near a function call overwrite_ok, and this function contains a call to a function yesno.



The rest is left as an exercise for the reader. ;-)






share|improve this answer













If you look at the source code and search for interactive you can see that it sets x.interactive = I_ASK_USER;, so you can search in this and other files where I_ASK_USER is checked.



In copy.c you will find this symbol near a function call overwrite_ok, and this function contains a call to a function yesno.



The rest is left as an exercise for the reader. ;-)







share|improve this answer












share|improve this answer



share|improve this answer










answered 10 hours ago









BodoBodo

1,993314




1,993314













  • I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

    – Git Gud
    9 hours ago



















  • I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

    – Git Gud
    9 hours ago

















I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

– Git Gud
9 hours ago





I honestly appreciate the exercise, and even chuckled. Alas, I was unable to find the source code and for this reason I'm preferring Kusalananda's answer a little more. Thank you very much.

– Git Gud
9 hours ago










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










draft saved

draft discarded


















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













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












Git Gud 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.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f504262%2fcopying-files-interactively-cp-overwrite%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

Cannot install PyQt5 The Next CEO of Stack OverflowCannot install tcpreplay 3.4.4cannot...

Kapp-Putsch Acontecimentos | Outros artigos | Menu de navegação

Why did early computer designers eschew integers? The Next CEO of Stack OverflowWhat register...