我使用find去查找目录,但是不知道怎么样在先打印后输出内容

编写一个shell脚本,查看当前目录的内容,并为所有目录打印出单词“Directory”,后跟目录名称和以修改时间排序的目录内容的逗号分隔列表以及所有文件打印单词“文件”和文件名
clipboard.png

阅读 3k
2 个回答

看上去象是作业题...

anyway

shell 脚本有很多种, 如 bash 的一个版本供参考

#!/bin/bash
walk() {
        local indent="${2:-0}"
        for entry in "$1"/*; do
                [[ -f "$entry" ]] && printf "文件: %*s%s\n" $indent '' "$entry"
                [[ -d "$entry" ]] && printf "Direcotry: %*s $entry \n" $indent &&   walk "$entry" $((indent+4))
        done
}
walk "$1"

给出另一个思路

#!/bin/sh

for filename in ./*
do
if [ -d "$filename" ]; then

  echo "Directory: $filename /n `ls -l -t` $filename /n"

else [ -f "$filename" ]; 

  echo "file:$filename"

fi
done
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题