Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Общие темы > Программное обеспечение / Software

Программное обеспечение / Software Программное обеспечение, софт, software а также всё, что с этим связано. Обсуждение, впечатления, рекомендации.

Ответ
 
Опции темы
Старый 28.08.2016, 00:32   #1
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Автоматизация операций с файлами

В-общем такая задача встала:

Есть папка Яндекс.Диска, внутри неё папка, скажем, OUT.
В ней лежит вчерашний файл foo.rar

Так вот каждый день мне нужно удалять вчерашний foo.rar

Папка оказывается пустая.

В неё я копирую папку 1 из одного места, папки 2 и 3 из другого места и файл 1 ещё откуда-нибудь. Пути этих файлов и папок известны и в рамках данной задачи не меняются, что задачу эту облегчает.

Потом из них всех делаю .rar-файл, т.е. свеженький foo.rar.
А потом файл 1, папки 1,2,3 удаляю. Остаётся только foo.rar (вернулись к тому, что было вначале).

Затем я из контекстного меню выбираю пункт Яндекс-Диска скопировать публичную ссылку, через какое-то время файл заливается, ссылка оказывается в буфере, и эту ссылку я отправляю куда положено.

====

Как вы уже догадались, я хочу это дело автоматизировать.
Сначала хотел сделать bat'ник.
Ну, копировать папки и файлы это просто.
А вот сделать rar (допустимо zip) сложнее.
Не нашёл вменяемой консольной софтины под винду, которая делает архив, и забил.
Винда, вроде как, сама умеет, но я почитал про канделябры, которые надо выписывать, и тоже забил.
Так что до выяснения, можно ли ссылку на ЯДиск скопировать, даже и не дошло.

====

И вот я недавно вспомнил, что теперь в Винде есть встроенный баш, в котором есть замечательный zip -r name dir, и вообще на Линуксе вся эта задача (кроме пункта про ЯД) не стоила бы и выеденного яйца.

Так вот, господа знающие, что там поподробнее с башем под виндой? Реально таким макаром через него сделать?

Или есть ли другие способы решить поставленную задачу?
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 28.08.2016, 07:21   #2
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений
(для 6,850 пользователей)
Ответ: Автоматизация операций с файлами

У тебя же есть WinRAR? Или 7zip? У обоих есть консольные интерфейсы (см. офф сайт)

А почему не сделать на похепе cli утилиту - чому бы и нет, один фиг у тебя php интерпретатор пылится. Там тебе и zip и tar и язык знакомый с детства.

Единственное, может, я фигню советую, так как не работал с яндекс диском, но там же есть WebDav?
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
ABTOMAT (28.08.2016), ingko (28.08.2016), St_AnGer (28.08.2016)
Старый 28.08.2016, 12:44   #3
St_AnGer
Элита
 
Аватар для St_AnGer
 
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений
(для 2,828 пользователей)
Ответ: Автоматизация операций с файлами

Сообщение от ABTOMAT Посмотреть сообщение
Не нашёл вменяемой консольной софтины под винду, которая делает архив, и забил.
Винда, вроде как, сама умеет, но я почитал про канделябры, которые надо выписывать, и тоже забил.
Так что до выяснения, можно ли ссылку на ЯДиск скопировать, даже и не дошло.
Заархивировать вообще не порблема, WinRar, как минимум, имеет консольный интерфейс.

По поводу ЯД. Есть у него WebDav, лично я им пользуюсь на своём серваке, бэкапы сайтов на ЯД выпихиваю. Очень удобно, а главное - всё из консоли. Так что с выгрузкой проблем не будет, не знаю только как ссылку глобальную получить.
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.

Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2


Скачать Doom 2D: Remake v0.3.8a
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо St_AnGer за это полезное сообщение:
ABTOMAT (28.08.2016), ingko (28.08.2016)
Старый 28.08.2016, 23:38   #4
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Автоматизация операций с файлами

