sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #75037
Re: rename/copy
On Sun, 18 Jul 2004 16:46:27 +0200 Christian Iversen wrote:
> Anders Bo Rasmussen wrote:
>
>> Findes der en rename-lignende kommando, der gør det samme som rename,
>> man laver en kopi i stedet.
>>
>> Så hvis man har filerne: a.test b.test c.test
>> og kører: rename test tst *.test
>> Så bliver der reelt kørt:
>>
>> cp a.test a.tst
>> cp b.test b.tst
>> cp c.test c.tst
>
> Det er en glimrende bash-one-liner.
...
> dernæst vises navnene uden extension:
>
> $ for x in *.a; do echo ${x%.a}; done
Ok. Jeg skulle nok have sagt at jeg ville have en mere generel udgave -
ikke bare til at skifte extensions. Det skal virke som rename.
Man kun fx lave et shellscript:
$FILES=${3-} #det skrives ikke sådan men jeg kan ikke lige huske hvordan.
ls $FILES | xargs -iX cp X X-foobar
rename $1 $2 *-foobar
rename -foobar "" *-foobar
Det er selvfølgelig ikke helt godt, da det går helt galt hvis man kører
scriptet to gange samtidig i samme directory. Et andet problem er at man
ikke må have nogle *-foobar filer. Derudover er der sikkert nogle ting
jeg har overset.
--
41 6E 64 65 72 73
Follow ups
References