Я хочу извлечь определенную часть строки, если она существует. Меня интересует имя файла xml, т.е. я хочу, чтобы между "_" и ".xml".
Это нормально, печатается "555"
MYSTRING=`echo "/sdd/ee/publ/xmlfile_555.xml" | sed 's/^.*_\([0-9]*\).xml/\1/'`
echo "STRING = $MYSTRING"
Это не нормально, потому что возвращает всю строку. В этом случае я не хочу никакого результата.
Он печатает "/sdd/ee/publ/xmlfile.xml"
MYSTRING=`echo "/sdd/ee/publ/xmlfile.xml" | sed 's/^.*_\([0-9]*\).xml/\1/'`
echo "STRING = $MYSTRING"
Любые идеи, как получить «пустой» результат во втором случае.
спасибо!