Слово WebDav узнал только что впервые, на этот счёт ничего не скажу, но сегодня разбирался с Яндекс API (правда, дальше авторизации по OAuth чо-то не пошло, пока отложил), в списке API видел и Яндекс Диск, так что наверняка это всё реализуется (я использовал PHP). Один раз авторизовываешься, получаешь токен и он либо вечный, либо на очень долгое время (вроде от используемого API зависит). Я даже авторизацию через OAuth сделал в консольном PHP скрипте при помощи хитрожопого финта без использования web сервера. С rar архивами как-то работал, тоже не сразу нашёл подходящую консольную утилиту, но в итоге нашёл. К сожалению сейчас с ходу не вспомню какую именно. Но вообще обычно стараюсь работать с zip, потому что даже в 2016 году не все могут сходу rar распаковать, сталкивался с проблемами.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Phantom за это полезное сообщение:
ABTOMAT (28.08.2016), impersonalis (29.08.2016), Randomize (29.08.2016)
Старый 05.09.2016, 12:55   #5
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Автоматизация операций с файлами

В-общем в связи с некоторыми другими операциями мне понадобилось сделать в Юнити кнопку, которая их делает.

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 10 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.

Ну, раз такая сложная штука уже делается кнопкой в Юнити, почему бы не пойти дальше и не заставить её же копировать файлы?
Тут обошлось без лишних операций: я просто WinRar'у консолью указываю какой архив создать (предварительно удалив старый) и кладу по очереди все файлы папки прямо в него, не копируя их никуда.

Конечно совсем шик был бы если бы у меня в буфере оказывалась ссылка на файл на Яндекс.Диске.
Но тут уже слишком сложно, не думаю, что это будет большая экономия времени.
Поэтому я сделал вот что: после создания архива открывается мне окно эксплорера с этим архивом, чтобы я мог уже по нему правой кнопкой кликнуть и ссылку скопировать. Думаю, на этом я остановлюсь и пойду автоматизировать другие вещи, куда более остро в этом нуждающиеся.

===

Печально, что нужно иметь на компе WinRar. Я бы хотел всё же обойтись средствами самой Винды, т.к. если я этот скрипт дам коллеге, ему тоже придётся иметь Винрар на компе.
И тут беда что я указываю путь к exe'шнику WinRar'а:
string archieverExePath = @"C:\Program Files\WinRAR\WinRAR.exe";
А если у чела на компе он в другой папке стоит? В коде менять? Неудобно. Конфиг только ради этого городить?
Можно как-то узнать путь к exe'шнику программы в Винде если знаешь её название? Блин, да, на Линуксе таких проблем нет.

Хотя вот упоминается, что есть чисто консольные версии винрара (уже, стало быть, не вин-)
http://cects.com/using-the-winrar-co...ls-in-windows/
Может, проще просто сложить их в папочку с моими тулзами (позволяет ли это лицензия? должно ли меня это волновать?)
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
St_AnGer (05.09.2016)
Старый 05.09.2016, 15:44   #6
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Автоматизация операций с файлами

Положи архиватор к консольке своей (у 7зипа вообще одним файлом можно), распространяй вместе с ним, запускай относительным путем.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Andvrok за это полезное сообщение:
ABTOMAT (05.09.2016), Phantom (06.09.2016), St_AnGer (05.09.2016)
Старый 05.09.2016, 16:02   #7
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Автоматизация операций с файлами

Сообщение от Andvrok Посмотреть сообщение
Положи архиватор к консольке своей (у 7зипа вообще одним файлом можно), распространяй вместе с ним, запускай относительным путем.
У 7-зипа такой же консольный интерфейс?

7z.exe a -ep1 -r "C:\hui.rar" "C:\pizda.txt" "C:\MyFavouriteGaySexPhotosFolder"

Схавает нечто подобное?
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 05.09.2016, 16:05   #8
St_AnGer
Элита
 
Аватар для St_AnGer
 
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений
(для 2,828 пользователей)
Ответ: Автоматизация операций с файлами

Сообщение от ABTOMAT Посмотреть сообщение
У 7-зипа такой же консольный интерфейс?

7z.exe a -ep1 -r "C:\hui.rar" "C:\pizda.txt" "C:\MyFavouriteGaySexPhotosFolder"

Схавает нечто подобное?
На сколько я знаю - 7zip не умеет упаковывать *.rar, только распаковать может.

А упаковать что-то типа такого будет:
7z.exe a "C:\backup.7z" -r "C:\Backup"
Хрен знает как точно упаковать, с ним в консоли не работал, но вроде перечислять файлы можно в нём.
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.

Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2


Скачать Doom 2D: Remake v0.3.8a
(Offline)
 
Ответить с цитированием
Старый 05.09.2016, 16:31   #9
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Автоматизация операций с файлами

Сообщение от ABTOMAT Посмотреть сообщение
А если у чела на компе он в другой папке стоит? В коде менять? Неудобно. Конфиг только ради этого городить?
Можно как-то узнать путь к exe'шнику программы в Винде если знаешь её название? Блин, да, на Линуксе таких проблем нет.
Переменные среды, же! В них ищутся бинарники (dll,exe, etc) после того, как не удалось найти объект с именем рядом/в стандартных местах/...

Сообщение от Andvrok Посмотреть сообщение
Положи архиватор к консольке своей (у 7зипа вообще одним файлом можно), распространяй вместе с ним, запускай относительным путем.
Лучшее решение. Да и, думаю, полно опенсорсных легковесных реализаций zip, для такой дистрибуции.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 05.09.2016, 16:35   #10
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Автоматизация операций с файлами

Сообщение от impersonalis Посмотреть сообщение
Переменные среды, же! В них ищутся бинарники (dll,exe, etc) после того, как не удалось найти объект с именем рядом/в стандартных местах/...
7зип сам себе свою переменную не делает, насчёт винрара не скажу.
(Offline)
 
Ответить с цитированием
Старый 06.09.2016, 10:10   #11
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Автоматизация операций с файлами

Так а какие объективные причины использовать rar? А под zip куча решений есть, в том числе открытых и под любую ОС.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Phantom за это полезное сообщение:
impersonalis (06.09.2016), St_AnGer (06.09.2016)
Старый 06.09.2016, 11:32   #12
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Автоматизация операций с файлами

Рар это flac в мире архиваторов. Решение для компресофилов с налётом импринтинга. Чудовищное сжатие, имхо, дающее при современных технологиях копеечное преимущество, если только вы не сжимаете терабайты. Да и 7z, ЕМНИП, имеет показатели сжатия лучше, чем рар.
Для публичных сервисов, рар вместо zip - это как doc, вместо pdf.

1 http://forum.boolean.name/showthread.php?t=16435
2 http://forum.boolean.name/showthread.php?t=429
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
Phantom (06.09.2016), Randomize (08.09.2016), St_AnGer (06.09.2016)
Старый 15.01.2017, 23:25   #13
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Автоматизация операций с файлами

У меня тоже назрела проблема с автоматизацией. Задача следующая:
есть список отобранных файлов, расположенных ниже директории disc1\foo\. Необходимо сверить хеши между файлами из этого списка и аналогичными файлами расположенными по адресу disc2\bar\, и составить отчёт (в произвольной форме - можно на экран) с результатами по каждому сравнению.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 23.01.2017, 14:48   #14
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Автоматизация операций с файлами

Психанул @ закодил всё сам
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 6 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
ABTOMAT (23.01.2017), Arton (23.01.2017), pax (20.02.2017), Phantom (23.01.2017), Randomize (23.01.2017), St_AnGer (23.01.2017)
Старый 23.01.2017, 17:49   #15
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Автоматизация операций с файлами

Когда передо мной встают подобные задачи, я создаю в нужной папке или вовсе на рабочем столе новый PHP файл, трачу три минуты, чтобы написать там код, и задача решена. Потом файл отправляется либо в небытие, либо в папку с другими подобными файлами, чтобы в будущем можно было скопипастить оттуда кусочек кода на другой подобный PHP файл применительно к другой задаче.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Phantom за это полезное сообщение:
ABTOMAT (26.01.2017), impersonalis (28.01.2017), Randomize (24.01.2017)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 14:35.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com