• 在ls命令中使用通配符


    通配符比较简单。我们已经知道通配符常常是在shell终端中用来匹配文件名的,今天来看一下在ls命令中使用通配符的例子。

    用法:ls [选项]... [文件]...

    ls本身也有很多的选项,我们今天不看选项,而是看它的参数部分。

    现在我们当前目录总共有如下8个文件
    $ ls
    1.c  1.cpp  1.h  3.c  3.cpp  3.h  a.out  readme
    
    列出全部文件
    $ ls *
    1.c  1.cpp  1.h  3.c  3.cpp  3.h  a.out  readme
    
    列出1开头的、并且扩展名是1个字符的文件(此处认为文件名全名中带有.就是有扩展名)
    $ ls 1.?
    1.c  1.h
    
    列出1开头的、并且扩展名是至少1个字符的文件
    $ ls 1.?*
    1.c  1.cpp  1.h
    
    列出所有扩展名为h的文件
    $ ls *.h
    1.h  3.h
    
    列出所有带有扩展名的文件
    $ ls *.*
    1.c  1.cpp  1.h  3.c  3.cpp  3.h  a.out
    
    列出文件名是1-3中的1个字符、并且扩展名是 h 的文件
    $ ls [1-3].h
    1.h  3.h
    
    列出具有扩展名、并且扩展名首字母不是 c 的所有文件
    $ ls *.[^c]*
    1.h  3.h  a.out
    
    列出文件名是1-3中的1个字符、并且扩展名是 c 或 h 的文件
    $ ls [1-3].[ch]
    1.c  1.h  3.c  3.h
    
    列出扩展名之前是单个字符,并且扩展名部分的第一个字符是 c 的文件
    $ ls ?.c*
    1.c  1.cpp  3.c  3.cpp
    
    如何列出不带扩展名的文件呢?我需要借助grep(如果你有别的方法,欢迎回复)
    $ ls |grep -v "."
    readme

    原创文章,版权所有,转载请注明出处。

  • 相关阅读:
    模态视图-多视图应用
    linux下查看文件夹的大小
    CentOS的字符集locale的设置
    CentOS 7 设置中文环境
    GCC中文错误提示
    ubuntu的交换分区和系统休眠
    CentOS使用EPEL YUM源
    git将远程仓库最新版本拉到本地仓库
    git的全局变量
    ssh:Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open
  • 原文地址:https://www.cnblogs.com/zhaojk2010/p/4678516.html
Copyright © 2020-2023  润新知