07-16-2015
What OS and version are you using. I've tried several and can't replicate your problem of it specifying full paths.
My output is always the count followed by the files as matched by my criteria, i.e. if I try to list *.txt it will show just the file names. if I list /tmp/* then I get the path included.
Robin
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
Can someone let me know how to find the reverse of the basename i.e
i have /apps/tiv/pmon/xxxx.dat and I want /apps/tiv/pmon/
Thanks (7 Replies)
Discussion started by: braindrain
7 Replies
2. Shell Programming and Scripting
Hi guys if i do
a=`basename -e -s /home/j/john/*`
du -k -h $a | sort -nr | head -10
why when i run the script does it work but also say usage basename string
any ideas thanks (9 Replies)
Discussion started by: musicmancanora4
9 Replies
3. Shell Programming and Scripting
hi,
can anyone help me by saying what is basename..
i have seen this in many programs where the basename is used....
thanks,
Krips (4 Replies)
Discussion started by: kripssmart
4 Replies
4. UNIX for Dummies Questions & Answers
Hi,
can anyone let me know how to interpret the below third line in the following code.
Gone through the man pages of "basename", but no go.
for f in *.foo;
do
base=`basename $f .foo`
mv $f $base.bar
done
Thanks. (2 Replies)
Discussion started by: venkatesht
2 Replies
5. Shell Programming and Scripting
I have a file
fileinput.txt:
File home/me/fileA.doc is size 232
File home/you/you/fileB.doc is size 343
File /directory/fileC.doc is size 433
File /directory/filed.doc cannot find file size
I want to use the basename command (or any other command) to output:
File fileA.doc is... (3 Replies)
Discussion started by: linuxkid
3 Replies
6. Shell Programming and Scripting
Hi,
Could you please help me to know the difference between
$0 and basename in unix how they useful in shell scripting.
Thanks in advance (3 Replies)
Discussion started by: lnviyyapu
3 Replies
7. UNIX for Dummies Questions & Answers
im trying to extract the basename of a process running on a host
processx is running at host1 as /applications/myapps/bin/processx
i wanted to check if its running, then extract the basename only using:
$ ssh host1 "ps aux | grep -v 'grep' | grep 'processx'" | awk '{ print basename $11}'
... (10 Replies)
Discussion started by: kaboink
10 Replies
8. Shell Programming and Scripting
Hi All,
I would like to improve my bash scripting skill and found a problem which I do not understand. Task is to search and print files in directory (and subdirecories) which contains its own name. Files can have spaces in name.
This one works fine for files in main directory, but not for... (4 Replies)
Discussion started by: new_item
4 Replies
9. Shell Programming and Scripting
what is the meaning of "script_name=$(basename $0)", can someone please explain? (1 Reply)
Discussion started by: abhi200389
1 Replies
10. Shell Programming and Scripting
Hi guys,
I need to know how i can ignore Pipe '|' if Pipe is coming as a column in Pipe delimited file
for eg:
file 1:
xx|yy|"xyz|zzz"|zzz|12...
using below awk command
awk 'BEGIN {FS=OFS="|" } print $3
i would get xyz
But i want as :
xyz|zzz to consider as whole column... (13 Replies)
Discussion started by: rohit_shinez
13 Replies
LEARN ABOUT REDHAT
basename
DIRNAME(3) Linux Programmer's Manual DIRNAME(3)
NAME
dirname, basename - Parse pathname components
SYNOPSIS
#include <libgen.h>
char *dirname(char *path);
char *basename(char *path);
DESCRIPTION
The functions dirname and basename break a null-terminated pathname string into directory and filename components. In the usual case,
dirname returns the string up to, but not including, the final '/', and basename returns the component following the final '/'. Trailing
'/' characters are not counted as part of the pathname.
If path does not contain a slash, dirname returns the string "." while basename returns a copy of path. If path is the string "/", then
both dirname and basename return the string "/". If path is a NULL pointer or points to an empty string, then both dirname and basename
return the string ".".
Concatenating the string returned by dirname, a "/", and the string returned by basename yields a complete pathname.
Both dirname and basename may modify the contents of path, so if you need to preserve the pathname string, copies should be passed to these
functions. Furthermore, dirname and basename may return pointers to statically allocated memory which may be overwritten by subsequent
calls.
The following list of examples (taken from SUSv2) shows the strings returned by dirname and basename for different paths:
path dirname basename
"/usr/lib" "/usr" "lib"
"/usr/" "/" "usr"
"usr" "." "usr"
"/" "/" "/"
"." "." "."
".." "." ".."
EXAMPLE
char *dirc, *basec, *bname, *dname;
char *path = "/etc/passwd";
dirc = strdup(path);
basec = strdup(path);
dname = dirname(dirc);
bname = basename(basec);
printf("dirname=%s, basename=%s
", dname, bname);
free(dirc);
free(basec);
RETURN VALUE
Both dirname and basename return pointers to null-terminated strings.
BUGS
In versions of glibc up to and including 2.2.1, dirname does not correctly handle pathnames with trailing '/' characters, and generates a
segmentation violation if given a NULL argument.
CONFORMING TO
SUSv2
SEE ALSO
dirname(1), basename(1),
GNU
2000-12-14 DIRNAME(3)