The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
ændre filtypenavnet fra roden og undermapper Astrid Shell Programmering og Scripting 10 02-17-2008 07:18 AM
udvidelse problem behage hjælp sharmasdeepti UNIX for dummyer Spørgsmål & svar 1 10-24-2007 08:29 AM
uden forlængelse adurga UNIX for dummyer Spørgsmål & svar 3 07-02-2007 01:34 PM
Ændre udvidelse mohan705 Shell Programmering og Scripting 4 06-30-2007 02:06 PM
Hvordan ændrer jeg udvidelse kswaraj Shell Programmering og Scripting 2 06-28-2004 09:07 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 11-14-2002
prkwan prkwan is offline
Registreret Bruger
  
 

Join Date: Nov 2002
Beliggenhed: London UK
Stillinger: 5
Question Sådan ændres udvidelse?

Hvordan kan du skrive en shell script, som ændrer den forlængelse af alle de filer?

f.eks

chext rtf doc

hvor. rtf er den oprindelige udvidelse
og. doc er den nye udvidelse

Er det noget at gøre med basename?
har jeg brug for en for loop?
Please help!

Unix SuperNewbie
  #2 (permalink)  
Old 11-14-2002
Vishnu Vishnu is offline
Registreret Bruger
  
 

Join Date: Aug 2002
Beliggenhed: Marlboro, MA
Posts: 114
vil du opdage, at gøre en søgning på disse fora vil give dig flere ideer ... for exampe jeg søgte efter "omdøbe filer", og jeg fik dette link ...

Nem måde at masse omdøbe filer?

Jeg har netop ændret et lille stykke kode fra ovenstående link ...

Citat:
for navnet i `ls *. rtf«
gøre
name1 \u003d `echo $ navn | sed -e 's / ^ \ (.* \) \. rtf $ / \ 1 \. doc / g' `
MV $ name $ name1
gjort
Skål!
Vishnu.
  #3 (permalink)  
Old 11-15-2002
prkwan prkwan is offline
Registreret Bruger
  
 

Join Date: Nov 2002
Beliggenhed: London UK
Stillinger: 5
Jeg kan få scriptet arbejder som følger:

#! / bin / sh
for navnet i `ls *. rtf«
gøre
name1 \u003d `echo $ navn | cut-f 1-d. «
MV $ name1.rtf $ name1.doc
gjort

fungerer fint, men hvordan gør jeg det til at fungere på denne måde:

chext 1 2

hvor 1 er den oprindelige udvidelse og 2 er ønsket nye udvidelse?
  #4 (permalink)  
Old 11-15-2002
Vishnu Vishnu is offline
Registreret Bruger
  
 

Join Date: Aug 2002
Beliggenhed: Marlboro, MA
Posts: 114
erstatte dem, "rtf" og "doc" med $ 1 og $ 2 i dit script ...

Jeg vil tilføje, at ovennævnte måde ved hjælp af "høstet", vil ikke fungere, hvis du har flere punktummer i dit filnavn ...

Code:
#!/bin/sh 
for name in `ls *.$1` 
do 
name1=`echo $name | sed -e "s/^\(.*\)\.$1$/\1\.$2/g"` 
mv $name $name1 
done
eller en mere kompakt og hurtigere version, som jeg foretrækker ...

Code:
#!/bin/sh 
ls *.$1 | sed -e "s/^\(.*\)\.$1$/\1\.$1 \1\.$2/g" | xargs -n 2 mv -f
Skål!
Vishnu.
  #5 (permalink)  
Old 11-16-2002
prkwan prkwan is offline
Registreret Bruger
  
 

Join Date: Nov 2002
Beliggenhed: London UK
Stillinger: 5
takket vishnu!!
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 09:35 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0