我有一个文本文件,其中包含多个路径,如下所示
$ cat directory.txt
/aaaa/bbbbb/ccccc/
/aaaa/bbbbb/eeeee/
/aaaa/bbbbb/ddddd/
我需要将目录更改为文本文件中的每个路径,并且需要获取该路径下的文件数。下面是我使用的代码,但它不起作用。
i=
cat /aaaa/bbbbb/directory.txt
while read $i ;do
cd $i
ls |wc -l
done < /aaaa/bbbbb/count.txt
答案 0 :(得分:1)
实际上你几乎就在那里。不需要i=...
行,read $i
应为read i
,您只需要先使用路径而不是ls
来调用cd
。
#!/bin/bash
while read i; do
ls "$i" | wc -l
done < "/xxx/yyy/count.txt"
答案 1 :(得分:0)
感谢每一个我尝试过此代码的工作正常
for cat /nrt/home/directory.txt
;
do
cd $i
ls | wc -l
done > /nrt/home/count.txt