Могу ли я изменить размер нескольких изображений в каталоге до 160x160 одновременно? [dубликат]

Вы коснулись большой разницы между окнами и ubuntu. В Windows, когда вы вошли в систему как программы администратора, будут установлены без запроса пароля. Это позволяет также вредоносным программам запускать свои программы. В Ubuntu (Linux), даже входящем в систему как администратор, система всегда будет запрашивать ваш пароль при изменении системы. Таким образом, вредоносное ПО не может легко ввести в действие вашу систему. Подведем итог запуску Ubuntu в качестве администратора. Если вы открываете другую учетную запись для своих детей, чем предоставляете им только обычные права пользователей, чтобы они не могли испортить систему.

4
задан 14 May 2017 в 13:33

6 ответов

Я нашел простое решение, запустите следующие команды

sudo apt-get install nautilus-image-converter
nautilus -q
Теперь перейдите в каталог с помощью Nautilus Убедитесь, что включен Show hidden files. Сделайте поиск по .folder. Выберите все файлы, которые вы хотите щелкните правой кнопкой мыши и выберите «Изменить размер изображений». Выберите размер изображения в качестве параметра нестандартного размера и ширины заливки = 160 и Height = 160. И имя файла как «Изменить размер». Нажмите «Ввод»

. Ваши изображения должны быть изменены до 160

Источник

Странно, что он не работал на .icns

2
ответ дан 22 May 2018 в 22:37

Я нашел простое решение, запустите следующие команды

sudo apt-get install nautilus-image-converter nautilus -q Теперь перейдите в каталог с помощью Nautilus Убедитесь, что включен Show hidden files. Сделайте поиск по .folder. Выберите все файлы, которые вы хотите щелкните правой кнопкой мыши и выберите «Изменить размер изображений». Выберите размер изображения в качестве параметра нестандартного размера и ширины заливки = 160 и Height = 160. И имя файла как «Изменить размер». Нажмите «Ввод»

. Ваши изображения должны быть изменены до 160

Источник

Странно, что он не работал на .icns

2
ответ дан 18 July 2018 в 13:19

Я нашел простое решение, запустите следующие команды

sudo apt-get install nautilus-image-converter nautilus -q Теперь перейдите в каталог с помощью Nautilus Убедитесь, что включен Show hidden files. Сделайте поиск по .folder. Выберите все файлы, которые вы хотите щелкните правой кнопкой мыши и выберите «Изменить размер изображений». Выберите размер изображения в качестве параметра нестандартного размера и ширины заливки = 160 и Height = 160. И имя файла как «Изменить размер». Нажмите «Ввод»

. Ваши изображения должны быть изменены до 160

Источник

Странно, что он не работал на .icns

2
ответ дан 24 July 2018 в 20:09

Не командная строка, но этот скрипт python должен выполнить эту работу для вас:)

запустите ее в корневом каталоге, на который вы хотите повлиять.

import PIL,os,glob

DIMENSIONS = (160,160)
FILETYPES = ['*.ico','*.icns','*.png']


def get_pictures_from_directory(subject_path,filetypes):
    lst = []
    for extension in filetypes:
        lst.extend(glob.glob(subject_path+"/"+extension))
    return (lst)

def get_folders_in_curr_directory(directory):
    return ([d for d in os.listdir(directory) if os.path.isdir(os.path.join(directory, d))])


def load_and_resize_image(img_path,size_tuple):
    img = PIL.Image.open(img_path)
    img = img.resize(size_tuple)
    return (img)

def save_image(img,img_path):
    img.save(img_path)


def resize_pictures(pictures,DIMENSIONS):
    for picture in pictures:
        img = load_and_resize_image(picture,DIMENSIONS)
        save_image(img,picture)

def run_recursive_resize(base_path,DIMENSIONS,FILETYPES):
    directories = get_folders_in_curr_directory(base_path)
    pictures = get_pictures_from_directory(base_path,FILETYPES)
    resize_pictures(pictures,DIMENSIONS)
    for directory in directories:
         next_path = base_path +'/'+ directory
         run_recursive_resize(next_path,DIMENSIONS,FILETYPES)

run_recursive_resize('.',DIMENSIONS,FILETYPES)
1
ответ дан 22 May 2018 в 22:37

Не командная строка, но этот скрипт python должен выполнить эту работу для вас:)

запустите ее в корневом каталоге, на который вы хотите повлиять.

import PIL,os,glob DIMENSIONS = (160,160) FILETYPES = ['*.ico','*.icns','*.png'] def get_pictures_from_directory(subject_path,filetypes): lst = [] for extension in filetypes: lst.extend(glob.glob(subject_path+"/"+extension)) return (lst) def get_folders_in_curr_directory(directory): return ([d for d in os.listdir(directory) if os.path.isdir(os.path.join(directory, d))]) def load_and_resize_image(img_path,size_tuple): img = PIL.Image.open(img_path) img = img.resize(size_tuple) return (img) def save_image(img,img_path): img.save(img_path) def resize_pictures(pictures,DIMENSIONS): for picture in pictures: img = load_and_resize_image(picture,DIMENSIONS) save_image(img,picture) def run_recursive_resize(base_path,DIMENSIONS,FILETYPES): directories = get_folders_in_curr_directory(base_path) pictures = get_pictures_from_directory(base_path,FILETYPES) resize_pictures(pictures,DIMENSIONS) for directory in directories: next_path = base_path +'/'+ directory run_recursive_resize(next_path,DIMENSIONS,FILETYPES) run_recursive_resize('.',DIMENSIONS,FILETYPES)
1
ответ дан 18 July 2018 в 13:19

Не командная строка, но этот скрипт python должен выполнить эту работу для вас:)

запустите ее в корневом каталоге, на который вы хотите повлиять.

import PIL,os,glob DIMENSIONS = (160,160) FILETYPES = ['*.ico','*.icns','*.png'] def get_pictures_from_directory(subject_path,filetypes): lst = [] for extension in filetypes: lst.extend(glob.glob(subject_path+"/"+extension)) return (lst) def get_folders_in_curr_directory(directory): return ([d for d in os.listdir(directory) if os.path.isdir(os.path.join(directory, d))]) def load_and_resize_image(img_path,size_tuple): img = PIL.Image.open(img_path) img = img.resize(size_tuple) return (img) def save_image(img,img_path): img.save(img_path) def resize_pictures(pictures,DIMENSIONS): for picture in pictures: img = load_and_resize_image(picture,DIMENSIONS) save_image(img,picture) def run_recursive_resize(base_path,DIMENSIONS,FILETYPES): directories = get_folders_in_curr_directory(base_path) pictures = get_pictures_from_directory(base_path,FILETYPES) resize_pictures(pictures,DIMENSIONS) for directory in directories: next_path = base_path +'/'+ directory run_recursive_resize(next_path,DIMENSIONS,FILETYPES) run_recursive_resize('.',DIMENSIONS,FILETYPES)
1
ответ дан 24 July 2018 в 20:09

Другие вопросы по тегам:

Похожие вопросы: