编写shell脚本,统计任意目录下的可执行文件数目
时间: 2023-11-21 11:35:14 浏览: 34
#!/bin/bash
# 输入目录路径
read -p "请输入目录路径:" dir_path
# 判断目录是否存在
if [ ! -d $dir_path ]; then
echo "输入的目录不存在,请重新输入!"
exit 1
fi
# 统计可执行文件数
executable_files=$(find $dir_path -type f -perm /111 | wc -l)
echo "目录 $dir_path 中可执行文件数为:$executable_files"
相关问题
shell脚本实现计算当前目录下可执行文件的数量
你好!感谢使用ChitGPT进行对话。
针对您的问题,我可以提供以下的shell脚本实现,可以计算当前目录下可执行文件的数量:
```
#!/bin/bash
count=0
for file in $(find . -maxdepth 1 -type f -executable); do
((count++))
done
echo "当前目录下可执行文件的数量为:$count"
```
该脚本会遍历当前目录下的所有文件,找到其中可执行的文件,并计算它们的数量。请注意,该脚本只会计算当前目录下的可执行文件,不包括子目录中的文件。
如果您有任何其他问题,欢迎继续和我对话!
用shell脚本统计当前目录下目录和文件的各自数量
可以使用以下Shell脚本来统计当前目录下目录和文件的数量:
```
#!/bin/bash
# 统计当前目录下目录和文件的数量
dir_count=`ls -l | grep "^d" | wc -l`
file_count=`ls -l | grep "^-" | wc -l`
echo "当前目录下有 $dir_count 个目录,$file_count 个文件。"
```
解释一下脚本的逻辑:
- `ls -l`:列出当前目录下所有文件和目录的详细信息;
- `grep "^d"`:过滤出以 "d" 开头的行,即目录的行;
- `grep "^-"`:过滤出以 "-" 开头的行,即文件的行;
- `wc -l`:统计行数,即目录或文件的数量。
注意:该脚本不会递归统计子目录中的目录和文件数量。如果需要递归统计,请使用其他方法。