is.sh
Fancy alternative for old good test command
is.sh allows you to write conditions which can be read by average human being.
Usage
var=123
if is equal $var 123.0; then
echo "it just works"
fi
if is not a substring $var "foobar"; then
echo "and it's easy to read"
fiAvailable conditions
is equal <valueA> <valueB>- checks if values are the same or if they are equal numbersis matching <value> <regexp>- checks if whole value matches to regular expressionis substring <value> <string>- checks if first value is a part of second oneis empty <value>- checks if value is emptyis number <value>- checks if value is a numberis gt <numberA> <numberB>- true if first number is greater than second oneis lt <numberA> <numberB>- true if first number is less than second oneis ge <numberA> <numberB>- true if first number is greater than or equal to second oneis le <numberA> <numberB>- true if first number is less than or equal to second oneis file <path>- checks if it is a fileis dir <path>- checks if it is a directoryis link <path>- checks if it is a symbolic linkis existent <path>- checks if there is a file or directory or anything else with this pathis readable <path>- checks if file is readableis writeable <path>- checks if file is writeableis executable <path>- checks if file is executableis older <pathA> <pathB>- checks if first file is older than second oneis newer <pathA> <pathB>- checks if first file is newer than second oneis true <value>- true if value is equal “true” or “0”is false <value>- oposite ofis true <value>
Negations
You can negate any condition by putting not in front of it:
$ is a number "abc" && echo "number"
$ is not a number "abc" && echo "not a number"
not a numberLinks
- Source Code (GitHub);
- Author: Józef Sokołowski;
blog comments powered by Disqus