Привет.
У меня есть файлы, которые содержат одиннадцать полей в имени файла.Каждый файл имеет конкретное значение.Моя работа состоит в том, чтобы перечислить каждое имя файла и загрузить информацию в таблицу базы данных для отчетов.
Мой код awk делает это (файлы имеют суффикс VER):
find . -name "*.VER" -exec ls '{}' ';' -printf %f\\t | awk -F"~" '{print $1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6"\t"$7"\t"$8"\t"$9"\t"$10"\t"$0}' > somefile.tab
Работает нормально, кромечто он делает что-то странное с именем файла ($ 0): он повторяет это примерно так (2 последние поля справа):
RRR1 PRE DTV_PREP PREP05 JGM15453. 26 P H23-600 029416589165 20110216 RRR1~PRE~DTV_PREP~PREP05~JGM15453.~26~P~H23-600~029416589165~20110216~090353.VER ./RRR1~PRE~DTV_PREP~PREP05~JGMDTV269~33~P~H21-200~029384120357~20110216~091829.VER
Если я уберу ключ "% f" из оператора printf,Кажется, это работает, но если я оставлю это в покое и удалим $ 0, имя файла никогда не будет отображаться.Чего здесь не хватает?Есть идеи?
Спасибо за ваш вклад.