Запомняне

» Здравейте
[ Вход :: Регистриране ]
 » Начало » Li Форуми » Help & Support » Общи Проблеми и Въпроси » трябвами помощ за bash скрипт
Тема: трябвами помощ за bash скрипт, автоматично преименуване на файлове в ди
Мнение #1 Skip to the next post in this topic.
Написано на: Януари 20 2009, 01:29

No avatar chosen




Група: Li fans
Мнения: 25
Регистриран: Август 2005

Оценка: няма

Offline
здравейте,
моля за малко помощ

трябва ми един скрипт на bash  който ако имам една дир с файлове
пп.1
ппп.2
пппп.3
то да може да обходи директорията и да преименува файловете така че да махне
цифрите отзад и да се получи
пп
ппп
пппп
опитвах се да направя нещо но не се получи.
Благодаря предварително


П.П.Някой има ли идея кога ще оправят убунту 8.10 с новото кде така че куанта да върви най - после и със sftp протокола.
Контакти:  pecito
WEB  
Мнение #2 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 20 2009, 20:50

Avatar




Група: Li fans
Мнения: 763
Регистриран: Февруари 2008

Оценка: 5

Offline
http://www.kubuntu.org/news/kde-4.2-rc1

for i in `find . -name '*.[0-9]'`; do

  mv $i `echo $i | sed -e "s/[0-9]$//"`

done

Контакти:  altoas

  • AOL  AOL:
  • ICQ  ICQ:
  • MSN  MSN:
  • YIM  Yahoo IM:
Мнение #3 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 22 2009, 11:24

No avatar chosen




Група: Li fans
Мнения: 258
Регистриран: Януари 2008

Оценка: няма

Offline
Цитат: (pecito @ Януари 20 2009, 01:29)

здравейте,
моля за малко помощ

трябва ми един скрипт на bash

А едно perl скриптче може ли :24; ?
Контакти:  AZ ZERGA
WEB  
Мнение #4 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 22 2009, 11:49

Avatar




Група: Li fans
Мнения: 763
Регистриран: Февруари 2008

Оценка: 5

Offline
за?

Контакти:  altoas

  • AOL  AOL:
  • ICQ  ICQ:
  • MSN  MSN:
  • YIM  Yahoo IM:
Мнение #5 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 22 2009, 11:55

No avatar chosen




Група: Li fans
Мнения: 258
Регистриран: Януари 2008

Оценка: няма

Offline
За имената на файловете които pecito по-горе пише че за bash скрипт не ми стига акъла  :D
Контакти:  AZ ZERGA
WEB  
Мнение #6 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 22 2009, 13:23

Avatar




Група: Li fans
Мнения: 763
Регистриран: Февруари 2008

Оценка: 5

Offline
Quote: (AZ ZERGA @ Jan. 22 2009, 11:55)

За имената на файловете които pecito по-горе пише че за bash скрипт не ми стига акъла  :D

#!/usr/bin/perl -w

use strict;
use warnings;

opendir(IMD, "/home/yourname/www/images/") || die("Cannot open directory");
@list= readdir(IMD);

foreach (@list) {
if ($_ =~ /([A-z0-9\._]+)\.([0-9]+)$/) {
 my ($file1) = $1 . $2;
 my ($file2) = $1;
 rename("$file1", "$file2") or die "Cant exec rename $!\n";
}
}
closedir(IMD);


може да имам лека грешка в "my ($file1) = $1 . $2;"
но мисля, че си схванал идеята..

Редактирано от altoas на Януари 22 2009, 13:33

Контакти:  altoas

  • AOL  AOL:
  • ICQ  ICQ:
  • MSN  MSN:
  • YIM  Yahoo IM:
Мнение #7 Skip to the next post in this topic.
Skip to the previous post in this topic. Написано на: Януари 22 2009, 14:55

No avatar chosen




Група: Li fans
Мнения: 258
Регистриран: Януари 2008

Оценка: няма

Offline
:28;
Контакти:  AZ ZERGA
WEB  
Мнение #8
Skip to the previous post in this topic. Написано на: Януари 22 2009, 19:19

Avatar




Група: Li fans
Мнения: 763
Регистриран: Февруари 2008

Оценка: 5

Offline
ето го работещо и тествано:

#!/usr/bin/perl -w
#
use strict;
use warnings;

print "Enter dirname:";
my $dir = <STDIN>; chomp $dir;
opendir(IMD, "$dir") || die("Cannot open directory");
my @list= readdir(IMD);

foreach (@list) {
if ($_ =~ /([A-z0-9\._]+)\.([0-9]+)$/) {
my ($file1) = $1 . '.' . $2;
 my ($file2) = $1;
  rename("$dir/$file1", "$dir/$file2") or die "Cant exec rename $!\n";
  }
  }
  closedir(IMD);


тест ситуация 1:
папка dirtest:
example.1.ex.0  mmmm.aaaa.0 exetest.0

след стартиране на скрипта:
example.1.ex  exetest  mmmm.aaaa

Контакти:  altoas

  • AOL  AOL:
  • ICQ  ICQ:
  • MSN  MSN:
  • YIM  Yahoo IM:
Общо 7 отговор(а) от Януари 20 2009, 01:29 до сега
 » Начало » Li Форуми » Help & Support » Общи Проблеми и Въпроси » трябвами помощ за bash скрипт

© 2014 Linux Index Project
Powered by iF 1.0.0 © 2006 ikonForums