目前我使用以下内容查找并替换:
ack -l oldstring | xargs sed -i '' -e s/oldstring/newstring/g
有没有办法在不必多次输入oldstring
的情况下执行此操作?这就是我正在尝试的不起作用:
ack -l oldstring | xargs sed -i '' -e s/{}/newstring/g
答案 0 :(得分:0)
我最终决定创建两个bash函数来保存输入:
# Function to find and replace.
function ags {
#!/bin/bash
ag -l "$1" | xargs sed -i '' -e "s/$1/$2/g";
}
# Function to delete any lines that contain a string.
function agd {
#!/bin/bash
ag -l "$1" | xargs sed -i '' -e "/$1/d";
}