Sponsored Content
Full Discussion: Error while deleting a file
Top Forums UNIX for Dummies Questions & Answers Error while deleting a file Post 302141733 by bakunin on Monday 22nd of October 2007 05:55:39 AM
Old 10-22-2007
There are several problems:

1) "test" is a unix commando. Better do not use "test" as the name for a variable, command, etc. Name it "foo" "bar" or anything else, it will spare you some strange effects.

2) You are working in the Korn shell and should NOT use "echo" as a means to produce output. Use the built-in "print". Your usage of "echo" will not cause any immediate problems, but is not good programming style.

3) There is a typo in one of your declarations:

testfile= $test/test.log

The space-char after the "=" is wrong. Perhaps this is leading to subsequent problems when expandig the variable. Find it out by issuing "print - \"$testfile\"" immediately before the rm-statement. It will give you the value of $testfile surrounded by double quotes, so will be able to see if there are nonprinting characters.

And, just because it fits in here: if you issue some command with variables as arguments make sure the variables get expanded the way you intended them to be expanded:

print $foo

looks innocent enough. As long as $foo expand to something like "bar" everything is fine, but how about this:

foo="-u3 bar"
print $foo

now the shell expands this to "print -u3 bar" and is not placing output to the screen as before but to I/O-channel 3 which probably points to nowhere. This is why i use always "print -" instead of "print", because the hyphen tells the print-command that everything following it is to be printed and not an option. For other commands there are similar security-devices on could (and should) employ.

bakunin
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Deleting lines inside a file without opening the file

Hi, Just consider there are around 10 lines in a file. Now is it possible to delete the first 2 lines in the file without opening the file. No matter whatever the content of the file is, I just wanna delete the first 2 lines without opening the file. Is that possible? If so, please help me out.... (3 Replies)
Discussion started by: toms
3 Replies

2. UNIX for Dummies Questions & Answers

Help deleting a file

Hi and apologies but I'm normally a windows and network admin but atm I'm looking after a unix system while the admin is on holiday. I was assured everything would be fine but he's only been gone for 2 days and already webmail has stopped working! It suggests that there is no space left: ... (2 Replies)
Discussion started by: shirtee
2 Replies

3. Shell Programming and Scripting

Deleting the Last value from a file

How do i use SED command to replace the last existance of ',' with a blank value OR CUT can also do?? Eg --> aaa,aaad,fsdfde, I want to replace it with aaa,aaad,fsdfde Thanks in Advance (7 Replies)
Discussion started by: theeights
7 Replies

4. Shell Programming and Scripting

awk - writing matching pattern to a new file and deleting it from the current file

Hello , I have comma delimited file with over 20 fileds that i need to do some validations on. I have to check if certain fields are null and then write the line containing the null field into a new file and then delete the line from the current file. Can someone tell me how i could go... (2 Replies)
Discussion started by: goddevil
2 Replies

5. Shell Programming and Scripting

Deleting file name

I need a way to remove all the file names with they are extension from a line of a document. For example: I have doc named "gara" with the following content: /media/gogo/6651-FEAB/Desktop/Desktop.jpg /media/gogo/6651-FEAB/Desktop.pdf /media/gogo/6651-FEAB/linux/logo1.jpg... (4 Replies)
Discussion started by: gogok_bg
4 Replies

6. UNIX for Dummies Questions & Answers

Deleting a pattern in UNIX without deleting the entire line

Hi I have a file: r58778.3|SOURCES={KEY=f665931a...,fw,221-705}|ERRORS={16_1:T,30_1:T,56_1:C,57_1:T,59_1:A,101_1:A,115:-,158_1:C,186_1:A,204:-,271_1:T,305:-,350_1:C,368_1:G,442_1:C,472_1:G,477_1:A}|SOURCE_1="Contig_1092402550638"(f665931a359e36cea0976db191ff60ff09cc816e) I want to retain... (15 Replies)
Discussion started by: Alyaa
15 Replies

7. UNIX for Dummies Questions & Answers

Deleting file basing on the timestamp substring in the file name

Hello, I have in my backup folder, files with names convention like this : randomFileNames_13-02-2014_23h13m09+1392333189 randomFileNames_14-02-2014_02h13m09+1392343989 randomFileNames_14-02-2014_04h13m09+1392351189 etc.... Base on timestamp at end of the filename, I would to delete all the... (7 Replies)
Discussion started by: thuyetti
7 Replies

8. Shell Programming and Scripting

sed command throwing error while deleting a line from a file

Hi all, I ahve a program which has to delete a line in a file... if i run the sed command through shell prompt it works fine. But if run it using code its throwing error. May i know where i am doing wrong. the file has 3 lines # cat /root/.ssh/known_hosts... (4 Replies)
Discussion started by: vivek d r
4 Replies

9. Shell Programming and Scripting

Error while moving files and deleting

Team i am trying to delete files which are older than 1 day from 1 path (assuming already files are existed ) . From another path we are trying to move files .like below .While executing this i m getting this error . mv: cannot stat `/backup/db_backups/FULL/*': No such file or directory ... (3 Replies)
Discussion started by: rocking77
3 Replies
Text::Glob(3)						User Contributed Perl Documentation					     Text::Glob(3)

NAME
Text::Glob - match globbing patterns against text SYNOPSIS
use Text::Glob qw( match_glob glob_to_regex ); print "matched " if match_glob( "foo.*", "foo.bar" ); # prints foo.bar and foo.baz my $regex = glob_to_regex( "foo.*" ); for ( qw( foo.bar foo.baz foo bar ) ) { print "matched: $_ " if /$regex/; } DESCRIPTION
Text::Glob implements glob(3) style matching that can be used to match against text, rather than fetching names from a filesystem. If you want to do full file globbing use the File::Glob module instead. Routines match_glob( $glob, @things_to_test ) Returns the list of things which match the glob from the source list. glob_to_regex( $glob ) Returns a compiled regex which is the equivalent of the globbing pattern. glob_to_regex_string( $glob ) Returns a regex string which is the equivalent of the globbing pattern. SYNTAX
The following metacharacters and rules are respected. "*" - match zero or more characters "a*" matches "a", "aa", "aaaa" and many many more. "?" - match exactly one character "a?" matches "aa", but not "a", or "aaa" Character sets/ranges "example.[ch]" matches "example.c" and "example.h" "demo.[a-c]" matches "demo.a", "demo.b", and "demo.c" alternation "example.{foo,bar,baz}" matches "example.foo", "example.bar", and "example.baz" leading . must be explictly matched "*.foo" does not match ".bar.foo". For this you must either specify the leading . in the glob pattern (".*.foo"), or set $Text::Glob::strict_leading_dot to a false value while compiling the regex. "*" and "?" do not match / "*.foo" does not match "bar/baz.foo". For this you must either explicitly match the / in the glob ("*/*.foo"), or set $Text::Glob::strict_wildcard_slash to a false value with compiling the regex. BUGS
The code uses qr// to produce compiled regexes, therefore this module requires perl version 5.005_03 or newer. AUTHOR
Richard Clamp <richardc@unixbeard.net> COPYRIGHT
Copyright (C) 2002, 2003, 2006, 2007 Richard Clamp. All Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO
File::Glob, glob(3) perl v5.16.2 2013-08-25 Text::Glob(3)
All times are GMT -4. The time now is 10:52 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy