关于shell:查找文件夹下的(.BMP)文件的完整路径名,附加到文件

Find full path names of (.BMP) files under folder, append to file

我在一个文件夹中有11.bmp图像。我想创建一个文本文件,其中每一行都是图像名的完整路径。我使用了以下代码:

1
2
3
4
5
6
7
8
9
10
#!/bin/bash

i=0
find -type f -iname"*.bmp" | while read x; do
    echo $(cd $(dirname"$1") && pwd -P)/$(basename"$1") >>test2.txt
    app=$( printf"%05d" ${i}).bmp
    #echo $app
    echo $(sed '${s/$/'"${app}"'/;}'  test2.txt)
    i=$((i+1))
done

…但不起作用。所有图像都在这个路径中:/home/behzad/desktop/test/我想要一个文本文件,每行如下:/home/behzad/desktop/test/00000.bmp/主页/behzad/desktop/test/00001.bmp…/主页/behzad/desktop/test/00011.bmp


~/foo/bar和子目录中所有.bmp文件的完整路径名打印到新的输出文件test2.txt中:

1
2
s=~/foo/bar    # full path of dir to be searched.
find"$s" -iname"*.bmp" -type f -fprint test2.txt

从不同的目录向test2.txt添加更多的名称:

1
2
s=~/oof/rab    # full path of dir to be searched.
find"$s" -iname"*.bmp" -type f >> test2.txt


我使用了下面的代码并完成了:)

1
2
3
4
5
6
7
8
9
10
#!/bin/bash
i=0
find -type f -iname"*.bmp" | while read x; do
    echo $(cd $(dirname"$1") && pwd -P)/$(basename"$1") >>test1.txt
    app=$( printf"%05d" ${i}).bmp
    echo $app >>test2.txt
    i=$((i+1))
done

paste -d"" test1.txt test2.txt > path.txt