我有一大堆需要添加评论的文件。
我正在使用sed:
sed -i '/line1/a line2' *
当我想匹配line1并在我的目录中的每个文件下面添加line2时,这很好,但是只包含某个参数的文件呢?
例如,如果我想添加注释,但仅限于包含文本的文件:
add comment here
我在考虑做类似的事情:
find . -file '*.txt' -exec grep -iR 'add comment here' {} \; -exec sed -i '/line1/a line2/' {}\;
但这并没有像预期的那样发挥作用。
答案 0 :(得分:0)
您可以直接使用grep发出符合条件的文件名:
String Name=request.getParameter("Name");
String email=request.getParameter("email");
String password=request.getParameter("password");
String contact=request.getParameter("contact");
Connection con=dbconnect.con;
PreparedStatement pst=
con.prepareStatement("insert into register(Name,email,password,contact) values(?,?,?,?)");
pst.setString(1,Name);
pst.setString(2,email);
pst.setString(3,password);
pst.setString(4,contact);
int i=pst.executeUpdate();
grep "add comment here" -r . --include \*.txt -l | xargs sed -i '/line1/a line2/'
grep递归搜索当前目录中的文件,-r .
告诉grep只考虑--include \*.txt
个文件,而.txt
表示只打印那些文件的名称包含模式,没有别的。