如何用sed删除一行后的所有字符?
我试着用cat,awk实现一些文件的grep。现在我的独角兽还给了我一些东西
121.122.121.111] other characters in logs from sendmail.... :)
现在,我想删除所有“]字符(与”“)。我只想在输出中使用121.122.121.111。
我在谷歌上搜索sed的特定示例,但在这些示例中没有找到任何帮助。
例如:
我有一套字符串:
AAAA~
BBBB~
预期:
AAAA~BBBB~
Im目前使用repl.bat作为我在批处理文件中插入的查找和替换工具,如下所示:
for /f "tokens=2,3" %%a in ('type c:\user\delim.txt') do (
copy "C:\user\linefeed\%%a" "C:\user\linefeed\%%a.in.tmp"
for /f "tokens=1,*" %%s in (FindNReplace.txt) do
我在一个批处理文件中使用GNU Sed for Windows。我想使用sed grouping命令{}对一组命令进行分组。但是根据UNIX平台的文档,我们必须将{}中的每个sed命令在新的行中启动。这可以在UNIX中完成,因为bash支持将一个命令分成>1行。但是在Windows批处理文件中,我们如何将命令拆分为>1行?我知道我可以将所有sed命令放在一个单独的脚本文件中,并使用'-f script-filename‘调用sed。但我想限制到只有一个批处理文件,并希望通过使用“sed -e脚本”选项将所有内容都放在批处理文件中。
如何在批处理文件中使用sed -e指定分组
如何使sed只对线路的特定部分进行操作?相反,我如何使sed不工作在一条线的特定部分上?
示例:
"A a A a ( A a ) A ( a A ) a"
例如,如何将所有A替换为仅在(和)之间的Ts以获得:
"A a A a ( T a ) A ( a T ) a"
并给出下一个示例输入:
"F f F f ( F f ) F ( f F ) f"
例如,如何将所有F替换为Xs,而不是在(和)之间替换以获得:
"X f X f(F F)X(F F) f“
我搜索了谷歌,但没有发现任何有用的东西。我想这是一个关于sed的一般性问题。
我有一个脚本,需要使用一个正则表达式从两个不同的文本中筛选出html标记。我需要一个regex的原因是,传递给脚本的数据可能是任何一种文本格式。除了几个不同之处外,文本一般都有相同的语法。
这是我的剧本:
#!/bin/bash
text1="<CENTER><B>Jupiter: The Great Yellow Spot<BR>"
text2="<b> Curiosity Rover Finds a Clay Cache on Mars </b> <br> "
regex="
我正在尝试写一个批处理文件,它遍历一个文件夹中的所有文本文件,并删除每个文本文件中的引号,但也会覆盖它们,使它们仍然具有相同的文件名。
我已经编写了一个批处理文件,它使用一个名为limits.txt的特定文本文件执行此操作,然后它在limits_new.txt中保存相同的文本文件,而不使用引号:
@echo off
if not exist "limits.txt" goto :EOF
setlocal EnableDelayedExpansion
del "limits_new.txt" 2>nul
for /F "usebackq delims
我试图在包含某些特殊字符的文本文件中复制行,但在复制中,将特殊字符替换为“常规”ASCII字符。具体的用例是重音字符.
输入:
éva
test
frédéric
期望产出:
éva
eva
test
frédéric
frederic
现在,我可以复制包含é字符的行,但我不知道如何在捕获组中搜索和替换。
到目前为止,我得到的是:
echo 'éva\ntest\nfrédéric' | sed 's/\(.*é.*\)/&\n\1/'
我能用sed做这个吗?如果没有,我很乐意和awk一起工作.
在删除一定大小以下的文件时,我使用以下批处理脚本。
@echo off
setlocal
:: Size is in bytes
set "min.size=100000"
for /f "usebackq delims=;" %%A in (`dir /b /A:-D *.*`) do If %%~zA LSS %min.size% del "%%A"
如果我将批处理文件放入文件夹中,这是可行的,但它也会删除批处理文件。
但是,如何将批处理文件保持在不同的位置并显式地指定目录路径?
我有一个名为file.txt的文件,其中包含:
this is line one ^
this is line two ^
this is the last line
如何将其放入env var中?
我可以从一个批处理文件中执行此操作: test.bat
set LF=^
[blank line]
[blank line]
rem two blank lines needed above
set multi=Line 1!LF!Line 2!LF!Last line
echo !multi!
这将输出三行:
我刚刚从用户在Python 2上的git存储库中提取。我的系统正在运行Python 3,并且代码没有任何更改,我得到了这个错误:
TabError: inconsistent use of tabs and spaces in indentation
似乎解决方案是更改.py文件的字符集编码,但在emacs中工作时,我不知道如何做到这一点。我看到了这些说明:
但我不知道如何将这些应用于utf-8。如果有任何建议,我将不胜感激。
给予:
$ cat input
Hello
Welcome
strIng
North Korea
USA
U.K.
我想获得:
$ cat output
hello
welcome
strIng
North Korea
USA
U.K.
如何将大写单词*只转换为小写?
*:第一封信大写。
注意:我寻找一个命令,它取消了名词的大写,而不攻击缩略语和奇怪的单词。
情景:使用shell脚本(bash/ksh),应该在控制台日志中显示一条消息,然后通过电子邮件发送。
问题:消息中有换行符。
例子如下:
ErrMsg="File names must be unique. Please correct and rerun.
Duplicate names are listed below:
File 1.txt
File 1.txt
File 2.txt
File 2.txt
File 2.txt"
echo "${ErrMsg}"
# OK. After showing the message in the