#bash #split
#bash #разделить
Вопрос:
У меня есть два вопроса в split
команде:
1) Как мы можем разделить огромный файл в этом формате?
x0
x1
.
.
.
x10
.
.
.
2) Как мы можем разделить огромный файл в этом формате?
0
1
.
.
.
10
.
.
.
100
.
.
.
То, что я пробовал, не является удовлетворительным, потому что результат:
x00
x01
x02
.
.
.
x10
.
.
.
x100
.
.
.
Спасибо
Комментарии:
1. Я не понимаю вопроса.
2. Значит, вам нужно просто удалять
x
из каждой строки?3. Я хочу удалить x и запускать файлы с одного числового суффикса…
4. Он начинается с x00, x001 … x10 …,x1000,… Но я хочу этот результат: x0, x1 … x10 … x100
5. Могу я объяснить вам, что я имею в виду? 🙂
Ответ №1:
Первый вопрос:
>> ls
file
>> split -a 1 -d file
>> ls
file x0 x1 x2 x3 ...
Однако вы получите
split: output file suffixes exhausted
с помощью этого метода, если будет более 9 разделенных файлов. Вы можете использовать
>> split -d file
>> ls
file x00 x01 x02 ...
а затем использовать rename
:
>> rename 's/^x0/x/' x0*
>> ls
file x0 x1 x2 ...
Второй вопрос: используйте
split -a 1 -d file ''
если у вас будет менее 10 разделенных файлов. В противном случае используйте
split -d file ''
и затем
rename 's/^0//' 0*