The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Дурацкие файлы. Не копируются......, !*! tester, 18-Янв-06, 19:42  [смотреть все]
Скрипрт читает названия файлов из "tmp.txt" и копирует их из директори DIR_A в другую директорию DIR_B.

Но иногда попадаются файлы с дурацкими названиями например: "mama & papa" и скрипт не может их скопировать.... Как быть???

=======   tmp.txt ========================
man
man/fr
man/fr/mama & papa
man/fr/man1
man/fr/man1/cpbk.1
===========================================

===== Это часть скрипта ===================

    cat tmp.txt | while read Files
    do
    cp -a DIR_A$Files $DIR_B$Files
    done
============================================


linux:/usr/local/sbin #bash -x script.sh
.................
+ cat tmp.txt
+ read Files
+ cp -a /DIR_A/man/fr/mama '&' papa /DIR_B/man/fr/mama '&' papa
cp: target `papa' is not a directory
+ read Files
.................

Командой можно такой файл скопировать так:

cp -a /DIR_A/man/fr/'mama & papa' /DIR_B/man/fr/'mama & papa'

или так:

cp -a /DIR_A/man/fr/mama\ \&\ papa /DIR_B/man/fr/mama\ \&\ papa

а скриптом????

  • Дурацкие файлы. Не копируются......, !*! madskull, 20:08 , 18-Янв-06 (1)
    Ёлы-палы, это же основы!
    Возьми названия в кавычки.
    • Дурацкие файлы. Не копируются......, !*! tester, 20:17 , 18-Янв-06 (2)
      >Ёлы-палы, это же основы!
      >Возьми названия в кавычки.

      >Командой можно такой файл скопировать так:
      >cp -a /DIR_A/man/fr/'mama & papa' /DIR_B/man/fr/'mama & papa'
      >или так:
      >cp -a /DIR_A/man/fr/mama\ \&\ papa /DIR_B/man/fr/mama\ \&\ papa

      я это знаю.

      ...а скриптом????

      • Дурацкие файлы. Не копируются......, !*! elvenic, 21:01 , 18-Янв-06 (3)
        >>Ёлы-палы, это же основы!
        >>Возьми названия в кавычки.
        >
        >>Командой можно такой файл скопировать так:
        >>cp -a /DIR_A/man/fr/'mama & papa' /DIR_B/man/fr/'mama & papa'
        >>или так:
        >>cp -a /DIR_A/man/fr/mama\ \&\ papa /DIR_B/man/fr/mama\ \&\ papa
        >
        >я это знаю.
        >
        >...а скриптом????

        А так не работает:

           cp -a "DIR_A$Files" "$DIR_B$Files"

        В двойных кавычках переменные должны подставлятся...

        • Дурацкие файлы. Не копируются......, !*! tester, 22:33 , 18-Янв-06 (5)
          >>>Ёлы-палы, это же основы!
          >>>Возьми названия в кавычки.
          >>
          >>>Командой можно такой файл скопировать так:
          >>>cp -a /DIR_A/man/fr/'mama & papa' /DIR_B/man/fr/'mama & papa'
          >>>или так:
          >>>cp -a /DIR_A/man/fr/mama\ \&\ papa /DIR_B/man/fr/mama\ \&\ papa
          >>
          >>я это знаю.
          >>
          >>...а скриптом????
          >
          >А так не работает:
          >
          >   cp -a "DIR_A$Files" "$DIR_B$Files"
          >
          >В двойных кавычках переменные должны подставлятся...

          Cпасибо!

          Работает...

      • Дурацкие файлы. Не копируются......, !*! madskull, 22:31 , 18-Янв-06 (4)
        >>Ёлы-палы, это же основы!
        >>Возьми названия в кавычки.
        >
        >>Командой можно такой файл скопировать так:
        >>cp -a /DIR_A/man/fr/'mama & papa' /DIR_B/man/fr/'mama & papa'
        >>или так:
        >>cp -a /DIR_A/man/fr/mama\ \&\ papa /DIR_B/man/fr/mama\ \&\ papa
        >
        >я это знаю.
        >
        >...а скриптом????

        А какая разница, руками ты пишешь или в скрипте? Правила везде одинаковы.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру