又来求高人指点了。。
发表于 : 2012-08-06 20:24
写一个脚本,非交互模式,修改一个文件的第100行内容随意,。。。然后追加abc到101行。。。文件名随意。。。
求指点
求指点

代码: 全选
head -99 test.txt > tmp.txt
echo "test" >> tmp.txt
var=`head -101 test.txt | tail -1`abc
echo $var >> tmp.txt
num=`wc -l test.txt | awk '{print $1}'`
tailline=`expr $num - 101`
tail -$tailline test.txt >> tmp.txt
cat tmp.txt > test.txt
rm tmp.txt
过七不候 写了:用head + tail 应该可以搞定,我这边试了一下。代码: 全选
head -99 test.txt > tmp.txt echo "test" >> tmp.txt var=`head -101 test.txt | tail -1`abc echo $var >> tmp.txt num=`wc -l test.txt | awk '{print $1}'` tailline=`expr $num - 101` tail -$tailline test.txt >> tmp.txt cat tmp.txt > test.txt rm tmp.txt
怎么都是s?lilydjwg 写了:这个意思?代码: 全选
sed -e '100s/xxx/yyy/' -e '101s/$/abc/'
这里不需要对输入进行重定向的,sed 会处理在命令行上列出的文件。(去掉 < 即可)13378333 写了:记录一下。。
sed -e "s|%%PREFIX%%|/usr/local/nginx|" \
-e "s|%%PID_PATH%%|/usr/local/nginx/logs/nginx.pid|" \
-e "s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf|" \
-e "s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log|" \
< man/nginx.8 > objs/nginx.8
你要找 m 吗?13378333 写了:怎么都是s?lilydjwg 写了:这个意思?代码: 全选
sed -e '100s/xxx/yyy/' -e '101s/$/abc/'