Unix“查找”命令用法

2023-12-03

这是一个 bash 安装脚本。脚本 foo.sh 将“DIRECTORY”作为参数。说,有一个目录<$HOME>/TEST/TEST_1A/TEST_2A/TEST_3和另一个目录<$HOME>/TEST/TEST_1B/TEST_2B/TEST_3.

脚本:简单来说是 foo.sh。

DIR='find $HOME -type d -name $1 | head 1'
if [ DIR is set to a directory ]
then
   rm -rf $DIR
fi
exit 0

Usage: foo.sh TEST_3

现在从脚本来看,只有<$HOME>/TEST/TEST_1A/TEST_2A/TEST_3可以删除。去除<$HOME>/TEST/TEST_1B/TEST_2B/TEST_3,我需要在 find 命令中使用正则表达式,来微调删除以解决目录冲突。

将上面脚本的find部分修改如下

DIR='find $HOME -type d -regexp $1 | head 1'

新用法:foo.sh TEST_2B/TEST_3

但是“查找”命令无法获取DIR set to <$HOME>/TEST/TEST_1B/TEST_2B/TEST_3并返回空 & 作为结果DIR是空的,我永远无法删除<$HOME>/TEST/TEST_1B/TEST_2B/TEST_3

如何更改脚本,以便 find 可以仅作用于目录名称以及目录的路径,没有任何问题。事实上,一些用户可能会给出部分目录路径作为“foo.sh”的参数。我希望“foo.sh”能够工作,即使在这种情况下


你可以尝试:

