Bash从.txt字符串中删除特定内容

Bash从.txt字符串中删除特定内容,bash,Bash,我目前正在bash中编写一个脚本,输出当前活动的域列表并返回200状态码,它当前返回以下内容: https://example.com [200] https://google.com [200] https://facebook.com [200] 我想使用bash从文本文件的每一行删除[200],这可能吗 编辑: 在发布之前,我确实搜索了答案,并尝试使用sedsed-I-e的/[[200]]//g'200.txt,但似乎没有效果。假设input.txt是文本文件,试试看 cut--deli

我目前正在bash中编写一个脚本,输出当前活动的域列表并返回200状态码,它当前返回以下内容:

https://example.com [200]
https://google.com [200]
https://facebook.com [200]
我想使用bash从文本文件的每一行删除
[200]
,这可能吗

编辑:
在发布之前,我确实搜索了答案,并尝试使用sed
sed-I-e的/[[200]]//g'200.txt
,但似乎没有效果。

假设
input.txt
是文本文件,试试看

cut--delimiter=''--fields=1 input.txt

这是不言自明的。

一个纯bash解决方案,使用:


. 你找了什么,找到了什么?你尝试过什么,失败的原因是什么?谢谢@Cyrus,为了更清晰起见进行了编辑。轻微的选择
${line%\[[:digit:]*\]}
或者如果你假设在最后一个空格处中断,那么最小的
${line%*}
就可以了。
$ line=$(echo https://example.com [200])
$
$ echo ${line% \[[0-9][0-9][0-9]]}
https://example.com