我正在尝试在unix环境下执行Groovy脚本,但是我有一个问题,我不知道如何编写可以在以下条件下执行脚本的Shell脚本:
import de.hybris.platform.servicelayer.model.ModelService;
import de.hybris.platform.servicelayer.search.FlexibleSearchService;
import de.hybris.platform.servicelayer.search.SearchResult;
import com.galerieslafayette.pcm.model.model.product.RmsProductModel ;
final FlexibleSearchService flexibleSearchService = spring.getBean("flexibleSearchService");
final ModelService modelService = spring.getBean("modelService");
new File("/tmp/productsToUpdate.csv").splitEachLine(";") {fields ->
criteria = fields[1]
if (fields[2]?.trim()) {
criteria += "</p><p>" + fields[2]
}
if (fields[3]?.trim()) {
criteria += "</p><p>" + fields[3]
}
criteria = "<p>" + criteria + "</p>"
updateProduct(fields[0], criteria)
}
def updateProduct(ugProduct, criteria) {
SearchResult<RmsProductModel> result = flexibleSearchService.search("select {pk} from {RmsProduct} where {ug}=?ugCode", ["ugCode":ugProduct]);
if(result.getResult().get(0) != null){
RmsProductModel rmsProduct = result.getResult().get(0);
String temp = rmsProduct.getProduct().getDescription(Locale.FRANCE);
rmsProduct.getProduct().setDescription(temp + criteria, Locale.FRANCE)
modelService.save(rmsProduct.getProduct());
}
}
我试图在网络上找到这样做的方法,但是我只找到如何以常规方式运行shell的主题,而不是相反。
我是UNIX的初学者,不知道命令行,或者我是否需要在环境中添加特殊说明,或者香草壳可以做到