我有一个blacklist.txt文件,其中包含要使用sed删除的关键字。
下面是blacklist.txt文件所包含内容
winston@linux ] $ cat blacklist.txt
obscure
keywords
here
...
这是我到目前为止所拥有的,但目前还不起作用。
blacklist=$(cat blacklist.txt);
output="filtered_file.txt"
for i in $blacklist;
do
cat $input | sed 's/$i//g' >>
我遇到了一个问题,一个程序突然不想启动了,没有错误,什么都没有。为了确保代码及其链接库的完整性,我想比较每个(动态)链接库的md5sum。从这个论坛的其他帖子中,我发现很容易列出所有的链接库,很好地展示它们:
ldd myProgram | grep so | sed -e '/^[^\t]/ d' \
| sed -e 's/\t//' | sed -e 's/.*=..//' \
| sed -e 's/ (0.*)//'
如何添加md5sum或sha1sum,使其在文件名旁边添加一个校验和列?简单地添加md5sum只会产生一
我有一个包含混合shell、Perl和Python脚本的Linux文件夹树。所有脚本都没有一致的文件扩展名(.pl、.perl、.py、.sh或根本没有扩展名)。我需要确定哪些文件是Perl脚本,如果变量不在Perl脚本中,则添加新的代码行来设置该变量。
多亏了,我想出了这段代码,它使用sed插入新的代码行。
这段代码可以工作,但是有没有更有效的方法呢?
#! /bin/bash
NL='
$|++'
for f in `find "$1" -type f`
do
if [ $(grep -cP "^\#\!/.+/perl"
如何在sed命令中仅替换特定值
例如,
Linux system
Windows syste
Mac syste
我试过这个命令
sed /system/system/g‘file.txt
safwanpaloli@hello:~/linx$ sed 's/syste/system/g' new.txt
Linux systemm
Windows system
Mac system
我预期的结果
Linux system
Windows system
Mac system
我在Linux上使用这个sed命令来修补一个文件,它工作得很好:
sed -i -r "s/(\tpublic function __call.*)/\1\n\t\treturn null;/" rb.php
但是当我在OS X上尝试这个命令时,我得到了一个错误:
sed: 1: "s/(\tpublic function __ ...": \1 not defined in the RE
那么,有没有人能帮我做一个在Linux和OS上都能工作的命令呢?
顺便说一下,我尝试了如下命令:
sed -i '' -r "s/(\tpublic
我正在尝试执行一个shell文件,其中有一行:
sed -ne ':1;/PinnInstitutionPath/{n;p;b1}' Institution | sed -e s/\ //g | sed -e s/\=//g | sed -e s/\;//g | sed -e s/\"//g | sed -e s/\Name//g
联合国错误消息的结果是:"Label too long: :1;/PinnInstitutionPath/{n;p;b1}"
我是linux的新手,所以有人能帮我解决这个问题,谢谢!
我想做的是:
>STRIPPER='sed s/admin_editable=\"[01]\"// | sed s/runtime_editable=\"[01]\"//'
>cat file.txt | $STRIPPER > stripped.txt
例如,定义一个外壳变量,它是多个命令的管道(我的恰好是sed的),我可以稍后调用它。我现在从命令行做这件事,但最终可能会把它放到一个脚本中。
我已经尝试了‘和’来封装命令,但两者都不起作用。
sed: can't read |: No such file or di
我有一个包含如下内容的多个文件:
this is a test1
{
test 123
test 456
test 789
}
this is a test2
{
test 123
test 456
test 789
}
this is a test3
{
test 123
test 456
test 789
}
需要删除一节:
this is a test2
{
test 123
test 456
test 789
}
大括号之间的线条可能是不同的(较少或更多行),我尝试过这样的方法:
sed -i 's|This is a test2 *.* !}||g' *
我使用sed表达式将直引号转换为卷曲引号。我想把"Linux程序员手册“转换成"Linux程序员手册”。我需要它来检测之前是否有一个非空格字符,并直接引用。如果有,用卷曲引号代替直引号。我试过这个:
sed "s/\S'\S/’/"
但这也导致它取代了非空白字符:
Linux programme’ manual
有两个文件file.txt和file1.txt
$ cat file.txt
Linux
Administration
Scripting
Tips and Tricks
Windows
Administration
Database
Administration of Oracle
Administration of Mysql
Security
Network
Online\
Security
Productivity\
Google Search\
Tips
"Web Based Time Tracking,
Web Based Todo list and
Reduce Key
在csh中,我有一个名为$var的变量,我希望将它包含在csh脚本中,如下所示
#!/bin/csh
set var="directory"
sed 's/DIRECTORY_PATH/$var1234/' > output.txt
我希望sed语句求值为's/DIRECTORY_PATH/directory1234',但它只是尝试查找一个名为var1234的变量。怎么做才是对的?
尝试使用Sed的美丽,所以我不需要手动更新几百个文件。我会注意到我的雇主只允许使用Win8 (joy),所以我整天使用Cygwin,直到我可以在家里使用我的Linux盒。
以下内容适用于Linux (bash)命令行,而不是Cygwin
> grep -lrZ "/somefile.js" . | xargs -0 -l sed -i -e 's|/somefile.js|/newLib.js|g'
sed: can't read ./testTarget.jsp: No such file or directory
# works
> s
我已经将nmap结果输出到一个名为test.txt的文件中,它如下所示:
Nmap scan report for 192.168.1.5
Host is up (0.13s latency).
PORT STATE SERVICE VERSION
23/tcp open telnet Linux telnetd
--
Nmap scan report for 192.168.1.7
Host is up (0.13s latency).
PORT STATE SERVICE VERSION
80/tcp open http Popper
--
Nm