相关疑难解决方法(0)

for循环用于多个扩展并对每个文件执行某些操作

我正在尝试在bash中编写一个for循环来获取jpg,jpeg,png扩展名的文件,这是我的尝试,但不起作用

for file in "${arg}"/*.{jpg,jpeg,png}; do echo ${arg}-something.jpg > z.txt ; done;
Run Code Online (Sandbox Code Playgroud)

基本上,我想在当前文件夹中获取带有这些扩展名的文件的名称,并对每个文件执行某些操作,然后使用新扩展名输出文件名.

bash

8
推荐指数
2
解决办法
1万
查看次数

使用for循环匹配具有各种扩展名的文件

我试图匹配并循环扩展.txt .h .py文件.在特定文件夹$ {arg}中.这就是我做的

for file in ${arg}/*.{txt, h, py}; do
  ...

done
Run Code Online (Sandbox Code Playgroud)

但是,即使我有这样的文件,我的所有扩展都没有这样的文件.

 line 24: dir1/*.{txt,: No such file or directory
 line 24: h,: No such file or directory
 line 24: py}: No such file or directory
Run Code Online (Sandbox Code Playgroud)

如何循环使用指定扩展名的文件for

bash

4
推荐指数
3
解决办法
4384
查看次数

bash中的for循环通过具有两个特定扩展名的文件

我希望以下循环遍历m4a文件和webm文件。目前,我使用了两个不同的循环,另一个循环只是替换了该循环中的所有m4a。ffmpeg输出的文件也应该删除m4a扩展名(如果它是m4a文件)和webm扩展名(如果它是webm文件)。并将其替换为mp3。(与m4a一样)。我不知道该怎么做,我认为它与正则表达式有关,但是我不知道如何真正使用它们,也没有找到一个好的教程/文档,所以如果您有的话,也请链接它。

for i in *.m4a ; do
        echo "Converting file $converted / $numfiles : $i"
        ffmpeg -hide_banner -loglevel fatal -i "$i" "./mp3/${i/.m4a}.mp3"
        mv "$i" ./done
        converted=$((converted + 1))
done
Run Code Online (Sandbox Code Playgroud)

regex bash

2
推荐指数
1
解决办法
146
查看次数

标签 统计

bash ×3

regex ×1