1
例如串兩個字符串之間匹配:/Volumes/Macintosh HD/Users/test/
使用SED
我需要的輸出是卷名,Macintosh HD
我已經試過如下:
echo "/Volumes/testVolume/test/" | sed 's/\/Volumes\/\(.*\)\//\1/g'
但輸出是:testVolume/test
例如串兩個字符串之間匹配:/Volumes/Macintosh HD/Users/test/
使用SED
我需要的輸出是卷名,Macintosh HD
我已經試過如下:
echo "/Volumes/testVolume/test/" | sed 's/\/Volumes\/\(.*\)\//\1/g'
但輸出是:testVolume/test
這應該工作:
sed 's#/Volumes/\([^/]*\)/.*#\1#'
除了使用/
來標記搜索和替換表達式,還可以使用任何其他字符。 #
是一種常用字符,如果您的搜索或替換表達式中包含字符/
。
$ sed 's#/Volumes/\([^/]*\)/.*#\1#' <<< "/Volumes/Macintosh HD/Users/test/"
Macintosh HD
非常感謝! – user1630543 2013-03-24 21:15:31