if [[ "$1" == */* ]]; then
    EXPR="-path *$1"
else
    EXPR="-name $1"
fi
DIR=$(find $HOME -type d $EXPR | head -1)

像“TEST_3”这样的简单名称将翻译为find -name TEST_3但是像“ST_2/TEST_3”这样带有斜杠的名称将翻译为find -path *ST_2/TEST3。这将处理(部分)目录名称。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unix“查找”命令用法 的相关文章

随机推荐

  • 如何将AIRPLANE_MODE_ON设置为“True”或ON?

    我打算挂断电话 我发现这是解决该问题的方法之一 如何通过代码激活飞行模式 这样我就会根据某些事件挂断电话 请参阅博客文章Android 控制飞行模式 仅适用于API 16 Toggle airplane mode Settings Syst
  • java Android - 以编程方式处理图像缩放/裁剪

    好吧 所有这些事情折磨了我好几个星期 我将图像设置为 227 像素高 然后将其缩放到 170 像素 即使我每次都希望它是wrapp content 好的 在这里 我拍摄了 1950 像素长的 我的图像 我将其中的一部分放在这里 以便您可以了
  • Symfony CollectionType 更新实体

    我不敢相信其他人没有遇到这种情况 但我无法找到解决方案 假设我有两个实体类型 A 和 B 具有一对多关系 A 有 B 的集合 A 的形式有一个CollectionType对于B 有一个定制的entry type for B allow ad
  • 在高性能环境中的分叉工作进程之间共享状态

    这是我的后续行动上一个问题 正如 Tim Peters 所建议的 使用Manager可能不一定是最好的方法 不幸的是我有太多的脚手架代码来发布SSCCE 相反 我将尝试提供我的问题的详细解释 请随意浏览整个代码库Github 但现在有点混乱
  • 如何使用vba for excel获取另一个工作簿中定义名称的值

    我有几本包含计算的工作簿 我正在将所有这些工作表中的数据结合起来进行 自动概述 为了查找数据 我使用命名范围 这些工作正常 然而 有一个定义的名称不涉及范围 这是一个公式 我想要的是访问该公式的结果 以open计算书 来自我的概述书 明显地
  • RxJava:“java.lang.IllegalStateException:仅允许一名订阅者!”

    我正在使用 RxJava 来计算 Android 中某些传感器数据的归一化自相关性 奇怪的是 我的代码抛出一个异常 java lang IllegalStateException 只允许一个订阅者 我不确定该怎么做 我知道 GroupedO
  • 将图像从 URL 保存到服务器

    我建立了一个迷你内容管理系统CKEditor 用户可以粘贴图像URL来自另一个网站 有没有办法在用户提交内容时获取所有图像 URL 将所有这些图像保存到服务器 并用我的服务器的 URL 替换其他服务器的 URL 例如 用户写了这样的内容 i
  • Kivy - 通过 id 删除小部件

    我有以下代码 from kivy app import App from kivy uix floatlayout import FloatLayout class GUI FloatLayout def remove self self
  • 导入错误:没有名为plotly.plotly的模块

    我正在处理项目并收到此错误 导入错误 没有名为plotly plotly的模块 I tried pip 情节安装 pip install plotly 升级 But import plotly plotly as py没用 不知道pyzo
  • 一次将 100 个文本文件导入 Excel

    我有这个宏可以在 Excel 电子表格中批量导入同一文件夹中包含的 100 多个 txt 文件 Sub QueryImportText Dim sPath As String sName As String Dim i As Long qt
  • FileUpload1.HasFile 为 False

    我尝试在网上搜索这个问题 发现大家都在询问UpdatePanel内的FileUpload控件的问题 首先 我没有使用 UpdatePanel 下面是我的代码 HTML
  • ImportError:运行从 pyinstaller 获取的可执行文件时没有名为 Geometry 的模块

    Traceback most recent call last File
  • odoo 中的 Many2one 字段的域过滤器?

    下面的代码是资产继承类 这里我要补充一下 place 场与 卡恩 邦 肯杰里 and 卡恩 邦 马勒什瓦拉姆 对于 Karn Bang Kengeri 将添加带有 A 和 B 的 asset catg id 然后对于 karn bang m
  • MySQL GROUP 和 COUNT 多个表

    我有一个由 3 部分组成的问题 这给我带来了麻烦 如果我查询 1 个表 我知道如何让表正常工作 一次但我似乎不知道如何将两者结合起来tags and more tags表以获得相同的结果 下面列出了我遇到的 3 个主要问题 问题1 我希望能
  • 如果React.js是MVC中的V,那么其他字母是什么?

    我正在学习 React 但我仍然不确定如何将其发展为成熟的应用程序 对于 M 和 C 哪些框架很适合使用 如果我想发挥功能怎么办 我应该只使用 jQuery 吗 路由 Ajax 以及许多框架为我们提供的其他功能怎么样 你实际上可以简单地去F
  • 为什么我不能在另一个函数中定义一个函数?

    这不是 lambda 函数问题 我知道我可以将 lambda 分配给变量 允许我们在代码中声明但不定义函数有什么意义 例如 include
  • Rails db:迁移关系不存在

    我有这样的模型 学生 class Student lt ActiveRecord Base has many participations dependent destroy has many subject item notes depe
  • setbuf() 会影响 cout 吗?

    我的老师再次无法回答我的问题 我知道谁能够 所以 我从来没有真正学过 C 在 C 中 显然我一直都会使用 cout 语句 在最近的一次作业中 我的老师告诉我们要确保 setbuf stdout NULL 在 main 的顶部以获得无缓冲的输
  • 如何获取属性文件的路径并在运行时将其传递给 bean

    我有一个由 Spring 创建的 bean 实际的类驻留在与 Spring 不同的 JAR 中 该 bean 传递一个路径作为构造函数参数 但是 我很难检索文件的句柄 该文件位于 WEB INF classes 中 我尝试过基于 WEB I
  • Unix“查找”命令用法

    这是一个 bash 安装脚本 脚本 foo sh 将 DIRECTORY 作为参数 说 有一个目录 lt HOME gt TEST TEST 1A TEST 2A TEST 3和另一个目录 lt HOME gt TEST TEST 1B T