05-06-2015
Hi Sea, the previous read command is not useless, it is there to cater for the possibilty that a filename has no extension. It splits the filename into a first part before the first dot and (into variable
first) and a last part (into variable
last) that contains everything after the first dot.
If the file contains no extension, then the variable
last will be empty and thus
echo "${last##*.}" will produce an empty string (
"").
If there is an extension then
echo "${last##*.}" will produce the part after the last dot..
It is indeed not REGEX; it is
parameter expansion...
Last edited by Scrutinizer; 05-06-2015 at 11:58 PM..
This User Gave Thanks to Scrutinizer For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi (warning: newbie question),
I am writing a script to run a series of tests on a program, which involves a line:
for file in `ls test_suite/*.args`
but later I want to send the output to file.out. But I need to separate the filename and extension somehow...Also $file contains... (2 Replies)
Discussion started by: lucaspewkas
2 Replies
2. Shell Programming and Scripting
Hi All,
i need to change the filename extension. For simplicity, we can assume that the extension after '.' is 3 characters only... but the filenames can vary.
eg. changing from abc.doc to abc.dxs
can i have a oneline command to achieve this (3 Replies)
Discussion started by: Hiso
3 Replies
3. UNIX for Dummies Questions & Answers
I am running my script from "/abc/" this path and it has no ".csv files" but has a ".txt" files namely temp1.txt
My script goes as below, wherein it is suppose to find files with *.txt extension and *.csv extension in another path namely "/abc/xyz/":
#!/bin/ksh
PATH1="/abc/xyz/"
value="*.csv... (1 Reply)
Discussion started by: wolverine999
1 Replies
4. Shell Programming and Scripting
I need a small script (sh) to remove in a variable the filename extension.
Example:
f = "testfile.txt"
and I need a $a with "testfile".
Some one a idea? (4 Replies)
Discussion started by: Essbaumer
4 Replies
5. Shell Programming and Scripting
Hi Experts,
need one help.. m writing a shell script for which i need the entire path of the file but without its extension.
running the below script gives error at the statement DIR = `dirname $FILE` --command not found.
#!/bin/bash
jar xvf *jar
for FILE in `find . -name "*.class"`
... (3 Replies)
Discussion started by: amicableperson
3 Replies
6. Shell Programming and Scripting
Is there an easy way to strip off a filename's extension?
For example, here's a filename:
blahblahblah.thisisok.thisisnotok
I want to get rid of .thisisnotok from the filename, so that what's left is
blahblahblah.thisisok
Thanks. I have a directory full of filenames that need to be... (5 Replies)
Discussion started by: daflore
5 Replies
7. Shell Programming and Scripting
Hi all,
I have a folder with a bunch of files in them, and I would like to add an extension (.mp3)to all these filenames. The folder has only files that I'd like .mp3 added to.
It looks something like this:
Intput:
File1
File2
File3Output:
File1.mp3
File2.mp3
File3.mp3Thanks in... (2 Replies)
Discussion started by: repiv
2 Replies
8. Shell Programming and Scripting
Hi,
I have files with filenames as below.
SGM Daily Sales Email-en-us-05312012.xlwa
I want to rename it in .xls. I am writing a script to change this, as there can be multiple files in subfolders.
I have the following script.
#!/bin/ksh
for oldfile in $(find... (1 Reply)
Discussion started by: mac4rfree
1 Replies
9. UNIX for Dummies Questions & Answers
Hello.
I would like to know how to do this in bash script :
A_WORD="ABCD_EFGH.0.100.40.123"
NEW_WORD=remove_last_ext("A_WORD")
NEW_WORD --> ABCD_EFGH.0.100.40
A_WORD="ABCD_EFGH.0.50.3"
NEW_WORD=remove_last_ext("A_WORD")
NEW_WORD --> ABCD_EFGH.0.50
A_WORD="ABCD_EFGH.3.100.50."
... (2 Replies)
Discussion started by: jcdole
2 Replies
10. Shell Programming and Scripting
I need to write a shell script to display the output of ls command like this
ls -ltr *txt
I get this
-rw-r----- 1 oracle dba 51912704 Dec 11 10:27 /usr/local/sam/test12112012101247AM.txt
-rw-r--r-- 1 oracle dba 7 Dec 11 11:58 /usr/local/sam/test.txt
but I just need the latest... (7 Replies)
Discussion started by: sumang24
7 Replies
cd(1) General Commands Manual cd(1)
NAME
cd - change working directory
SYNOPSIS
[directory]
DESCRIPTION
If directory is not specified, the value of shell parameter is used as the new working directory. If directory specifies a complete path
starting with or directory becomes the new working directory. If neither case applies, tries to find the designated directory relative to
one of the paths specified by the shell variable. has the same syntax as, and similar semantics to, the shell variable. must have execute
(search) permission in directory.
exists only as a shell built-in command because a new process is created whenever a command is executed, making useless if written and pro-
cessed as a normal system command. Moreover, different shells provide different implementations of as a built-in utility. Features of as
described here may not be supported by all the shells. Refer to individual shell manual entries for differences.
If is called in a subshell or a separate utility execution environment such as:
(which invokes on accessible directories) does not affect the current directory of the caller's environment. Another usage of as a stand-
alone command is to obtain the exit status of the command.
EXTERNAL INFLUENCES
International Code Set Support
Single- and multi-byte character code sets are supported.
Environment Variables
The following environment variables affect the execution of
The name of the home directory,
used when no directory operand is specified.
A colon-separated list of pathnames that refer to directories.
If the directory operand does not begin with a slash character, and the first component is not dot or dot-dot, searches
for directory relative to each directory named in the variable, in the order listed. The new working directory is set
to the first matching directory found. An empty string in place of a directory pathname represents the current direc-
tory. If is not set, it is treated as if it was an empty string.
EXAMPLES
Change the current working directory to the directory from any location in the file system:
Change to new current working directory residing in the current directory:
or
Change to directory residing in the current directory's parent directory:
Change to the directory whose absolute pathname is
Change to the directory relative to home directory:
RETURN VALUE
Upon completion, exits with one of the following values:
The directory was successfully changed.
An error occurred. The working directory remains unchanged.
SEE ALSO
csh(1), pwd(1), ksh(1), sh-posix(1), sh(1), chdir(2).
STANDARDS CONFORMANCE
cd(1)