【问题标题】:Pattern matching with grep [duplicate]与 grep 匹配的模式 [重复]
【发布时间】:2013-10-09 18:18:18
【问题描述】:

我有一个文件的完整路径,比如 hai/hello/home/something/file.txt 。我怎样才能得到 file.txt 作为输出消除完整路径?

如何用 grep 做到这一点?

【问题讨论】:

  • 为什么一定要用grep?

标签: linux shell unix scripting


【解决方案1】:
#!/usr/bin/perl
use File::Spec;
use File::Basename;
$n="hai/hello/home/something/file.txt";
my $m = basename $n;
print "$m";

【讨论】:

    【解决方案2】:

    您并不严格需要 grep,但如果您坚持,这应该可以:

    grep -o -e "\w*\.\w*$"
    

    (可选)考虑命令basename

    basename hai/hello/home/something/file.txt
    

    【讨论】:

    • 如果投反对票,请发表评论,解释原因。否则它对任何人都没有帮助。
    【解决方案3】:

    您可以使用sed

    $ echo hai/hello/home/something/file.txt | sed "s|.*/||g"
    file.txt
    

    或者,更简单,basename

    $ basename hai/hello/home/something/file.txt
    file.txt
    

    【讨论】:

      猜你喜欢
      • 2019-04-30
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 2012-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多