files=(ls *.mp3) # this will define & assign an array: (ls a.mp3 b.mp3 c.mp3 ...). You'd need to use it like an array in the for loop, then.
# you might prefer command substitution: files=$(ls *.mp3)
# or let the shell do the work for you: files=*.mp3
for song in $files # this will expand to the first array element: ls. If you want the .mp3 files as well, use array expansion: ${files[@]} if you don't like above proposals
echo "${song%%*(.mp3)}" # Why the * and the parentheses? You want to remove nothing but ".mp3", and once only, so one "%" is sufficient
touch "${song%%*(.mp3)}" # "${song%.mp3}" will do the job for you. "%*.mp3" would erase the entire file name, the parentheses can't be matched
# and thus stop the expansion.
# You are right in double quoting the file names which will handle spaces in file names, then.
done
Hi All,
I have been fighting with a syntax error for the last 2 days, still haven't got the solution. Could you please help me, your help will be greatly appreciated.
In my script I am getting a error in a for loop, its similar to the one as is below.
for v_id in v1 v2 v3 v4
do... (8 Replies)
I get this error when I try to run my script
(BTW, this is a simple script I am supposed to write for my class)
$ menuscript
menuscript: syntax error at line 89 : `"' unmatched
$
Here is the code (Any help is greatly appreciated)
(Line numbers included)
1 #!/bin/ksh
2 ... (2 Replies)
hi there
i write one awk script file in shell programing
the code is related to dd/mm/yy to month, day year format
but i get an error
please can anybody help me out in this problem ??????
i give my code here including error
awk `
# date-month -- convert mm/dd/yy to month day,... (2 Replies)
Hi
I not sure what is wrong with my script... when I try to run it I get the follow error: "remove: syntax error at line 77: `end of file' unexpected" Thanks in advance for any help.
ans=y
while
do
while :
do
echo "Please enter a name that you... (3 Replies)
Hey guys keep having problems with the below script syntax error near unpexpected token '0' exit 0 I have two directorys backups and Usr in the usr i have sub dir's wp,ss,pic which i would like to back up (copy those directorys to the backups directory) with user acknowledgement from command line.... (2 Replies)
hello everyone
i am beginner on shell scripting .and i am working on my project work on ad hoc network
i wrote a batch (.sh) to do a looping and execute a tcl script i wrote before in each iteration ..but i got this problem "
syntax error near unexpected token `('... (1 Reply)
Hi All,
I am new to Unix, I have written the following script in ksh and get a syntax error :wall:. I need some help to figure out the error and reason. The script below uses some variables from an environment file, also it executes a sql file. The sql file is correct and has no problems. I... (1 Reply)
Hi guys i'd like to show you this code of my script, where i couldn't find this error
" #! /bin/bash
#copiabin.sh: copia todos los archivos ejecutables a bin
if
then
mkdir $HOME/bin
fi
# copia de archivos y contador N
N=0
for ARCH in *
do
if # Si el archivo es... (9 Replies)
Evening All (or morning for some),
Could anyone have a look at the below and advise where i've going wrong with the syntax as i keep getting the below error while trying to run.
Any help would be really apprecaited.
./testout: line 13: syntax error near unexpected token `else'
... (4 Replies)
Discussion started by: mutley2202
4 Replies
LEARN ABOUT DEBIAN
mp3::tag::id3v1
MP3::Tag::ID3v1(3pm) User Contributed Perl Documentation MP3::Tag::ID3v1(3pm)NAME
MP3::Tag::ID3v1 - Module for reading / writing ID3v1 tags of MP3 audio files
SYNOPSIS
MP3::Tag::ID3v1 is designed to be called from the MP3::Tag module.
use MP3::Tag;
$mp3 = MP3::Tag->new($filename);
# read an existing tag
$mp3->get_tags();
$id3v1 = $mp3->{ID3v1} if exists $mp3->{ID3v1};
# or create a new tag
$id3v1 = $mp3->new_tag("ID3v1");
See MP3::Tag for information on the above used functions.
* Reading the tag
print " Title: " .$id3v1->title . "
";
print " Artist: " .$id3v1->artist . "
";
print " Album: " .$id3v1->album . "
";
print "Comment: " .$id3v1->comment . "
";
print " Year: " .$id3v1->year . "
";
print " Genre: " .$id3v1->genre . "
";
print " Track: " .$id3v1->track . "
";
# or at once
@tagdata = $mp3->all();
foreach $tag (@tagdata) {
print $tag;
}
* Changing / Writing the tag
$id3v1->comment("This is only a Test Tag");
$id3v1->title("testing");
$id3v1->artist("Artest");
$id3v1->album("Test it");
$id3v1->year("1965");
$id3v1->track("5");
$id3v1->genre("Blues");
# or at once
$id3v1->all("song title","artist","album","1900","comment",10,"Ska");
$id3v1->write_tag();
* Removing the tag from the file
$id3v1->remove_tag();
AUTHOR
Thomas Geffert, thg@users.sourceforge.net
DESCRIPTION
title(), artist(), album(), year(), comment(), track(), genre()
$artist = $id3v1->artist;
$artist = $id3v1->artist($artist);
$album = $id3v1->album;
$album = $id3v1->album($album);
$year = $id3v1->year;
$year = $id3v1->year($year);
$comment = $id3v1->comment;
$comment = $id3v1->comment($comment);
$track = $id3v1->track;
$track = $id3v1->track($track);
$genre = $id3v1->genre;
$genre = $id3v1->genre($genre);
Use these functions to retrieve the date of these fields, or to set the data.
$genre can be a string with the name of the genre, or a number describing the genre.
all()
@tagdata = $id3v1->all;
@tagdata = $id3v1->all($title, $artist, $album, $year, $comment, $track, $genre);
Returns all information of the tag in a list. You can use this sub also to set the data of the complete tag.
The order of the data is always title, artist, album, year, comment, track, and genre. genre has to be a string with the name of the
genre, or a number identifying the genre.
fits_tag()
warn "data truncated" unless $id3v1->fits_tag($hash);
Check whether the info in ID3v1 tag fits into the format of the file.
as_bin()
$str = $id3v1->as_bin();
Returns the ID3v1 tag as a string.
write_tag()
$id3v1->write_tag();
[old name: writeTag() . The old name is still available, but you should use the new name]
Writes the ID3v1 tag to the file.
remove_tag()
$id3v1->remove_tag();
Removes the ID3v1 tag from the file. Returns negative on failure, FALSE if no tag was found.
(Caveat: only one tag is removed; some - broken - files may have many chain-loaded one after another; you may need to call remove_tag()
in a loop to handle such beasts.)
[old name: removeTag() . The old name is still available, but you should use the new name]
genres()
@allgenres = $id3v1->genres;
$genreName = $id3v1->genres($genreID);
$genreID = $id3v1->genres($genreName);
Returns a list of all genres, or the according name or id to a given id or name.
new()
$id3v1 = MP3::Tag::ID3v1->new($mp3fileobj[, $create]);
Generally called from MP3::Tag, because a $mp3fileobj is needed. If $create is true, a new tag is created. Otherwise undef is
returned, if now ID3v1 tag is found in the $mp3obj.
Please use
$mp3 = MP3::Tag->new($filename);
$id3v1 = $mp3->new_tag("ID3v1"); # Empty new tag
or
$mp3 = MP3::Tag->new($filename);
$mp3->get_tags();
$id3v1 = $mp3->{ID3v1}; # Existing tag (if present)
instead of using this function directly
SEE ALSO
MP3::Tag, MP3::Tag::ID3v2
ID3v1 standard - http://www.id3.org
COPYRIGHT
Copyright (c) 2000-2004 Thomas Geffert. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License, distributed with Perl.
perl v5.14.2 2009-11-28 MP3::Tag::ID3v1(3pm)