博客
关于我
基础的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/

    你可能感兴趣的文章
    MySQL集群解决方案(4):负载均衡
    查看>>
    mysql颠覆实战笔记(八)--mysql的自定义异常处理怎么破
    查看>>
    MySQL高级-MySQL并发参数调整
    查看>>
    MySQL高级-视图
    查看>>
    MySQL:判断逗号分隔的字符串中是否包含某个字符串
    查看>>
    Nacos在双击startup.cmd启动时提示:Unable to start embedded Tomcat
    查看>>
    Nacos安装教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Nacos配置中心集群原理及源码分析
    查看>>
    nacos配置自动刷新源码解析
    查看>>
    Nacos集群搭建
    查看>>
    nacos集群搭建
    查看>>
    Navicat for MySQL 查看BLOB字段内容
    查看>>
    Neo4j电影关系图Cypher
    查看>>
    Neo4j的安装与使用
    查看>>
    Neo4j(2):环境搭建
    查看>>
    Neo私链
    查看>>
    nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Nessus漏洞扫描教程之配置Nessus
    查看>>
    Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
    查看>>
    NetApp凭借领先的混合云数据与服务把握数字化转型机遇
    查看>>