Invoking cut twice or ls, xargs, and basename are very expensive ways to do this.
Making a several assumptions about what is wanted here (and only using shell built-ins):
Code:
#!/bin/ksh
path="/a/bc_de/fe_rt/ghl/CW_CA_CA_20140128_150752.xml"
if [ ! -e "$path" ]
then printf "ls: %s: No such file or directory\n" "$path" >&2
exit 1
fi
out=${path##*[![:digit:]]_}
out=${out%.*}
printf "%s\n" "$out"
produces the output:
Code:
20140128_150752
if the file exists, and writes the diagnostic:
Code:
ls: /a/bc_de/fe_rt/ghl/CW_CA_CA_20140128_150752.xml: No such file or directory
to standard error output and exits with a non-zero exit status if it doesn't exist.
Of course, however, this doesn't give you the localized diagnostics you should get from ls if you're using a non-English locale.
Although this was tested using the Korn shell, this will work with any shell that performs the parameter expansions required by the POSIX standards (such as ksh and bash).
Last edited by Don Cragun; 06-20-2014 at 04:58 AM..
Reason: Fix tag.
Hi,
Can anyone tell me if I can apply multiple cut on a single variable like below in a sh script:
tmp=`cut -c 1-4 $val`
tmp1=`cut -c 5-12 $val`
tmp2=`cut -c 13-18 $val`
If not, what is the other way to do this.
Thanks and Best Regards
Shoeb (17 Replies)
Hi ,
I am new to Unix.I have a shell script whenere I wnat to find if a particular server is running and kill all the instances of it (running on different ports)
script filename to start the srever is say abcd
If i do ps -eaf | grep abc
I get all the instances of srever running .In the... (1 Reply)
Hi All,
Can anyone tell me how to use cut command?I have tried but its not working...Please find the details below :
$ cat file1
SlNo. E_ID E_Name Age Dept
1 123 A 20 Electrical
2 124 B 20 Electronics
3 125 C 24 Computer
4 126 D 23 Mechanical
... (3 Replies)
n2=user1 pts/3 2010-06-29 01
Now i want to split this string with space(' ') character.
After splitting output would be:
use1
pts/3
2010-06-29
01
I did:
nn=${n2} | cut -d ' ' -f2
echo ${nn}
It prints nothing.
I want the output:
pts/3 (2 Replies)
Hi
Can anyone what I am doing wrong while using cut command.
for f in *.log
do
logfilename=$f
Log "Log file Name: $logfilename"
logfile1=`basename $logfilename .log`
flength=${#logfile1}
Log "file length $flength"
from_length=$(($flength - 15))
Log "from... (2 Replies)
hay
i am trying to get JUST the PID from the ps command.
my command line is:
ps -ef | grep "mintty" | cut -d' ' -f2
but i get an empty line. i assume that the delimiter is not just one space character, but can't figure out what should i do in order to do that.
i know i can use awk or cut... (8 Replies)
Hi All,
I am a beginner learning shell script, Would it be possible to use -c and -f in cut command together ?
Example :
/opt/oracle/work/Antony/Shell_Script> cat shortlist
2233|a.k. shukula |g.m. |sales2 |12/12/52 |6000
1006|chanchal singhvi ... (3 Replies)
I'm a complete beginner in UNIX (and not a computer science student either), just undergoing a tutoring course. Trying to replicate the instructions on my own I directed output of the ls listing command (lists all files of my home directory ) to My_dir.tsv file (see the screenshot) to make use of... (9 Replies)
Discussion started by: scrutinizerix
9 Replies
LEARN ABOUT SUNOS
pwd
pwd(1) User Commands pwd(1)NAME
pwd - return working directory name
SYNOPSIS
/usr/bin/pwd
DESCRIPTION
The pwd utility writes an absolute path name of the current working directory to standard output.
Both the Bourne shell, sh(1), and the Korn shell, ksh(1), also have a built-in pwd command.
ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of pwd: LANG, LC_ALL, LC_MESSAGES, and
NLSPATH.
EXIT STATUS
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
If an error is detected, output will not be written to standard output, a diagnostic message will be written to standard error, and the
exit status will not be 0.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
|CSI |enabled |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
SEE ALSO cd(1), ksh(1), sh(1), shell_builtins(1), attributes(5), environ(5), standards(5)DIAGNOSTICS
``Cannot open ..'' and ``Read error in ..'' indicate possible file system trouble and should be referred to a UNIX system administrator.
NOTES
If you move the current directory or one above it, pwd may not give the correct response. Use the cd(1) command with a full path name to
correct this situation.
SunOS 5.10 28 Mar 1995 pwd(1)