regex - 检查目录是否存在递归地反转路径

我有点糊涂了!我不知道如何提出这个问题。

可能有一个例子。

我正在编写一个 bash 脚本来检查当前目录中是否有名为“FNS”的特定文件夹。为了检查文件是否存在,我这样做了。

        FOLDER=FNS
        if [ -f $FOLDER ];
        then
        echo "File $FOLDER exists"
        else
        # do the thing
        fi

如果文件不存在就会出现问题!我希望脚本记下当前路径并移回目录 [我的意思是 cd .. 在命令行中,我不确定我在这里使用的词汇是否正确]并检查文件是否存在,如果不存在,再次后退一步,直到出现它所在的目录[肯定存在]。找到后将路径存储在变量中。 当前的执行目录不应更改。我尝试将 pwd 传递给变量并剪切到最后一个斜杠和其他一些东西但没有成功!

希望我能在这方面有所作为。 像往常一样,欢迎提出建议、算法和解决方法:)

最佳答案

试试这个,用括号启动一个子 shell,这样 cd 命令就不会改变当前 shell 的当前目录

(while [ ! -d "$FOLDER" ];do cd ..;done;pwd)

https://stackoverflow.com/questions/11352973/

相关文章:

wpf - 在 XAML 中使用图像向按钮添加鼠标悬停效果

sql - 存储过程返回的别名列 [SQL Server 2008]

php - 如何通过PHP检测用户断开连接?

.net - 在列表linq中选择重复项

php - 如何在 preg_match_all php 中获取组的值?

php - Symfony2 与 CSRF token 的链接

php - Uniqid 每次返回相似的值

sql - 减去 vs 删除 oracle 中存在的地方

asp.net - 在 c# asp.net 中执行查询

php - 本地主机的 Instagram redirect-uri 失败