2017-04-10 51 views
0

這也許是一個noob問題,但我無法找到答案。 我如何使用SED找到Santa83_4。名稱Santa83_4是一個例子,可以是任何charcater的任何東西。使用SED查找2個反斜槓之間的單詞

.... \ randomtext \ randomtext \用戶名\ Santa83_4 \速率\ randomtext \ randomtext ...

謝謝你是進步

+0

這似乎已經在另一個話題被覆蓋? http://stackoverflow.com/questions/13242469/how-to-use-sed-grep-to-extract-text-between-two-words – jimmy8ball

+0

我知道這個話題,並與之一起玩。它沒有給我我需要的答案。 –

+0

爲什麼?我的意思是,爲什麼要花費在字符串上使用「sed」來找到「foo」,所以如果只需要「echo」foo「',只要輸出」foo「就可以打印」foo「。你真的想做什麼? –

回答

0

的grep方法:

s='...\randomtext\randomtext\name\Santa83_4\rate\randomtext\randomtext..' 
echo $s | grep -Po '\\name\\\K[^\\]+' 

sed方法:

echo $s | sed -n 's/.*\\name\\\([^\\]*\).*/\1/p' 

輸出(兩種方法):

Santa83_4 
+0

太棒了。非常感謝你 –

+0

@WHHermans,不客氣 – RomanPerekhrest