BASH Shell Test If a File Is Writable or Not

BASH Shell Test If a File Is Writable or Not

To test if a file is writable in a Bash shell, you can use the -w option of the test built-in.

The test built-in is a utility that evaluates an expression and returns a exit status of 0 if the expression is true, or 1 if the expression is false.

To test if a file is writable, you can use the -w option followed by the name of the file. For example, to test if the file /etc/hosts is writable, you can use the following command:

test -w /etc/hosts
‮uoS‬rce:www.lautturi.com

This will return a exit status of 0 if the file is writable, or 1 if the file is not writable.

You can use the $? variable to check the exit status of the test built-in in a script. For example:

if test -w /etc/hosts; then
    # File is writable
else
    # File is not writable
fi

This will execute the code in the then clause if the file is writable, and the code in the else clause if the file is not writable.

It is important to note that the test built-in only checks the permissions of the file, and does not take into account any other factors that may prevent the file from being written to, such as the availability of disk space or the presence of other processes that may have the file open for writing.

For more information about the test built-in and its options, you can consult the documentation for the Bash shell.

Created Time:2017-10-27 14:56:34  Author:lautturi