博客
关于我
基础的shell编程问题(一)
阅读量:263 次
发布时间:2019-03-01

本文共 454 字,大约阅读时间需要 1 分钟。

以下是优化后的内容:

分析程序的功能以及运行结果:

该shell脚本用于根据参数筛选文件或目录。程序通过检查命令行参数的个数来决定处理当前目录还是指定目录,并使用grep命令以'd'开头的文件或目录进行过滤。

功能分析:

  • 缺少参数处理($# -eq 0):

    • 执行ls -l命令,列出当前目录所有文件及目录。
    • 使用grep '^d'过滤并显示以'd'开头的目录。
  • 有参数处理($# >0):

    • 逐个处理每个参数,执行ls -l $i并过滤以'd'开头的目录。
  • 运行结果:

    • 当不提供参数时,程序会列出当前目录中以'd'开头的目录。
    • 当提供参数(如./home或./.)时,程序会列出相应目录中以'd'开头的目录。

    实测示例:

    • 不提供参数:

      dir1dir2
    • 提供参数./home:

      dir1dir2

    关于grep命令的参数:

    • '-w':严格匹配整个单词。
    • '-q':安静模式,不输出匹配结果。

    关于read命令的参数:

    • '-p':提示用户输入。

    注:该脚本仅处理文件名开头为'd'的情况,未对权限或存在性进行检查。

    转载地址:http://yupt.baihongyu.com/

    你可能感兴趣的文章
    php7,从phpExcel升级到PhpSpreadsheet
    查看>>
    PHP8.1 + ThinkPHP实战指南:高效构建现代化网站的六大技巧
    查看>>
    PHP8中match新语句的操作方法
    查看>>
    PHP:第一章——PHP中常量和预定义常量
    查看>>
    PHP:第一章——PHP中的位运算
    查看>>
    phpcms
    查看>>
    phpcms 2008 product.php pagesize参数代码注射漏洞
    查看>>
    phpcms V9 自定义添加 全局变量{DIY_PATH}方法
    查看>>
    Redis五种核心数据结构的基本使用与应用场景
    查看>>
    Redis五种数据结构简介
    查看>>
    PHPCMS多文件上传和上传数量限制
    查看>>
    phpEnv的PHP集成环境
    查看>>
    PHPExcel一些基本设置总结
    查看>>
    phpexcel中文手册
    查看>>
    PHPExcel导入导出 若在thinkPHP3.2中使用(无论实例还是静态调用(如new classname或classname::function)都必须加反斜杠,因3.2就命名空间,如/c...
    查看>>
    phpize及其用法
    查看>>
    phpMailer发送邮件
    查看>>
    PHPMailer发送邮件
    查看>>
    phpmailer发送邮件,可以带附件
    查看>>
    phpmailer的用法
    查看>>