如何在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
每当我启动apache server(安装在EC2上)时,它都会显示带有"Amazon Linux AMI test Page“标题的测试页面。我想用类似于"Linux AMI - Started“这样的东西来更改措辞。(注意:我不想用我的文本替换整个页面,我想要相同的页面,但标题是"Linux AMI - Started“,而不是"Amazon Linux AMI Test Page”。我在下面试过了,但不幸的是它不起作用。
sed /Amazon Linux AMI测试页/Linux AMI - Started/g‘/var/wwww/html/index.
我在Windows机器上使用MySQL innodb version 5.7.10 'MySQL Community Server (GPL)'。如果我从MySQL工作台运行它,下面的脚本运行得很好:
DROP PROCEDURE IF EXISTS procedure1;
DELIMITER //
CREATE PROCEDURE procedure1(IN pageSize BIGINT)
BEGIN
SELECT * FROM table1 LIMIT pageSize;
END //
DELIMITER ; -- note that there
我知道这是一个非常简单的问题,被讨论了很多次,但我不明白我在哪里做错了我的命令。
我想把以"It“开头的行替换为99999。每一行都以几个空格开始。
infile.txt
3
2
3
4
It is not a number = /home/kayan/data
3
5
It is not a number = /home/kayan/data
4
5
我用过
sed -i 's/^I/99999/g' infile.txt
但这是行不通的。
我有一个包含200张图片的html文档。html页面现在只包含名为g001.jpg的所有图像。图像目录中的图像名称为g001.jpg到g200.jpg。我需要将g001.jpg替换为g002.jpg、g002.jpg、g004.jpg等。这就是我所拥有的:
#!/bin/bash
for i in {001..200}
do
sed "s/g001.jpg/g$i.jpg/g" gallery2.html > gallery3.html
done
**为了清楚起见,我正在尝试重命名html文档中对图像文件名的引用。html文档不需要重命名。
当然,这会多次将它们重命名
这是我的样本文件
user@linux:~$ cat file.txt
Line 1
Line 2
Line 3
Line 4
Line 5
user@linux:~$
我可以用grep -A2 'e 2' file.txt打印第2-4行。
user@linux:~$ grep -A2 'e 2' file.txt
Line 2
Line 3
Line 4
user@linux:~$
我也可以用grep -n打印出行号。
user@linux:~$ grep -nA2 'e 2' file.txt
2:Line 2
3-Line 3
4
我用谷歌搜索了很多次。我只想要这一行:
echo "Replace <newLine> it by <newLine> NEWLINE <newLine> in my OSX terminal <newLine> and bash script" | sed -e 's/<newLine>/\n/g'
在我的osx终端和我的bash脚本中工作。我不能用sed做这个吗?有没有另一种单行解决方案?
我有一个字符串“r1/pkg/amd64/misc/hash/hash-r1.r5218.tbz”,但我只需要"hash-r1.r5218.tbz“。
所以,我试了一下
unix$ a="r1/pkg/amd64/misc/hash/hash-r1.r5218.tbz"
unix$ echo $a | sed 's/.*\/\([^\/]*\)\.tbz/\1/' //[1]
hash-r1.r5218 //I know this should work
unix$ echo $a | sed 's/.*\/\([^\/]+\)\
我需要多次删除包含某个字符串的文件中的所有行,例如,如果我的文件如下所示:
This is a test toRemove first line
This is a test toRemove second line toRemove
应该生成一个类似于只有第一行的文件
This is a test toRemove first line
我正在尝试从命令行在linux上执行此操作,并尝试使用grep或sed,如下所示
grep -d "toRemove.*toRemove" myFile > myOtherFile
sed '/\toRemove.*toRe