gpt4 book ai didi

bash - sed - 删除破折号之前的所有字符

转载 作者:行者123 更新时间:2023-11-29 09:06:54 25 4
gpt4 key购买 nike

我有一个文件名列表,我想删除第一个 - 之前的所有字符。因此 Before: 列表中的以下名称与 After: 列表中的名称相同。

Before:
Adam James - Welcome Home.txt
Mike & Harry - One Upon - A Time.txt
William-Kent - Prince & The Frog.txt

After:
Welcome Home.txt
One Upon - A Time.txt
Prince & The Frog.txt

我已经用 sed 玩了几个小时但没有用。

我发现 sed 's/- .*//' 删除了 - 第一个实例之后的所有字符,但我找不到之前的相同字符。

最佳答案

$ awk '{print substr($0,index($0," - ")+3)}' file
Welcome Home.txt
One Upon - A Time.txt
Prince & The Frog.txt

即只需从第一次出现的“-”的末尾打印到该行的末尾。

关于bash - sed - 删除破折号之前的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com