如何用shell编程打印出目录下的所有文件内容

 我来答
匿名用户
推荐于2018-04-15
展开全部
1)看下面的脚本a1.sh,假设要显示目录/home/user/tmp/下面的所有的文件和(子)目录的名字:

$ cat a1.sh
#!/bin/bash

for file in /home/user/tmp/*
do
echo $file
done

2)假设目录/home/user/tmp/下面的所有的文件和(子)目录如下:

$ ls
1.txt 2.txt a1.sh a.sh b.sh email_back m1.doc tmp

3)运行脚本:
$ a1.sh (或者./a1.sh)
/home/user/tmp/1.txt
/home/user/tmp/2.txt
/home/user/tmp/a1.sh
/home/user/tmp/a.sh
/home/user/tmp/b.sh
/home/user/tmp/email_back
/home/user/tmp/m1.doc
/home/user/tmp/tmp

4)脚本a1.sh的作用只是显示文件和子目录的列表,要显示文件的内容,脚本继续改造,内容如下,看脚本a2.sh:

$ cat a2.sh
#!/bin/bash

for file in /home/shiqingd/tmp/*
do
echo $file
if [ -f $file ]; then
cat $file
fi
done

脚本a2.sh可以达到目的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式