1

我想从包含 Java 文件的当前文件夹中替换:

ColorTee.testh = new TestH(A,"JavaFileName".class); 
ColorTee.testh.addFile(C,"/folder1/folder2/folder3/file","myFile")

和:

ColorTee.testh = new TestH(value1,A,"JavaFileName".class); 
ColorTee.testh.addFile(C,"/folder3/file","myFile")

对于第二行,我只想删除/folder1/folder2

4

3 回答 3

0

就在日食:

http://www.saltycrane.com/blog/2007/03/how-to-do-global-searchreplace-across/

于 2012-08-14T13:26:54.167 回答
0

您可以使用 Perl 脚本。例如,这是我的 zsh 中的一个:

change () {
        from=$1 
        shift
        to=$1 
        shift
        for file in $*
        do
                perl -i.bak -p -e "s{$from}{$to}g;" $file
                echo "Changing $from to $to in $file"
        done
}

并利用 shell 文件名通配等,例如

$ change From To **/*.java

另一种方法是不更改您的方法调用,而是更改方法的工作方式,并剥离初始路径组件。这不是很好,并且还强烈依赖于实际的实现。

于 2012-08-14T12:44:04.037 回答
0

你应该这样做:

String path = "/folder1/folder2/folder3/file";
ColorTee.testh.addFile(C,path,"myFile")
ColorTee.testh.addFile(C,path.replace("/folder1/folder2", ""),"myFile");
于 2012-08-14T12:41:01.920 回答