
Я пытался разобраться с этим, пробовал разные команды, но так и не добился результата. Можете ли вы помочь мне с этим вопросом?
В вашем домашнем каталоге создайте подкаталог shirts. В подкаталоге создайте 108 файлов с именами в виде style.size.color.ext, где каждый файл содержит одну комбинацию значений из следующей таблицы.
Style tee, crew, turtleneck
Size XXL, XL, L, M, S, XS
Color red, yellow, blue
Extension info, inv
Это последняя команда, которую я использовал.
$ touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}
решение1
В вашей команде касания есть небольшая ошибка. Ваша исходная команда,
touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}
В конце концов есть/который снова пытается создать каталог, и поскольку каталог не существует, вы получите ошибку, как,
touch: cannot touch `/shirts/turtleneck.XS.blue/inv': No such file or directory
Однако, поскольку вам нужны только файлы, вам необходимо изменить исходную команду следующим образом:
touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}
ПС: Вам нужно убедиться, что каталог shirts
уже существует. В противном случае вы снова получите ту же ошибку cannot touch
.
решение2
Согласно вашему описанию, имя каждого из этих 108 файлов должно соответствовать формату style.size.color.ext
.
Так и должно быть
mkdir shirts
touch {tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}
То, что touch
происходит, - это создание пустого файла, но вы пытаетесь создать каталог shirts с различными подкаталогами. touch
Это невозможно.
Редактировать: Вы также можете сделать touch
указанную выше команду короче/лучше:
touch {tee,crew,turtleneck}.{{X,XX,}L,M,{X,}S}.{red,yellow,blue}.{info,inv}