Я «унаследовал» старый скрипт csh, который работает нормально, но теперь меня попросили что-то улучшить. Теперь я пытаюсь понять, что было запрограммировано несколько лет назад ...понимание sed строк в сценарии csh
В некоторых местах sed использовался для извлечения имен файлов или имен каталогов, и я не могу понять, что там происходит. Возможно, кто-то может и любезно объяснить это мне.
Строки кода являются:
set File = `echo $Dirnames[$i] |sed 's/.*\///'`".bdf"
set Dir = `echo $Dirnames[$i] | sed 's/\(.*\)\/.*/\1/'`
Я понимаю, весь код, за исключением СЕПГ частей ...
см http://stackoverflow.com/documentation/regex/topics и http://stackoverflow.com/documentation/sed/topics – Sundeep
также предложить использовать 'basename '$ Dirnames [$ i]" и 'dirname" $ Dirnames [$ i] "' если эти команды доступны – Sundeep
Есть ли какая-либо точка, повторно повторяющая общие знания о том, что вы не должны использовать csh для написания скриптов ? [Google «csh why not»] (https://www.google.com/search?q=csh+why+not&ie=utf-8&oe=utf-8). –