EN
Bash - check if file is socket
0 points
In this article, we would like to show you how to check if file is socket in Bash.
In this example, we use -S
operator with specified path
to check if file under the path
is socket inside if
statement.
script.sh
file:
xxxxxxxxxx
1
2
3
path="/path/to/socket"
4
5
if [ -S "$path" ]; then
6
echo "The file is socket."
7
fi
Note: this approach should be used in POSIX shells where other solutions may not work.
Run in command line:
xxxxxxxxxx
1
./script.sh
Output:
xxxxxxxxxx
1
The file is socket.
xxxxxxxxxx
1
2
3
path="/path/to/socket"
4
5
if test -S "$path"; then
6
echo "The file is socket."
7
fi
Note:
[ ]
notation is shorthand oftest
command.
xxxxxxxxxx
1
2
3
path="/path/to/socket"
4
5
if [[ -S "$path" ]]; then
6
echo "The file is socket."
7
fi
Note:
[[ ]]
notation is like extendedtest
command, adding additional features (e.g. regular expressions).