/ Forside / Teknologi / Hardware / Mac / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Mac
#NavnPoint
UlrikB 4810
kipros 1675
Klaudi 1010
myg 920
pifo 907
Stouenberg 838
molokyle 830
Bille1948 815
rotw 760
10  EXTERMINA.. 750
Shell script - Kan de køres fra skrivebord~
Fra : Kurt Brixen


Dato : 01-02-11 16:49

Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
dem fra terminal.

Det er disse to scripts jeg har brug for at køre jævnligt:
http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-metaflac

Den letteste måde jeg kan finde på, er at jeg i terminal skriver: ~/tfwrg.sh
og så trækker den mappe over i terminal, scriptet skal køres på, så
kommandolinjen bliver fyldt ud.

Men er der en måde, så jeg ikke skal starte Terminal hver gang?

--
Venlig hilsen
Kurt Brixen


 
 
Thomas von Hassel (01-02-2011)
Kommentar
Fra : Thomas von Hassel


Dato : 01-02-11 20:13

Kurt Brixen <kbrixen@gmail.invalid> wrote:

> Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
> dem fra terminal.
>
> Det er disse to scripts jeg har brug for at køre jævnligt:
> http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-metaflac
>
> Den letteste måde jeg kan finde på, er at jeg i terminal skriver: ~/tfwrg.sh
> og så trækker den mappe over i terminal, scriptet skal køres på, så
> kommandolinjen bliver fyldt ud.
>
> Men er der en måde, så jeg ikke skal starte Terminal hver gang?

omdøber dit script til

xyz.command


Kurt Brixen (02-02-2011)
Kommentar
Fra : Kurt Brixen


Dato : 02-02-11 11:53

On 2011-02-01 20:13:26 +0100, Thomas von Hassel said:

> Kurt Brixen <kbrixen@gmail.invalid> wrote:
>
>> Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
>> dem fra terminal.
>>
>> Det er disse to scripts jeg har brug for at køre jævnligt:
>> http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-metaflac
>>
>> Den letteste måde jeg kan finde på, er at jeg i terminal skriver: ~/tfwrg.sh
>> og så trækker den mappe over i terminal, scriptet skal køres på, så
>> kommandolinjen bliver fyldt ud.
>>
>> Men er der en måde, så jeg ikke skal starte Terminal hver gang?
>
> omdøber dit script til
>
> xyz.command

Tak. Så kører skriptet også, men så mangler der det argument
(mappenavn), som jeg skal have efter kommandoen.


--
Venlig hilsen
Kurt Brixen


Thomas von Hassel (02-02-2011)
Kommentar
Fra : Thomas von Hassel


Dato : 02-02-11 12:08

Kurt Brixen <kbrixen@gmail.invalid> wrote:

> On 2011-02-01 20:13:26 +0100, Thomas von Hassel said:
>
> > Kurt Brixen <kbrixen@gmail.invalid> wrote:
> >
> >> Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
> >> dem fra terminal.
> >>
> >> Det er disse to scripts jeg har brug for at køre jævnligt:
> >> http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-me
> >> taflac
> >>
> >> Den letteste måde jeg kan finde på, er at jeg i terminal skriver:
> >> ~/tfwrg.sh og så trækker den mappe over i terminal, scriptet skal køres
> >> på, så kommandolinjen bliver fyldt ud.
> >>
> >> Men er der en måde, så jeg ikke skal starte Terminal hver gang?
> >
> > omdøber dit script til
> >
> > xyz.command
>
> Tak. Så kører skriptet også, men så mangler der det argument (mappenavn),
> som jeg skal have efter kommandoen.

så kan du pakke dine kommandoer ind i et "wrapper" script som du kører
....

/thomas

Kurt Brixen (02-02-2011)
Kommentar
Fra : Kurt Brixen


Dato : 02-02-11 12:31

On 2011-02-02 12:08:04 +0100, Thomas von Hassel said:

> Kurt Brixen <kbrixen@gmail.invalid> wrote:
>
>> On 2011-02-01 20:13:26 +0100, Thomas von Hassel said:
>>
>>> Kurt Brixen <kbrixen@gmail.invalid> wrote:
>>>
>>>> Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
>>>> dem fra terminal.
>>>>
>>>> Det er disse to scripts jeg har brug for at køre jævnligt:
>>>> http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-me
>>>> taflac
>>>>
>>>> Den letteste måde jeg kan finde på, er at jeg i terminal skriver:
>>>> ~/tfwrg.sh og så trækker den mappe over i terminal, scriptet skal køres
>>>> på, så kommandolinjen bliver fyldt ud.
>>>>
>>>> Men er der en måde, så jeg ikke skal starte Terminal hver gang?
>>>
>>> omdøber dit script til
>>>
>>> xyz.command
>>
>> Tak. Så kører skriptet også, men så mangler der det argument (mappenavn),
>> som jeg skal have efter kommandoen.
>
> så kan du pakke dine kommandoer ind i et "wrapper" script som du kører
> ...
>
> /thomas

