The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

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
Bash citerer opførsel na5m Shell Programmering og Scripting 5 12-30-2008 02:31 PM
Citere problem med `dato` cleansing_flame Shell Programmering og Scripting 3 02-22-2008 03:26 PM
*. pm globs uden at citere, *. pl ikke. tphyahoo Shell Programmering og Scripting 2 06-02-2006 12:37 PM
Citat af specialtegn vibhor_agarwali UNIX for dummyer Spørgsmål & svar 1 01-30-2005 04:58 AM
Jokertegn og citerer Bab00shka UNIX for dummyer Spørgsmål & svar 2 09-16-2002 11:16 AM

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 01-05-2009
auspicier aegis is offline
Registreret Bruger
  
 

Join Date: Dec 2008
Stillinger: 4
citere spørgsmål

Hej gutter, jeg har et spørgsmål i forbindelse med at citere, men jeg er ikke sikker på, hvordan man kan formulere det ...

lad os sige vi ønsker at simulere følgende skallen aktioner
Code:
cd ~/project-dir
ctags /home/work/folder1/*.sh  /home/work/folder2/*.sh  /home/work/folder3/*.sh
så jeg fremsætte følgende script

buidtags.sh
Code:
directory="~/project-dir"
file_locations="/home/work/folder1/*.sh  /home/work/folder2/*.sh  /home/work/folder3/*.sh"

ctags_command=ctags "$file_locations"

(cd "$directory" && $ctags_command )
men det virker ikke ...
Jeg tror, at grunden er, at det springer fil globbing, og mener *. sh at være en fil, der (naturligvis) kan ikke findes! Hvordan kan jeg gøre fil globbing og dobbelte citationstegn eksistere? med andre ord, hvordan kan jeg gøre dette eksempel arbejde?

På forhånd tak for din tid,
Nicolas

PS: I citerer som reference, jeg bruger chap7 fra "lære bash shell 3rd edition", men jeg er forholdsvis ny shell scripting.Is der andre gode reference til bash?
  #2 (permalink)  
Old 01-05-2009
otheus's Avatar
otheus otheus is offline Forum Staff  
Redaktør ala Mode
  
 

Join Date: Feb 2007
Sted: Innsbruck, Østrig
Posts: 1.886
Citat:
PS: I citerer som reference, jeg bruger chap7 fra "lære bash shell 3rd edition", men jeg er forholdsvis ny shell scripting.Is der andre gode reference til bash?
Den "mand" sider er en god reference.

Du har ret, ved den måde - det * ikke bliver udvidet inden dobbelte anførselstegn. Men det er den ctags_command opgave, der vil give dig problemer:
Code:
ctags_command=echo separate words must be quoted
Her er en anden måde at gøre det:
Code:
directory="~/project-dir"
file_locations=/home/work/folder[123]/*.sh
ctags_command="ctags $file_locations"

(cd "$directory" && $ctags_command )
Endnu en anden måde er med xargs:
Code:
directory="~/project-dir"
cd $directory && rm -f tags && find . -name "*.sh" | xargs ctags -a
Den xargs kommandoen tager outputtet fra at finde, og kører ctags kommandoen så mange gange som nødvendigt (ikke en gang for hver fil, men så mange gange som kræves, hvis kommandolinjen ikke kan rumme alle de argumenter på en linje). Den-en kommando sikrer ctags føjer til eksisterende tags filen i tilfælde xargs har brug for mere end et opkald.
  #3 (permalink)  
Old 01-08-2009
auspicier aegis is offline
Registreret Bruger
  
 

Join Date: Dec 2008
Stillinger: 4
tak otheus! der løste problemet
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 11:51 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