Linux 测试目录是否具有特定名称
Ubuntu 16.04 LTS 有没有办法测试一个目录是否有一个特定的名称并执行一些操作?例如,我有以下几项:Linux 测试目录是否具有特定名称,linux,bash,shell,unix,Linux,Bash,Shell,Unix,Ubuntu 16.04 LTS 有没有办法测试一个目录是否有一个特定的名称并执行一些操作?例如,我有以下几项: /home/Al/dir /home/Fl/dir /usr/.../dir 如果pwd返回这些目录中的任何一个,我希望测试返回true(也适用于所有以dir结尾的目录,如/…/…/dir)。有没有办法执行这样的测试?当然可以,将其与任何其他字符串进行比较。您甚至不必将pwd保存到任何地方,因为它也可以作为$pwd提供。使用“左修剪”操作符删除最后一条斜线之前的所有内容(包括):
/home/Al/dir
/home/Fl/dir
/usr/.../dir
如果
pwd
返回这些目录中的任何一个,我希望测试返回true(也适用于所有以dir
结尾的目录,如/…/…/dir
)。有没有办法执行这样的测试?当然可以,将其与任何其他字符串进行比较。您甚至不必将pwd
保存到任何地方,因为它也可以作为$pwd
提供。使用“左修剪”操作符删除最后一条斜线之前的所有内容(包括):
是的,这是可能的。试试这个
#!/bin/bash
DIRNAME=dir
CHECKING_DIR=$1
if [ $(basename $CHECKING_DIR) = "$DIRNAME" ]; then
.. do some action ..
else
.. do some action ..
fi
bash$ ./script /var/log/dir
试试这个
#!/bin/bash
if [[ $(basename $(pwd)) == "dir" ]]; then
..
else
..
fi
#!/bin/bash
if [[ $(basename $(pwd)) == "dir" ]]; then
..
else
..
fi