후 텍스트를 얻을 : "을 TDB_full_335.51_2013_02_14.sql"에서 난 단지 "2013_02_14는" 내가 이것을 얻을 수 있습니다 원하는 :4 자리 숫자를 찾아 그들을
echo $(find -s ~/Downloads | grep -e '\.sql' | awk -F/ '{print $NF}' | sed -n '/TDB_full/p' | awk 'END{print}' | awk '{gsub(".sql", "");print}' | cut -d "_" -f4 -f5 -f6)
지금은 괜찮지만 파일 이름 길이가 변경되면 실패합니다. 4 자리 숫자 "2013"을 검색하고 ".sql"다음에 숫자를 가져 오는 방법이 있습니까?
이 발견하는 경우 :
grep -o '\([[:digit:]]\)\{4\}'
을 만 나는 "2013"
을 나는 켄 톰슨은 UNIX 철학으로 마음이 있다고 생각하지 않습니다. 그것은 내가 보아온 최악의 파이프 라인 중 하나입니다. –