我想将网站列表转换成一些可怕的java代码,以便我可以在selenium中运行它。
http://google.com
http://facebook.com
进入
public void goToWebsite1() {driver = new FirefoxDriver();driver.get("http://google.com");driver.quit();
public void goToWebsite2() {driver = new FirefoxDriver();driver.get("http://facebook.com");driver.quit();
鉴于我完全无能,我设法这样做:
sed 's/$/");driver.quit();/g' homepage2
加上
sed 's/^/() {driver = new FirefoxDriver();driver.get("/g'
加上
prepend and increment counter
加上
sed 's/^/public void goToWebsite/g'
不幸的是,我不知道如何在每行上添加和增加一个计数器。我敢打赌有一个 awk oneliner。我想象的是这样的:
awk {x=1} {NR = gsub/^/x} {x=x+1}
最佳答案
最好不要修改NR。这是快速方法:
awk '{ print "public void goToWebsite" NR "() {driver = new FirefoxDriver();driver.get(\"" $0 "\");driver.quit();" }' file
结果:
public void goToWebsite1() {driver = new FirefoxDriver();driver.get("http://google.com");driver.quit();
public void goToWebsite2() {driver = new FirefoxDriver();driver.get("http://facebook.com");driver.quit();
关于awk - 为每个 NR 添加变量和增量变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16311401/