Jeg skal vist læse om wrapper script Det kendte jeg ikke.

Det jeg gerne vil lave, er et programikon, hvor jeg kan trække en mappe
hen på, og så bliver scriptet kørt med den mappe som argument.


--
Venlig hilsen
Kurt Brixen


Thomas von Hassel (02-02-2011)
Kommentar
Fra : Thomas von Hassel


Dato : 02-02-11 12:43

Kurt Brixen <kbrixen@gmail.invalid> wrote:

> On 2011-02-02 12:08:04 +0100, Thomas von Hassel said:
>
> > Kurt Brixen <kbrixen@gmail.invalid> wrote:
> >
> >> On 2011-02-01 20:13:26 +0100, Thomas von Hassel said:
> >>
> >>> Kurt Brixen <kbrixen@gmail.invalid> wrote:
> >>>
> >>>> Jeg ved kun lidt om shell script, men jeg kan godt finde ud af at køre
> >>>> dem fra terminal.
> >>>>
> >>>> Det er disse to scripts jeg har brug for at køre jævnligt:
> >>>> http://www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html#automating-me
> >>>> taflac
> >>>>
> >>>> Den letteste måde jeg kan finde på, er at jeg i terminal skriver:
> >>>> ~/tfwrg.sh og så trækker den mappe over i terminal, scriptet skal køres
> >>>> på, så kommandolinjen bliver fyldt ud.
> >>>>
> >>>> Men er der en måde, så jeg ikke skal starte Terminal hver gang?
> >>>
> >>> omdøber dit script til
> >>>
> >>> xyz.command
> >>
> >> Tak. Så kører skriptet også, men så mangler der det argument (mappenavn),
> >> som jeg skal have efter kommandoen.
> >
> > så kan du pakke dine kommandoer ind i et "wrapper" script som du kører
> > ...
> >
> > /thomas
>
> Jeg skal vist læse om wrapper script Det kendte jeg ikke.
>
> Det jeg gerne vil lave, er et programikon, hvor jeg kan trække en mappe
> hen på, og så bliver scriptet kørt med den mappe som argument.

hmm, ok .. det kan være du skal se på at lave det som AppleScript ?

/thomas

Øyvind Rise (02-02-2011)
Kommentar
Fra : Øyvind Rise


Dato : 02-02-11 14:28

Thomas von Hassel <thomas@elements.dk> wrote:

> > Jeg skal vist læse om wrapper script Det kendte jeg ikke.
> >
> > Det jeg gerne vil lave, er et programikon, hvor jeg kan trække en mappe
> > hen på, og så bliver scriptet kørt med den mappe som argument.
>
> hmm, ok .. det kan være du skal se på at lave det som AppleScript ?

Har skrevet noen kodelinjer som kunne være et utgangspunkt. Lagres i
Script Editor som et program.



on open of dropped_objects
repeat with i in dropped_objects
if folder of (info for i) is true then
do shell script "~/tfwrg.sh " & ¬
(POSIX path of i)
end if
end repeat
end open

on run
display dialog "Træk den mappe scriptet skal kjøres på ¬
over programikonet." buttons {"OK"} ¬
giving up after 4 default button 1
end run


--
Øyvind Rise

Kurt Brixen (02-02-2011)
Kommentar
Fra : Kurt Brixen


Dato : 02-02-11 16:58

On 2011-02-02 14:27:35 +0100, Øyvind Rise said:

> Thomas von Hassel <thomas@elements.dk> wrote:
>
>>> Jeg skal vist læse om wrapper script Det kendte jeg ikke.
>>>
>>> Det jeg gerne vil lave, er et programikon, hvor jeg kan trække en mappe
>>> hen på, og så bliver scriptet kørt med den mappe som argument.
>>
>> hmm, ok .. det kan være du skal se på at lave det som AppleScript ?
>
> Har skrevet noen kodelinjer som kunne være et utgangspunkt. Lagres i
> Script Editor som et program.
>
>
>
> on open of dropped_objects
> repeat with i in dropped_objects
> if folder of (info for i) is true then
> do shell script "~/tfwrg.sh " & ¬
> (POSIX path of i)
> end if
> end repeat
> end open
>
> on run
> display dialog "Træk den mappe scriptet skal kjøres på ¬
> over programikonet." buttons {"OK"} ¬
> giving up after 4 default button 1
> end run

Tak for koden. Jeg prøver det i morgen.
Det script jeg kører nu, starter allerede et andet script på hver mappe
(folder) i argumentet.
Se her:


#!/bin/bash

# Shortcut to the command to tag FLAC audio files in a
# directory tree with Replay Gain values. (The album gain value
# is set the same for all of the FLAC files in each directory.)
#
# This script takes as its argument the directory path
# (relative or absolute) to the head of a directory tree which
# contains FLAC files grouped into albums (each album in its
# own directory). The script tag-flac-with-rg.sh is called for
# each directory found within this directory tree.
# The slash at the end of the directory path is not necessary
# (as it is added later in the tag-flac-with-rg.sh script) but
# it doesn't seem to hurt if it is left on.
#
# E.g. `./tfwrg.sh "/media/music/flac/Orange Goblin"`
#
# See www.bobulous.org.uk/misc/Replay-Gain-in-Linux.html
# for usage guide.
#


