Скопировать файл <имя_файла> в my_<имя_файла>
Модераторы: /dev/random, Модераторы разделов
-
sidd
- Сообщения: 667
- ОС: Slackware 13.37
Скопировать файл <имя_файла> в my_<имя_файла>
Можно ли так сделать? Что-то не могу найти.
Patrick is God.
-
Lan4
- Сообщения: 339
- Статус: hikki
- ОС: Arch
-
sidd
- Сообщения: 667
- ОС: Slackware 13.37
Re: Скопировать файл <имя_файла> в my_<имя_файла>
Так нет
Я, наверно, плохо объяснил. Надо <имя_файла> в имени исходного файла не самому писать, а чтоб оно само туда вставилось. То есть, нужно, чтоб команда выглядела как-то так:
Где * — это какая-то штука, которая вставит имя входящего файла.
Или так нельзя вообще?
cp <имя_файла> my_*
Где * — это какая-то штука, которая вставит имя входящего файла.
Или так нельзя вообще?
Patrick is God.
-
Brainsburn
- Сообщения: 950
- Статус: /
- ОС: Gentoo
-
Lan4
- Сообщения: 339
- Статус: hikki
- ОС: Arch
Re: Скопировать файл <имя_файла> в my_<имя_файла>
ммм... как вариант:
ну оформить как скрипт, конешн)
Тю. Ну я туплю) Ну да, если все файлы, то так, конешно)
Код: Выделить всё
cp $1 my_$1ну оформить как скрипт, конешн)
Brainsburn писал(а): ↑09.03.2011 21:38
Вы меня опередили
for i in `ls`; do cp "$i" "my_$i"; done
как-то так. хотя это уязвимо к пробелам
Тю. Ну я туплю) Ну да, если все файлы, то так, конешно)
Blog: hikki-tech
-
liaonau
- Сообщения: 390
- ОС: gentoo
Re: Скопировать файл <имя_файла> в my_<имя_файла>
sidd писал(а): ↑09.03.2011 21:36Так нетЯ, наверно, плохо объяснил. Надо <имя_файла> в имени исходного файла не самому писать, а чтоб оно само туда вставилось. То есть, нужно, чтоб команда выглядела как-то так:
cp <имя_файла> my_*
Где * — это какая-то штука, которая вставит имя входящего файла.
Или так нельзя вообще?
Код: Выделить всё
for x in *;do; cp {,my_}"${x}";doneС пробелами в именах вроде работает
P.S. SLEDopit в следующем сообщении прав. Исправил.
Спасибо сказали:
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Скопировать файл <имя_файла> в my_<имя_файла>
лучше писать вот так:
Код: Выделить всё
for i in *; do cp "$i" "my_$i"; doneКод: Выделить всё
$ touch 1_test "2 test" "3 t t t t test"; for x in $(ls); do echo cp {,my_}"${x}";done
cp 1_test my_1_test
cp 2 my_2
cp test my_test
cp 3 my_3
cp t my_t
cp t my_t
cp t my_t
cp t my_t
cp test my_testКод: Выделить всё
$ touch 1_test "2 test" "3 t t t t test"; for x in *; do echo cp {,my_}"${x}";done
cp 1_test my_1_test
cp 2 test my_2 test
cp 3 t t t t test my_3 t t t t testUNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
sidd
- Сообщения: 667
- ОС: Slackware 13.37