Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Создание файла того же размера, что и исходный, но пустого. Как?  (Прочитано 3173 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Zhook

  • Автор темы
  • Участник
  • *
  • Сообщений: 182
  • Super Zhook. Xubuntu 12.04; GIMP 2.8; Pentium 4; Geforce 6600.
    • Просмотр профиля
Помогите, пожалуйста. Есть файл-образ(формат .img) какого-то размера...
Нужно создать пустой файл-образ такого же размера, но пустой.
Видел вариант создания пустого образа размером в 1 Гб с помощью утилиты dd:
dd if=/dev/zero of=system-ext.img bs=1 count=0 seek=1GНо нужно, чтобы был не 1 Гб, а того же размера, что и исходный файл.
(системный образ для прошивки, размер не должен отличаться от исходного, долго рассказывать...)
Эх!Думаете шесть маленьких лапок на одну большую клавиатуру - это удобно??!

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Как-то так
dd if=/dev/zero of=system-ext.img bs=1 count=0 seek=`ls -l образец.img|awk '{print $5}'`

Оффлайн trendix

  • Новичок
  • *
  • Сообщений: 22
  • Где ,ты, DOS ??
    • Просмотр профиля
тема очень важная. Вот вопрос : как создать копию папки с пустыми файлами в подпапках. Что-то я не мог найти или зацепится ,к чему-либо,чтобы модифицировать. Подскажите кто может. Век буду помнить.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
trendix, Ваша задача решается в 2 этапа.
1.Скопируйте директорию рекурсивно.
2.Модифицируете все файлы.
ЗЫ.Какой-то вирусней запахло.
« Последнее редактирование: 10 Января 2013, 08:34:12 от alexander.pronin »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
ls -l образец.img|awk '{print $5}'
Оптимизируем:
stat -c%s FILE
с пустыми файлами в подпапках
Пустые файлы того же размера, или нулевого размера?

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Оптимизируем:
stat -c%s FILE
Не знал такой фишки. Спс.

Оффлайн trendix

  • Новичок
  • *
  • Сообщений: 22
  • Где ,ты, DOS ??
    • Просмотр профиля
файлы пустые. Насчет вирусов. Это я понял как вопрос::зачем. Очень много папок  в разных местах на разных компах. Очень много дублированных файлов. Создаю папки с подпапками с пустыми файлами и оперирую с ними как хочу. Места ,как понимаете не занимает.

Пользователь решил продолжить мысль 10 Января 2013, 13:51:32:
Но александр Вашего объяснения я,честно говоря не понял.

Пользователь решил продолжить мысль 10 Января 2013, 14:00:44:
Да,размер ноль
« Последнее редактирование: 10 Января 2013, 14:02:13 от trendix »

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Но александр Вашего объяснения я,честно говоря не понял.
1. Рекурсивное копирование - это
cp -r ...
т.е. копирование всех вложенностей.
2. Модификацию надо проводить только файлов (не директорий), т.е. следует перед модификацией проверить. А затем уже модифицировать. Можно даже сохранить размер и при этом на диске они не будут занимать место (даже гигабайтные файлы), но только в Linux (концепция "черных дыр").
ЗЫ. Теперь уже очень подробно расскал, дальше уже проще сделать.

Оффлайн Self-Perfection

  • Активист
  • *
  • Сообщений: 331
  • Arch linux, KDE
    • Просмотр профиля
А не проше использовать
cp -rl?

Ну или
cp -srесли нужно скопировать не на тот же раздел
Читайте документацию, наставницу вашу!
Памятка по описанию проблем:
Для решения [такой-то задачи] делаю [такие-то действия], но вместо [ожидаемый результат] получаю [описание отличий].

Оффлайн Zhook

  • Автор темы
  • Участник
  • *
  • Сообщений: 182
  • Super Zhook. Xubuntu 12.04; GIMP 2.8; Pentium 4; Geforce 6600.
    • Просмотр профиля
alexander.pronin, arcfi, спасибо. Всё сработало.
Эх!Думаете шесть маленьких лапок на одну большую клавиатуру - это удобно??!

Оффлайн trendix

  • Новичок
  • *
  • Сообщений: 22
  • Где ,ты, DOS ??
    • Просмотр профиля
Думаю,что это не лучший путь(доказательств не имею)
.Нельзя-ли  читать названия файлов по очереди и направлять их в touch.Мб есть что-нибудь такое-эдакое??????

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
trendix, сделать-то можно:
Код: (bash) [Выделить]
SRC="/dir1"
DST="/dir2"
rsync --recursive --include="*/" --exclude="*" "$SRC/" "$DST"
cd "$SRC"
find -type f -exec touch "$DST/{}" \;

Однако, пардон, я до сих пор не понял смысла. =(

Оффлайн trendix

  • Новичок
  • *
  • Сообщений: 22
  • Где ,ты, DOS ??
    • Просмотр профиля
arcfi!
Спасибо за отзывчивость.
Будет папка с подпапками в которых будут файлы с именами,которые есть на других компах в действительности.
При поступлении файла с таким же названием он будет отбрасываться ,иначе файл добавится(пустой),а полный запишется куда надо. Такая виртуальная папка места не занимает и в то-же время обладает свойствами реальной папки.Если бы я сохранил имена  в текстовом файле,то искать одинаковы строки сложнее и добавлять

Пользователь решил продолжить мысль 10 Января 2013, 21:12:51:
Но ,я так понял ,что это сделаю для одной папки без подпапок. Вы уж подскажите. я не силен.
« Последнее редактирование: 10 Января 2013, 21:12:51 от trendix »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Есть мнение, что это можно реализовать через rsync с куда меньшим количеством костылей.
Хотя существуют и иные способы сравнения каталогов, типа такого:
diff <(cd /dir1 ; find | sort) <(cd /dir2 ; find | sort)
Но ,я так понял ,что это сделаю для одной папки без подпапок.
Нет, рекурсивно.
« Последнее редактирование: 11 Января 2013, 00:06:34 от arcfi »

Оффлайн trendix

  • Новичок
  • *
  • Сообщений: 22
  • Где ,ты, DOS ??
    • Просмотр профиля
acfi!
как я понял получу в результате  текстовый файл с отсортированными названиями и повторами названий одинаковых файлов??

Пользователь решил продолжить мысль 11 Января 2013, 15:17:21:
ознакомился поверхностно с rsync---да,кажетсясильная штука .Влезу обязательно в руководство основательно. Спасибо за наводку.
« Последнее редактирование: 11 Января 2013, 15:17:21 от trendix »

 

Страница сгенерирована за 0.085 секунд. Запросов: 25.