Вычтите 1 из всех имен файлов (переименуйте их) в каталоге.

Обновление xserver-xorg-input-vmmouse к версии 1:12.9.0-0ubuntu0.1 (никакая потребность указать версию, хотя, просто sudo apt-get install xserver-xorg-input-vmmouse сделает), кажется, способ зафиксировать его. Это работало на меня!

Для ссылки я узнал об этом там:

18
24.02.2014, 22:48
6 ответов
[115944] Старое доброе переименование perl:[115945] [115718] [115946] [Замечания]
  • Номера изображений должны быть больше 0.
  • В случае, если изображения больше 9 и не имеют лидирующих 0, используйте [116279]$(ls -v1 *)[116280], чтобы избежать комкования. Предложенное @arielf и замеченное @Graeme.
  • В случае сомнений используйте также [116281]-v[116282] для многословия и [116283]-n[116284] для бездействия.[115953].
    21
    27.01.2020, 19:45
    [115881] Вы можете выполнить итерацию на выходе ls, это работает для вашего примера:

    Вы должны быть на одном пути с вашими файлами[115884].

    5
    27.01.2020, 19:45
    [115877] Вы можете передать сгенерированные команды [116170]mv[116171] в [116172]bash[116173]. Таким образом, вам не нужно будет копировать их в скрипт и выполнять их. Смотрите:

    И будет выполнено все, что связано с [116174]bash[116175].[115880].

    6
    27.01.2020, 19:45
    [115936] Кажется, следующее работает для всего, что соответствует образцу [116259] imageNUMBER.jpg[116260]. Я поместил [116261]echo[116262] перед командой [116263]mv[116264], чтобы сначала показать, что будет делать команда; чтобы действительно выполнить переименование, просто удалите [116265]echo

    #!/bin/sh
    
    HOSTNAME=MYHOSTNAME                               # name of this computer
    DIRECTORIES="/var/www /etc/ /var/backup/database" # directories to backup
    BACKUPDIR=/mnt/backup                             # where to store the backups
    TIMEDIR=/mnt/backup/last-full                     # where to store time of full backup
    TAR=/bin/tar                                      # name and location of tar
    
    PATH=/usr/local/bin:/usr/bin:/bin
    DOW=`date +%a`                          # Day of the week e.g. Mon
    DOM=`date +%d`                          # Date of the Month e.g. 27
    DM=`date +%d%b%Y`                       # Date and Month e.g. 27Sep2010
    
    # On the 6 of the month a permanent full backup is made
    # Every Sunday a full backup is made - overwriting last Sundays backup
    # The rest of the time an incremental backup is made. Each incremental
    # backup overwrites last week incremental backup of the same name.
    #
    # if NEWER = "", then tar backs up all files in the directories
    # otherwise it backs up files newer than the NEWER date. NEWER
    # gets its date from the file written every Sunday.
    
    # Monthly full backup
    if [ $DOM = "06" ]; then
        NEWER=""
        $TAR $NEWER -cf $BACKUPDIR/$HOSTNAME-$DM.tar $DIRECTORIES
    fi
    
    # Weekly full backup
    if [ $DOW = "Sun" ]; then
        NEWER=""
        NOW=`date +%d-%b`
    
        # Update full backup date
        echo $NOW > $TIMEDIR/$HOSTNAME-full-date
        $TAR $NEWER -cf $BACKUPDIR/$HOSTNAME-$DOW.tar $DIRECTORIES
    
    # Make incremental backup - overwrite last weeks
    else
    
        # Get date of last full backup
        NEWER="--newer `cat $TIMEDIR/$HOSTNAME-full-date`"
        $TAR $NEWER -cf $BACKUPDIR/$HOSTNAME-$DOW.tar $DIRECTORIES
    fi
    
    В первой строке, изображение [116267]ls*.jpg|sort -V[116268] приведет к тому, что JPG файлы будут перечислены с возрастающими номерами в названии файла. Строка [116269]x=[116270] извлекает номер из имени файла. Строка [116271]y=[116272] затем уменьшает число на единицу. Имя входного файла и номер [116273]y[116274] затем используются в команде [116275]mv[116276], где флаг [116277]-i[116278] уведомит Вас перед перезаписью файла.

    Для моего собственного небольшого теста это дало результат:

    • Лично я бы предложил переименовать файл на более новое имя, так как теперь порядок обработки файлов может иметь большое значение.[115943].
    4
    27.01.2020, 19:45
    [115954] Используя скрипт [116285]perl[116286] [116287] prename[116288], который symlinked to rename on Debian based distros, также нуждается в GNU [116289] find[116290]/[116291]sort[116292]. Файлы расположены в порядке возрастания, чтобы предотвратить любую перезапись.

    Удалите [116293]-n[116294], как только убедитесь, что он делает то, что вам нужно. Перед этим предупредит об уже существующих файлах. Однако до тех пор, пока он будет показывать переименовываемые файлы в порядке возрастания, конфликтов при запуске по-настоящему не будет.[115957].

    4
    27.01.2020, 19:45
    [117536] С [118002]zsh[118003]:

    (удалить [118004]-n[118005], когда он счастлив).

    (n)[118007] сортировать список численно, поэтому [118008]image9.jpg[118009] переименовывается перед [118010]image10.jpg[118011].[117541].

    4
    27.01.2020, 19:45

    Теги

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