преобразовать имена каталогов с датой «сейчас» на немецком языке в ГГГГ -ММ -ДД

Войдите в систему как пользователь root и выполните следующие действия:

  1. Переместите существующий файл /usr/bin/gcc в /usr/bin/gcc.orig с помощью команды mv :мв /usr/bin/gcc /usr/bin/gcc.orig
  2. С помощью текстового редактора, такого как vi, создайте новый файл с именем gcc41, ​​содержащий следующие content (строка, начинающаяся с exec, должна быть одной строкой):

     #!/bin/sh
     exec /usr/bin/gcc.orig -m32 -static-libgcc -B /usr/lib/gcc/x86_64-redhat-linux/4.4.7/32/ $*
    

Примечание :Каталог usr/lib/gcc/x86 _64 -redhat -linux/4.1.2/32/ может немного отличаться в зависимости от версии вашей операционной системы Linux.Search for the соответствующий 32-битный -каталог в /usr/lib/gcc в операционной системе Linux. system и используйте этот каталог в файле gcc41.

  1. Измените права доступа к файлу gcc41 с помощью следующей команды:

    chmod 755 /usr/bin/gcc41 
    chmod 755 /usr/bin/gcc
    
  2. Создайте символическую ссылку на /usr/bin/gcc с помощью следующей команды :ln -s -f /usr/bin/gcc41 /usr/bin/gcc
  3. Выйти как пользователь root
0
05.09.2020, 22:23
1 ответ

С утилитой rename, основанной на perl -и, в частности, с достаточно новой версией perl (, более старые версии Time::Pieceне предоставляют метод use_locale, который позволяет анализировать не -Английские названия месяцев и дней):

$ LC_TIME=de_DE.UTF-8 rename -n -- '
    BEGIN{use Time::Piece; Time::Piece->use_locale()};
    s/(.*?), (\d+\. \w+ \d+)/Time::Piece->strptime($2,"%d. %B %Y")->strftime("%Y-%m-%d.$1")/e
  ' *,\ */
rename(Capdepera, 2. Juli 2013/, 2013-07-02.Capdepera/)
rename(Marsa Alam, 31. Dezember 2011/, 2011-12-31.Marsa Alam/)
rename(Stuttgart, 13. Februar 2013/, 2013-02-13.Stuttgart/)

Вы можете опустить назначение LC_TIME=de_DE.UTF-8, если в вашей локали уже используется немецкая дата и время. Более простой случай (без строки данных GPS )оставляем в качестве упражнения.

1
18.03.2021, 23:06

Теги

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