Вопрос по работе в терминале

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
no avatar

Автор темы
bass
Сообщения: 45
Зарегистрирован: 30 ноя 2017, 08:26
Благодарил (а): 3 раза
Поблагодарили: 7 раз
Контактная информация:

Вопрос по работе в терминале

#1

19 фев 2018, 11:35

ребята, только начал изучать bash, в частности групповые операции. возник вопрос: при вводе команды rm libby*.jpg удаляются все libby1.jpg по libby9.jpg, а при вводе touch libby*.jpg создается только одноименный файл. В touch что, групповуха не работает? Или я чего-то не дописал? Спасибо

Аватара пользователя

Dja
Сообщения: 6875
Зарегистрирован: 27 авг 2016, 20:03
Решено: 30
Откуда: Voskresensk
Благодарил (а): 1312 раз
Поблагодарили: 724 раза
Контактная информация:

Вопрос по работе в терминале

#2

19 фев 2018, 11:39

bass, а как по-вашему он должен определить сколько вам файлов надо? 01-99? 01-999? 01-9999? 01-9999999999?

no avatar

Автор темы
bass
Сообщения: 45
Зарегистрирован: 30 ноя 2017, 08:26
Благодарил (а): 3 раза
Поблагодарили: 7 раз
Контактная информация:

Вопрос по работе в терминале

#3

19 фев 2018, 11:55

Здесь понял. Это значит с квадратными скобками мудрить надо? ща попробую

no avatar

Автор темы
bass
Сообщения: 45
Зарегистрирован: 30 ноя 2017, 08:26
Благодарил (а): 3 раза
Поблагодарили: 7 раз
Контактная информация:

Вопрос по работе в терминале

#4

19 фев 2018, 12:01

нифига. touch doc[1-9].txt. эффекта нет. опять одноименный файл

Аватара пользователя

Bill Williamson
Сообщения: 928
Зарегистрирован: 31 авг 2016, 13:38
Решено: 34
Благодарил (а): 288 раз
Поблагодарили: 249 раз
Контактная информация:

Вопрос по работе в терминале

#5

19 фев 2018, 12:13

bass, а циклами нельзя?
for ((a=1; a <= 9; a++)) touch libby$a.jpg
Изображение

no avatar

Автор темы
bass
Сообщения: 45
Зарегистрирован: 30 ноя 2017, 08:26
Благодарил (а): 3 раза
Поблагодарили: 7 раз
Контактная информация:

Вопрос по работе в терминале

#6

19 фев 2018, 12:43

Да откуда ж мне знать, зя или нельзя? пишу ж, только начал изучать. Я команд-то и десятка не знаю. А те, что знаю - с аргументами еще разбираться. Циклами мне еще никак, рановато

Аватара пользователя

Chocobo
Сообщения: 10015
Зарегистрирован: 27 авг 2016, 22:57
Решено: 215
Откуда: НН
Благодарил (а): 815 раз
Поблагодарили: 3010 раз
Контактная информация:

Вопрос по работе в терминале

#7

19 фев 2018, 13:19

bass, touch doc{1..9}.txt
Снимок экрана в 2018-02-19 13-18-15.png
Изображение
   
Изображение

no avatar

Автор темы
bass
Сообщения: 45
Зарегистрирован: 30 ноя 2017, 08:26
Благодарил (а): 3 раза
Поблагодарили: 7 раз
Контактная информация:

Вопрос по работе в терминале

#8

19 фев 2018, 14:40

Ага, спасибо. О таких скобках в моей литературе не было ничего :hshake:

Аватара пользователя

slant
Сообщения: 4506
Зарегистрирован: 21 июн 2017, 18:09
Решено: 99
Благодарил (а): 51 раз
Поблагодарили: 1993 раза
Контактная информация:

Вопрос по работе в терминале

#9

19 фев 2018, 16:27

bass, для программиста (любого) очень важно запомнить одно из главных правил: компьютер фантазии не имеет, и телепатией не владеет. Отсюда следствие: ни одна команда не может иметь двоякого толкования, с учетом правил используемого языка программирования.

В качестве примера: символ "*" - обозначает в баше "любое количество любых символов". Соответственно может использоваться в "масках" (образцах) для выбора в существующих текстах, но никак не для создания новых - с ним компьютер не будет знать какие именно символы и сколько их нужно. Т.е "cp *.txt" - это на человеческом: скопируй все файлы у которых в начале имени любое количество любых символов а за ними .txt
А "touch *.txt" - на человеческом будет нечто вроде "создать файл с каким-то количеством произвольных символов в начале имени, и заканчивающийся на .txt" - здесь конкретики нету, команда логически неверна.

Так что всегда старайтесь сформулировать и осознать - что именно вы командуете сделать. Если по формулировке возможна двусмысленность - значит команда неверная на 100%.

Закрыто

Вернуться в «Программирование, скриптинг, виртуализация»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя