Clobbering
Template:Short description Script error: No such module "Unsubst".
In computing, clobbering is the act of overwriting a resource such as a file, processor register or a region of memory, such that its content is lost. Generally, the term is used in the context of unintentional loss of information, but it can be used for intentional overwriting as well.[1] The Jargon File defines clobbering as
<templatestyles src="Template:Blockquote/styles.css" />
To overwrite, usually unintentionally: "I walked off the end of the array and clobbered the stack." Compare mung, scribble, trash, and smash the stack.[2]
Script error: No such module "Check for unknown parameters".
Examples
File redirection
In many shells, the > file redirection operator clobbers if the output path refers to an existing file. This can be prevented in bash and ksh via the command set -o noclobber and in csh and tcsh via set noclobber. Subsequently, attempting to clobber via redirection fails with an error message.[3] For example:
$ echo "Hello, world" >file.txt
$ cat file.txt
Hello, world
$ echo "This will overwrite the first greeting." >file.txt
$ cat file.txt
This will overwrite the first greeting.
$ set -o noclobber
$ echo "Can we overwrite it again?" >file.txt
-bash: file.txt: cannot overwrite existing file
$ echo "But we can use the >| operator to ignore the noclobber." >|file.txt
$ cat file.txt # Successfully overwrote the contents of file.txt using the >| operator
But we can use the >| operator to ignore the noclobber.
$ set +o noclobber # Changes setting back
File mv and cp
The default behavior of the mv and cp commands is to clobber an existing destination file. This behavior may be overridden via the -i option which results in prompting the user to confirm clobbering a file. Alternatively, the -n option selects to skip operations that would clobber.
Makefiles
A commonly used make
target, named clobber, performs a complete cleanup of files and directories produced via previous invocations of the command for a particular makefile.[4] It is a more thorough cleanup operation than clean and is commonly used to uninstall software. Some make-related commands invoke make clobber during their execution. They check the CLOBBER environment variable. If it is set to OFF then clobbering is not done.[5]
Assembly
In assembler programming (including GCC inline assembly[6]) a clobbered register denotes a register whose value may be overwritten in the course of executing an instruction.
References
<templatestyles src="Reflist/styles.css" />
- ↑ Script error: No such module "citation/CS1".
- ↑ "Clobber" in the Jargon File
- ↑ "Unix Power Tools", by Shelley Powers, Jerry Peek, Tim O'Reilly, Mike Loukides, p. 892
- ↑ UNIX System V, Release 4, Motorola Unix, Motorola, inc, inc Motorola, p. 28
- ↑ "Unix Unleashed", by Robin Burk, David B. Horvath
- ↑ Script error: No such module "citation/CS1".
Script error: No such module "Check for unknown parameters".