从文件名中删除单词列表

2023-12-29

我试图从某个目录的所有文件中删除特定单词的列表,然后将其替换为任何内容。

So:

这个很棒的内容 720p BLAH FOO BANG OOO - 30.9.2013.mp4

Becomes:

这个很棒的内容 - 30.9.2013.mp4

现在,以下内容非常适合单个查找和替换一个单词。

find path/to/folder/ -maxdepth 3 -name '*.*' -execdir bash -c 'mv -i "$1" "${1//foo/}"' bash {} \;

我也尝试了多个发现,但这似乎是一个很长的方法,而且我似乎以这种方式遇到了问题。

我有几个问题:

  • 希望它不区分大小写
  • 需要“${1//foo/}”来引用列表
  • 如果大于 1,则删除空格

尝试将其作为 bash 脚本在 cronjob 上运行。

除非有更好的方法来删除“This Awesome Content”-“30.9.2013.mp4”之间的所有内容。

非常感激。


您可以使用“echo”命令将文件名作为变量进行访问。完成后,进行所需更改的最强大方法是使用“sed”。您可以使用“-e”标志将 sed 命令串在一起。作为 bash 中 for 循环的一部分,这一行为您提供了一个开始。您还可以使用这样的行作为“find”语句的一部分。

echo $fyle | sed -e 's/FOO//gI' -e 's/BANG//gI'

获得所需的文件名后,您可以将它们移回原始名称。如果您需要更具体的说明,请告诉我。

UPDATE:这是一个更完整的解决方案。您必须将脚本调整为您自己的文件名等。

for fyle in $(find . -name "*.*")
do 
   mv -i $fyle `echo $fyle | sed -e 's/FOO//gI' -e 's/BANG//gI' `
done

最后,要将多个空白字符替换为一个空白字符,您可以添加另一条 sed 命令。这是一个工作命令:

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

从文件名中删除单词列表 的相关文章

  • 如何将命令作为参数传递给 ssh [重复]

    这个问题在这里已经有答案了 我的需要是让这个命令起作用 sshpass p XXXX ssh oStrictHostKeyChecking no email protected cdn cgi l email protection sudo
  • 停止服务时单元陷入故障状态(状态=143)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是我的问题 我有 CentOS 和 java 进程在上面运行 Java进程是通过启动 停止脚本来操作的 它也创建了 java 实例的 p
  • 为什么在 Linux 上字符串文字的内存地址与其他字符串文字的内存地址如此不同?

    我注意到字符串文字在内存中的地址与其他常量和变量 Linux 操作系统 非常不同 它们有许多前导零 未打印 Example const char h Hi int i 1 printf p n void h printf p n void
  • 在以下程序中将产生多少个进程

    int main fork fork fork fork fork printf forked n return 0 当我们调用 fork 函数时 父进程会得到一个非零 pid而孩子得0分作为回报 基于这个逻辑 在第二个陈述中 我们必须应用
  • 在 Ubuntu 16.04 上找不到 printf.c

    我最近切换到Ubuntu 16 04 我在用vscode作为 Ubuntu 上的 IDE 我配置了其他语言 但我无法做到这一点C C 我创建c cpp properties json launch json tasks json 当我开始编
  • apt-get install tzdata 非交互式

    当我尝试 apt get install y tzdata 将显示用于选择时区的命令行选项 我试图在脚本中使用它来进行一些设置 如何在没有用户输入的情况下使 apt get 运行 我知道重新配置 tzdata 我可以做 echo Ameri
  • bash 中的“declare -r”和“readonly”有什么区别?

    在 bash 中 有什么区别declare r and readonly declare r a a1 readonly b b1 我不知道该选择哪个 tl dr readonly使用默认范围global甚至在函数内部 declare使用范
  • C 程序从连接到系统的 USB 设备读取数据

    我正在尝试从连接到系统 USB 端口的 USB 设备 例如随身碟 获取数据 在这里 我可以打开设备文件并读取一些随机原始数据 但我想获取像 minicom teraterm 这样的数据 请让我知道我可以使用哪些方法和库来成功完成此操作以及如
  • 为什么 Linux 对目录使用 getdents() 而不是 read()?

    我浏览 K R C 时注意到 为了读取目录中的条目 他们使用了 while read dp gt fd char dirbuf sizeof dirbuf sizeof dirbuf code Where dirbuf是系统特定的目录结构
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • 使用 Ansible 将二进制文件添加到 PATH

    我正在尝试安装Kiex https github com taylor kiex版本管理器Elixir http elixir lang org install html使用 Ansible 的编程语言 这些是我为此使用的戏剧 name K
  • 使用 sed 删除非字母数字字符

    我正在尝试验证一些输入以删除一组字符 只允许使用字母数字字符加 句点 下划线 连字符 我测试了正则表达式 w here http gskinner com RegExr http gskinner com RegExr 它与我想要删除的内容
  • 如何在 sed 中转义方括号[重复]

    这个问题在这里已经有答案了 我正在使用 grep 和 sed 解析遗留的 C 代码 当尝试替换方括号时 发生了一些奇怪的事情 以下代码替换方括号效果很好 echo xyx xzx xyx sed s g 结果是 xyx xzx xyx 当我
  • SONAR - 使用 Cobertura 测量代码覆盖率

    我正在使用声纳来测量代码质量 我不知道的一件事是使用 Cobertura 测量代码覆盖率的步骤 我按照以下步骤操作http cobertura sourceforge net anttaskreference html http cober
  • GCC 和 ld 找不到导出的符号...但它们在那里

    我有一个 C 库和一个 C 应用程序 尝试使用从该库导出的函数和类 该库构建良好 应用程序可以编译 但无法链接 我得到的错误遵循以下形式 app source file cpp text 0x2fdb 对 lib namespace Get
  • diff 文件仅比较每行的前 n 个字符

    我有2个文件 我们将它们称为 md5s1 txt 和 md5s2 txt 两者都包含a的输出 find type f print0 xargs 0 md5sum sort gt md5s txt 不同目录下的命令 许多文件被重命名 但内容保
  • powershell stdin 管道和重定向

    你好 我一直在制作一个小的跨平台脚 本 我可以将其卷曲并通过管道传输到bash和Powershell中 基本思想是服务器向解释器发送一个命令 然后它给出一个命令将所有输出重定向到标准输出 bash 中的一个例子是 some commands
  • 如何制作和应用SVN补丁?

    我想制作一个SVN类型的补丁文件httpd conf这样我就可以轻松地将其应用到其他主机上 If I do cd root diff Naur etc httpd conf httpd conf original etc httpd con
  • 嵌入式Linux poll()不断返回

    我有一个特别的问题 当我知道没有什么可读时 民意调查不断返回 因此设置如下 我有 2 个文件描述符 它们构成fd设置民意调查监视 一种用于引脚从高到低的变化 GPIO 另一个用于代理输入 代理输入出现问题 处理的顺序是 启动main函数 然
  • QFileDialog::getSaveFileName 和默认的 selectedFilter

    我有 getSaveFileName 和一些过滤器 我希望当用户打开 保存 对话框时选择其中之一 Qt 文档说明如下 可以通过将 selectedFilter 设置为所需的值来选择默认过滤器 我尝试以下变体 QString selFilte

随机推荐

  • 我们可以在视图分页器中将两个子片段嵌套在一个父片段内吗?

    我有一个视图寻呼机 在其中一个选项卡中我有父片段 其中包含两个子片段 候选人名单是具有框架容器的父片段 我替换了一个子片段 候选列表片段 在该容器内 但是当我在其中替换另一个子级 候选事件开始 时 它说未找到视图 我用来替换父片段容器内的第
  • ValueError:在图中找不到轴实例参数

    我正在通过 学习 scikit learn Ra l Garreta 的 Python 机器学习 来学习 scikit learn 在 jupyter Notebook 中 来自代码In 1 to In 7 有用 但In 8 代码不起作用
  • 使用 FTPClient.getModificationTime 在 FTP 服务器中获取文件的上次修改日期会产生 null

    我试图从 FTP 环境中获取文件的最后修改日期 结果不符合预期 通过使用ftpClient getModificationTime File path 我正进入 状态null 通过使用FTPFile getTimestamp getTime
  • JavaScript 哈希图等效项

    正如更新 3 中所明确的这个答案 https stackoverflow com questions 367440 javascript associative array without tostring etc 367454 这个符号
  • 当我启动实例时,ECU单元、CPU核心和内存意味着什么

    当我在 EC2 上启动实例时 它为我提供了 t1 micro m1 small m1 large 等选项 有 vCPU ECU CPU 核心 内存 实例存储的比较表 这是系统的内存RAM吗 我无法理解所有这些术语的含义 谁能给我清楚地说明这
  • Next.js 链接和路径

    我的标题中有一个弹出菜单显示产品 单击第一个时 无论列表中的哪一个 它都会正确导航到路径 products some product 但是 如果我已经在其中一个产品页面上 并且我正在尝试导航到另一个产品 它会添加 products 再次在
  • WPF:MenuItem 内的按钮,关闭菜单

    我在 MenuItem 的标题中有一个按钮 单击菜单项 不是按钮部分 会按预期关闭菜单 但单击按钮doesn t关闭菜单 我想要它 我怎样才能解决这个问题 更多背景 我有两个命令 它们互为微小变体 我想将它们都放在菜单中 大多数情况下都会使
  • 基于几何形状检测图像上的物体

    我对图像处理有了基本的了解 现在正在深入学习冈萨雷斯的 数字图像处理 一书 当给定图像和感兴趣对象的近似形式已知时 例如圆形 三角形 在图像上找到该对象的最佳算法 方法是什么 物体可能会轻微变形 因此强力方法无济于事 您可以尝试使用定向梯度
  • 使用elasticsearch对文本进行分类

    我目前正在开展一个项目 该项目涉及从文本中识别不同的 关键字 作为示例 我们假设以下输入文本 这是在布宜诺斯艾利斯写的一些关于肉类的文本的示例 进一步假设我的 elasticsearch 实例存储了以下文档 城市 巴塞罗那 布宜诺斯艾利斯
  • 从图像中分类和提取填字游戏网格的算法

    我正在寻找算法 给定包含填字游戏的图像 将图像裁剪为仅填字游戏 区分regular http crossword info sample cryptic demo and barred http crossword info sample
  • 仅在单元测试成功后,Maven 多模块才会部署到存储库

    问题 执行 mvn 部署 的最佳解决方案是什么 以便仅在所有单元测试成功并且不重复处理步骤后才运行部署部分 我希望简单的答案是 执行 maven 命令 x 或使用标志 以便可以在不调用默认生命周期中的先前目标的情况下运行部署 遗憾的是 这似
  • 如何在 Python OpenPyXL 中更改字体大小

    如何更改单元格的字体大小 我正在使用 OpenPyXL 如果我没有用完美的语法和拼写输入上面的内容 它不会让我发送这个问题 所以最后几个字人们应该知道我的意思 这对我有用 from openpyxl styles import Font f
  • Visual Studio 2015 的 github 扩展失去连接

    我偶尔会收到此错误 这真的很烦人 因为有时它会自行修复 但大多数情况下我只需关闭 VS 并重新打开 然后它就会再次工作一段时间 当我尝试从分支 或任何其他 git 网络交互 中拉取时 就会发生这种情况 Error encountered w
  • Firebase 安全规则错误“对象上未定义属性资源”

    我有一个函数 并且我已经在没有函数的情况下对其进行了测试 只是为了检查参考或其他内容是否没有问题 function resourceIsValidSomething return request resource data somethin
  • 动态创建 HTML 按钮控件并在其中嵌套 i 标记

    我在 c 中创建了一个简单的 HTML 按钮 如下所示 Button btn new Button btn ID myID btn Click new EventHandler someFunc 其工作效果完全符合预期 但我需要做的就是在其
  • 基于模型multiselectfield在模板django中显示结果

    基于多项选择字段 我想在模板中显示结果 但我不知道该怎么做 正如您在这个模型中看到的那样 我根据午餐选择为学生提供午餐选择 我想显示结果 但它不适用于前如果他选择三明治 提交后的结果你的三明治会准备好吗 其他人也一样 from multis
  • 使用 Surefire 和 TestNG 运行单个测试类或组

    我想使用 Maven 和 TestNG 从命令行运行单个测试类 不起作用的事情 mvn Dtest ClassName test 我已经在 pom xml 中定义了组 并且此类不属于这些组之一 因此它因这些原因被排除在外 mvn Dgrou
  • 安全地推送到阵列,如何?担心还是不担心?

    我认为这可能是一个天真的问题 我经常发现有多个 xhr 请求等待返回 我在 JavaScript 数组中跟踪我发出的请求 也就是说 当发出新请求时 我将其添加到数组中 然后当线程完成时 我将其从数组中删除 在多线程操作系统中 我会担心线程交
  • 具有引用返回 Get 的 C# 索引器也支持集

    我在这里做错了什么 或者从 C 7 2 开始 不支持通过 ref 返回和允许设置的索引器 Works public ref byte this int index get return ref bytes index 也有效 public
  • 从文件名中删除单词列表

    我试图从某个目录的所有文件中删除特定单词的列表 然后将其替换为任何内容 So 这个很棒的内容 720p BLAH FOO BANG OOO 30 9 2013 mp4 Becomes 这个很棒的内容 30 9 2013 mp4 现在 以下内