# Define error codes
ARGUMENT_NOT_DIRECTORY=10
FILE_NOT_FOUND=11

# Check that the argument passed to this script is a directory.
# If it's not, then exit with an error code.
if [ ! -d "$1" ]
then
   echo "Arg "$1" is NOT a directory!"
   exit $ARGUMENT_NOT_DIRECTORY
fi

echo "********************************************************"
echo "Calling tag-flac-with-rg.sh on each directory in:"
echo $1
echo ""
find "$1" -type d -exec ~/tag-flac-with-rg.sh '{}' \;






--
Venlig hilsen
Kurt Brixen


Øyvind Rise (03-02-2011)
Kommentar
Fra : Øyvind Rise


Dato : 03-02-11 09:38

Kurt Brixen <kbrixen@gmail.invalid> wrote:

> Tak for koden. Jeg prøver det i morgen.
> Det script jeg kører nu, starter allerede et andet script på hver mappe
> (folder) i argumentet.

Er litt usikker på om jeg forstår deg rett her. Skriptet jeg viste
travereserer ikke. Det lister ikke opp hvilke filer og mapper som ligger
i hver mappe. Det gjør skriptet du viste, så sammen (Shell script kalles
i AppleScript) skulle de både klare et drop med flere mapper og kjøre
~/tag-flac-with-rg.sh på alle filer i mapper og undermapper.

Eller ville du føre traverseringen over i AppleScript-et? I så fall
fullt mulig.

--
Øyvind Rise

Kurt Brixen (03-02-2011)
Kommentar
Fra : Kurt Brixen


Dato : 03-02-11 10:31

On 2011-02-03 09:38:25 +0100, Øyvind Rise said:

> Kurt Brixen <kbrixen@gmail.invalid> wrote:
>
>> Tak for koden. Jeg prøver det i morgen.
>> Det script jeg kører nu, starter allerede et andet script på hver mappe
>> (folder) i argumentet.
>
> Er litt usikker på om jeg forstår deg rett her. Skriptet jeg viste
> travereserer ikke. Det lister ikke opp hvilke filer og mapper som ligger
> i hver mappe. Det gjør skriptet du viste, så sammen (Shell script kalles
> i AppleScript) skulle de både klare et drop med flere mapper og kjøre
> ~/tag-flac-with-rg.sh på alle filer i mapper og undermapper.
>
> Eller ville du føre traverseringen over i AppleScript-et? I så fall
> fullt mulig.

Jeg tror jeg giver op, og fortsætter som jeg har gjort hidtil.

Jeg prøvede din kode, men der er noget der ikke virker. Og jeg ved for
lidt om Applescript, til at kunne gennemskue hvad.
Så jeg fortsætter med at starte Terminal, skrive kommandoen, og trække
mappen ind i terminalvinduet. Det virker, og dér kan jeg se hvad der er
galt, når det ikke virker.

--
Venlig hilsen
Kurt Brixen


Øyvind Rise (03-02-2011)
Kommentar
Fra : Øyvind Rise


Dato : 03-02-11 13:14

Kurt Brixen <kbrixen@gmail.invalid> wrote:

> Jeg tror jeg giver op, og fortsætter som jeg har gjort hidtil.
>
> Jeg prøvede din kode, men der er noget der ikke virker. Og jeg ved for
> lidt om Applescript, til at kunne gennemskue hvad.

Leit! Jeg ser ihvertfall én feil jeg har gjort.

Bytt ut:

do shell script "~/tfwrg.sh " & ¬
(POSIX path of i)

med:

do shell script "~/tfwrg.sh " & ¬
(quoted form of POSIX path of i)


--
Øyvind Rise

Kurt Brixen (03-02-2011)
Kommentar
Fra : Kurt Brixen


Dato : 03-02-11 14:53

On 2011-02-03 13:13:54 +0100, Øyvind Rise said:

> Kurt Brixen <kbrixen@gmail.invalid> wrote:
>
>> Jeg tror jeg giver op, og fortsætter som jeg har gjort hidtil.
>>
>> Jeg prøvede din kode, men der er noget der ikke virker. Og jeg ved for
>> lidt om Applescript, til at kunne gennemskue hvad.
>
> Leit! Jeg ser ihvertfall én feil jeg har gjort.
>
> Bytt ut:
>
> do shell script "~/tfwrg.sh " & ¬
> (POSIX path of i)
>
> med:
>
> do shell script "~/tfwrg.sh " & ¬
> (quoted form of POSIX path of i)

Tak fordi du prøver, men den virkede heller ikke.
Jeg skal nok lære noget om Applescript kommandoer, før jeg går videre med det.


--
Venlig hilsen
Kurt Brixen


Søg
Reklame
Statistik
Spørgsmål : 177556
Tips : 31968
Nyheder : 719565
Indlæg : 6408865
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste