Rock singer Nick Cave has said he decided to perform in Israel in protest at an anti-Israel boycott campaign that is trying to "bully musicians" into shunning the country.

The Bad Seeds singer faced criticism from some of his peers over his plan to hold two shows in Tel Aviv.

In an open letter, Artists For Palestine UK - which counts among its members Pink Floyd's Roger Waters and Sonic Youth's Thurston Moore - urged him to cancel the show "while apartheid remains".

But Cave said that playing the shows was his way of taking a "principled stand" against the Boycott, Divestment, Sanctions (BDS) movement, which lobbies performers, as well as corporations and academic institutions, to disassociate themselves from Israel.

Speaking in Israel, Cave said international musicians who wanted to play in Israel risked being "publicly shamed" by the campaign.

"If you do play Israel, you have to go through a kind of public humiliation from Roger Waters and co - and no one wants to be publicly shamed," he said.

Cave said that three years ago he had received a letter from musician Brian Eno asking him to sign "a list of people called Artists For Palestine", but that he objected.

"So I wrote back and I said 'I don't like lists, I don't want to sign the list'.

"Then it kind of occurred to me that I'm not signing the list but I'm also not playing Israel. And that just seemed to me cowardly really.

"So, after a lot of thought and consideration I rang up my people and said we're doing a European tour and Israel.

"Because it suddenly became very important to me to make a stand against those people that are trying to shut down musicians, to bully musicians, to censor musicians and to silence musicians."

Israel has long complained the BDS campaign goes beyond protest and is an attempt to delegitimise the state.

The band will conclude their world tour in support of album Skeleton Tree at the Menorah Arena in Tel Aviv on November 20, and the Australian rocker said he plans on "disappearing for some time" afterwards.