#!/bin/bash case $# in 0) DIR='.' ;;

  1. test ! -d $1 && echo '$1 is not a directory!' && exit 1; DIR=$1 ;; *) echo 'Usage: $0 [directory name]'; exit 1 ;; esac cd $DIR for file in * do #echo $file test -d '$file' && continue ls -l '$file' done exit 0

这是一个 Bash 脚本,用于列出指定目录下的所有非目录文件的详细信息。脚本使用了一个 case 语句来处理命令行参数:

  • 如果没有参数,则默认使用当前目录。
  • 如果只有一个参数,则判断该参数是否为目录,如果是则使用该目录,否则输出错误信息并退出。
  • 如果有多个参数,则输出使用说明并退出。

接下来,脚本使用 cd 命令进入指定目录,并使用一个 for 循环遍历该目录下的所有文件。对于每个非目录文件,使用 ls -l 命令输出其详细信息。

最后,脚本使用 exit 命令退出,并返回状态码 0 表示执行成功。


原文地址: https://www.cveoy.top/t/topic/jjQc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录