‘壹’ 怎么通过你shell脚本删除文件的某一行以及后面几行
1、启动Linux系统,用ssh工具(xshell或者SecureCRT等)连上Linux系统。
‘贰’ js脚本,删除文本框内指定内容
比如文本框内有N行 123$zxc$abc 这样的内容,每一行的格式都的这样
我想批量删除每行的 123$ ,或者批量删除每行的 123$ 和 $abc ,只留下 zxc 。
注:123 zxc abc 是不固定数值。
具体代码如下:
<script type="text/javascript">
function del(){
var val = document.getElementById('textfield').value;
var a= val.match(/\$.+?\$.+/g);
var i;
var tempval="";
for(i=0;i<a.length;i++)
{
tempval=tempval+"\n"+a[i];
}
document.getElementById('textfield').value=tempval;
}
</script>
<textarea name="textfield" rows="10">
123$zxc$abc
123$zxc$abc
123$zxc$abc
</textarea>
<input type="submit" name="Submit" value="删除" onclick="del()" />
‘叁’ Linux如何删除指定行,用shell脚本实现
#!/bin/sh
FILENAME=file.txt # 可换为$1
if [ ! -f file.txt ];then
echo "$FILENAME no found"
exit 1
fi
echo -n "INPUT SOME THING: "
read
if [ ! -z ”$REPLY“ ];then
INFO=$(grep $REPLY FILENAME)
if [ ! -z "$INFO" ] ; then
sed -i -e '/$REPLY/d' FILENAME #删除只用这行就可以了
else
echo "没有指定内容的信息"
exit 1
fi
else
echo "input some thing"
exit 1
fi
exit $?
‘肆’ 批处理删除匹配的行
不清楚你的实际文件/情况,仅以问题中的样例/说明为据
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行
@echooff
rem删除txt文本文件内包含有指定特征字符串的行
set#=Anyquestion&set@=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%@%%z%
cd/d"%~dp0"
set"file=yourfile.txt"
(echo;while^(WSH.StdIn.AtEndOfStream==false^){
echo;varline=WSH.StdIn.ReadLine^(^);
echo;if^(//*[ ]*?^(begin^|end^)/i.test^(line^)==false^){WSH.echo^(line^)}})>"%tmp%j.j"
for/f"delims="%%ain("%file%")do(
type"%%a"|cscript-nologo-e:jscript"%tmp%j.j">t.t
movet.t"%%a"
)
:end
echo;%#%+%$%%$%/%@%%z%
pause
exit
‘伍’ 怎么通过你shell脚本删除文件的某一行以及后面几行
#!/bin/sh
myfile=test.txt
startLine=3
lineCnt=4
let endLine="startLine + lineCnt - 1"
sed -i $startLine','$endLine'd' $myfilestartLine
表示开始行的行号
lineCnt
表示总共要删除的行数
‘陆’ lua脚本如何读入文本文件及删除第一行文本
f=io.open ("youfile.txt","r") --打开你的输入文件 名称为youfile.txt
f:read("*l") --读取一行,但是不保存
s=f:read("*a") --读取剩下的所有,保存到变量
f:close() --关闭文件
f=io.open(youfile.txt","w") --打开输出文件youfile.txt
f:write(s) --将上面保存的剩下所有的内容写入到输出文件
f:close() --关闭
--这样会损坏你的输入文件,请自行备份
--这种方法不建议打开太大的文件(>10M) 速度会很慢。
‘柒’ 求一个shell脚本删除文本中指定行
grep就ok了,加上-E参数:
示例:
bsstest2:/billing/app/user/xufc/test$grep -E "^Pre-depends:|^Depends:|^Filename:" info.txt
Filename: pool/main/2/2vcard/2vcard_0.5-3_all.deb
你给的文件中只有一个Filename开头的,所以只有一个结果
下面我换个搜索条件,显示可能会更加清晰:
bsstest2:/billing/app/user/xufc/test$grep -E "^Section:|^Version:|^Filename:" info.txt
Section: utils
Version: 0.5-3
Filename: pool/main/2/2vcard/2vcard_0.5-3_all.deb
bsstest2:/billing/app/user/xufc/test$
其中info.txt就是你给的示例文件
‘捌’ 批处理 如何删除文本中含有指定字符串所在的行
脚本保存时请务必比对一下原文,保存编码务必选择ANSI,否则可能会导致脚本运行出错。
@echo off & title 删除特定后缀名的行内容 By 依梦琴瑶
cd /d "%~dp0"
::设置文本列表
set List=D:TestFiles.txt
::设置要删除的特定后缀名,用英文逗号隔开
set Ext=json,xml
(for /f "usebackq delims=" %%a in ("%List%") do (
set "Skip="
for %%b in (%Ext%) do (
if /i "%%~xa"==".%%~b" set Skip=YES
)
if not defined Skip (
echo %%~a
)
))>New.tmp
move New.tmp "%List%" >nul
pause
call :ME
exit
:ME
set "S1=.:ailnhpst/"
set "S0=fPdv"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit
‘玖’ shell中怎么删除文件中指定行的
1、删除包含指定关键字的行:
sed -i '/hello/d' test_temp
[root@host]$ cat test_temp
world
123
4566
889
2、删除指定行号的行
sed -i '2d' test_temp
[root@host]$ cat test_temp
world
4566
889
3、sed -i '1d' a.txt删首行
4、sed -i '$d' b.txt删尾行
5、sed -i 's/[ ]*//g' c.txt删空格
6、sed -i '/^$/d' d.txt删空行
7、sed -i ‘/love/d’ a.txt删包含string的行。
(9)脚本删除指定文本行扩展阅读:
shell 命令
常用命令:
cat 文件名 输出文件内容到基本输出(屏幕 or 加>fileName 到另一个文件)
cb 格式化源代码
chmod //change mode,改变文件的权限
cp
date 当前的时间和日期
echo $abc 在变量赋值之后,只需在变量前面加一个$去引用.
lint语法检查程序
ls dir
man help
more type
查看磁盘空间状况
ps 查看当前进程状况
who 你的用户名和终端类型
定义变量 name=abc? (bash/pdksh) || set name = abc (tcsh)
mkdir 创建目录
rmdir 删除目录
cd 进入目录
rm 删除文件
more 显示文件
echo 显示指定文本
mv 改文件名 /移动文件
pwd 显示目录路径命令
‘拾’ Linux:删除某文件中的指定行,求解
可以用下面脚本的方法删除某文件的指定行
#!/bin/sh
FILENAME=file.txt # 可换为$1
if [ ! -f file.txt ];then
echo "$FILENAME no found"
exit 1
fi
echo -n "INPUT SOME THING: "
read
if [ ! -z ”$REPLY“ ];then
INFO=$(grep $REPLY FILENAME)
if [ ! -z "$INFO" ] ; then
sed -i -e '/$REPLY/d' FILENAME #删除只用这行就可以了
else
echo "没有指定内容的信息"
exit 1
fi
else
echo "input some thing"
exit 1
fi
exit $?
1. ============》》》添加 用sed在文档中间指定行后增加一行有时候我们会用脚本,来修改文档,比如在文档中增加一行或减少一行
echo "1";
echo "2";
echo "4";
echo "5";如上例子,想要在echo "2";后面加上一条echo "3";可以用如下命令sed -i '/echo \"2\";/a\echo \"3\";' test.sh
之所以用分号,是因为文本中本来就有。也就是说分号不是必须的!抽象出来就是: sed -i '/* /a*' filename
2. ============》》》删除 sed 删除文件中的一行内容Linux shell脚本 删除文件中的一行内容
比如:在1.txt里有以下内容:
HELLO=1
NI=2
WORLD=3
I Love China.
Love all
....
如果是要删除第三行:
sed -i '3d' 1.txt
如果删除以Love开头的行
sed -i '/^Love/d' 1.txt
删除包含Love的行
sed -i '/Love/d' 1.txt