Разбить все файлы с помощью команды 'awk' в другом каталоге с порядковым номером перед расширением - PullRequest
0 голосов
/ 04 ноября 2019

Мой сценарий оболочки

FromDir="/FromDir" 
ToDir="/ToDir" 

for Filename in *.txt
  do
  awk 'NR%2000==1{x="'${ToDir}/${Filename}'_"++i".txt";}{print >x}' $Filename
  done
exit

Я пробовал это

Filename=$(ls *.txt | cut -f 1 -d '.')
awk 'NR%2000==1{x="'$ToDir/$Filename'_"++i".txt";}{print >x}' $Filename

и

awk 'NR%2000==1{x="'${ToDir}/${Filename} | cut -f 1 -d '.''_"++i".txt";}{print >x}' $Filename

Команда awk увеличивает номер файла после расширения. Мне нужно перед расширением

пример ВЫХОД

Filename.txt_1.txt
Filename.txt_2.
Filename.txt_3.txt

Мой ожидаемый ВЫХОД

Filename_1.txt
Filename_2.txt
Filename_3.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...