【问题标题】:linux command line :file names that contain a number & replace stringlinux命令行:包含数字和替换字符串的文件名
【发布时间】:2013-12-27 01:22:59
【问题描述】:

所以我是 linux 新手 我想知道如何执行以下操作

1-列出所有包含数字的文件名 [我知道

  $ls *[0-9]*  

但如果我有一个以数字开头的文件,它将不起作用

2-还将输出中文件名中的任何“an”替换为屏幕上的“xx”打印并将其存储在文件中

我到达了

ls | tr -u  "an" xx >modified.txt

问题是它将 a 更改为 x 并将 n 更改为 x ...但我想要一个不单独的在一起

谢谢

【问题讨论】:

    标签: linux unix command-line operating-system kernel


    【解决方案1】:

    列出所有包含数字的文件名 对于以数字开头的文件,您的示例对我来说很好,因此您可能想澄清您使用的是哪种 Linux 系统,或者您使用的是哪种 shell 或语言。

    # In sh/bash:
    ls *[0-9]*
    # with perl:
    perl -e '@globbed_files = <*[0-9]*>; print "@globbed_files\n"'
    # With find (filters out directories):
    find -maxdepth 1 -name '*[0-9]*' -type f
    

    将输出中文件名中的任何“an”替换为屏幕上的“xx”打印并将其存储在文件中

    ls | sed 's/an/xx/g' | tee file.out
    

    【讨论】:

      猜你喜欢
      • 2013-07-11
      • 2010-11-17
      • 1970-01-01
      • 1970-01-01
      • 2018-04-19
      • 2021-06-19
      • 2019-01-16
      • 2011-08-14
      相关资源
      最近更新 更多