Differences between revisions 1 and 4 (spanning 3 versions)
Revision 1 as of 2012-09-25 09:02:30
Size: 931
Comment:
Revision 4 as of 2012-09-25 09:17:14
Size: 1167
Comment:
Deletions are marked like this. Additions are marked like this.
Line 13: Line 13:
'ls > list' {{{
ls > list
}}}
Line 15: Line 17:
'set -o noclobber' Try setting noclobber

{{{
set -o noclobber
}}}
Line 19: Line 25:
'ls > list' {{{
ls > list
Line 21: Line 28:
}}}
Line 26: Line 33:
'ls >| list' {{{
ls >| list
}}}

=== Unset noclobber ===

Just like setting unclobber, it is also possible to unset it so overwriting can take place using '>' redirection operator.
{{{
set +o noclobber
}}}
Line 35: Line 51:
CategoryCategory CategoryCategory CategoryShell CategoryBashguide 

Use of noclobber

When setting 'noclobber' overwriting the content of an existing file by the '>' redirection operator will not be possible. You might have typed '>' to redirect the output of a certain command to an existing file, while you intended to use '>>' redirection operator. This is where 'noclobber' comes in action, preventing you from accidentally deleting the content of the existing file.

How to use it

ls > list

Try setting noclobber

set -o noclobber

Try again

ls > list
bash: list: cannot overwrite existing file 

How to overwrite the file even with noclobber set

If you are determined to overwrite the file you can use the '>|' method. Thus

ls >| list 

Unset noclobber

Just like setting unclobber, it is also possible to unset it so overwriting can take place using '>' redirection operator.

set +o noclobber

List of pages in this category:


CategoryShell CategoryBashguide

NoClobber (last edited 2012-09-27 12:53:11 by Valentin Bajrami)