05-24-2014
If you are going to specify the path to the target directory in your redirection, then you need to strip directories from $f and only use the basename.
Regards,
Alister
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I want to write bash script that will keep on looking for files in a directory and if any file exists, it processes them. I want it to be a background process, which keeps looking for files in a directory.
Is there any way to do that in bash script?
I can loop through all the files like... (4 Replies)
Discussion started by: rladda
4 Replies
2. AIX
hello
i have a requirement where i have a direcotry in which i get files in the format
STOCKS.20080114.dat
STOCKS.20080115.dat
STOCKS.20080117.dat
STOCKS.20080118.dat
i need to loop through the directory and sort by create date descending order and i need to process the first file.
... (1 Reply)
Discussion started by: dsdev_123
1 Replies
3. Shell Programming and Scripting
Hi all,
Can somebody help me with this problem pls.
I need to extract one specific line from each files in a folder and put
the all lines extracted in a unique output file in the following format.
line extracted, respective name of file, date of file.
I´m, trying the part to extract... (3 Replies)
Discussion started by: cgkmal
3 Replies
4. Shell Programming and Scripting
hi all
i have some files present in a directory
i want to loop through all the files in the directory
each time i loop
i should change the in_file parameter in the control file and load it into a table using sql loader
there is only one table where i have to load alll the files ... (3 Replies)
Discussion started by: rajesh_tns
3 Replies
5. Shell Programming and Scripting
Hi,
I am new to unix and shell scripting,can anybody help me in sctipting a requirement.
my requirement is to get the latest directory the name of the directory will be like CSB.monthdate_time stamp
like CSB.Sep29_11:16 and CSB.Oct01_16:21.
i need to pick the latest directory.
in the... (15 Replies)
Discussion started by: sudhir_83k
15 Replies
6. UNIX Desktop Questions & Answers
I was looking to get some help with copying files in one directory to another using a for-in loop. My script file is called copyfile and here is what I have:
for file in $(ls -a $1)
do
cp $file ~/dir-2
done
When I run copyfile dir-1 this is what I get
cp: omitting directory `.'... (1 Reply)
Discussion started by: Trinimini
1 Replies
7. UNIX for Dummies Questions & Answers
Hi,
I would like to write a loop to change the names of files in a directory. The files are called data1.txt through data1000.txt. I'd like to change their names to a1.txt through a1000.txt. How do I go about doing that? Thanks! (2 Replies)
Discussion started by: evelibertine
2 Replies
8. Shell Programming and Scripting
I am trying to loop through files in a directory, and sort each file. No matter what changes I make to the code, I get the following errors:
'aunch.sh: line 4: syntax error near unexpected token `do
'aunch.sh: line 4: `for f in ${FILES}/*; do
#!/bin/bash
FILES=$(pwd)
for f in ${FILES}/*;... (1 Reply)
Discussion started by: ldorsey
1 Replies
9. Shell Programming and Scripting
I am trying to loop through files in a directory, and sort each file. No matter what changes I make to the code, I get the following errors:
'aunch.sh: line 4: syntax error near unexpected token `do
'aunch.sh: line 4: `for f in ${FILES}/*; do
#!/bin/bash
FILES=$(pwd)
for f in ${FILES}/*;... (6 Replies)
Discussion started by: ldorsey
6 Replies
10. Shell Programming and Scripting
I have one question.
On the directory I have many files start with
DB.DAILYxxxxxxx.YYYYMMDD.HHMMSS
and I have several files with other format, like
LET.20170310
daily.20170310
tba.20170310
How can I exclude from my loop DB.DAILY files?
I tried
ls *20170310* | while read... (4 Replies)
Discussion started by: digioleg54
4 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)