Sponsored Content
Top Forums Shell Programming and Scripting row to column and position data in to fixed column width Post 302403891 by thillai_selvan on Monday 15th of March 2010 04:30:04 AM
Old 03-15-2010
You can achieve this Perl using the following code
Code:
opendir DIR,"." or die "Can't open dir : $!\n";
while (my $files=readdir(DIR))
{

if ($files=~/^\./) #this is for avoiding the . and .. default files
{
    next;
}
print "$count) $files\t";
if ( $count % 3 == 0 )
{
    print "\n";
}
$count++;
}

The above code will list all the files in the current directory.
It will display 3 files per line.

The sample output I got is as follows

Code:
1) xac  2) dir.pl       3) func.sh
4) xad  5) sc.sh        6) xae
7) xab  8) test.sh      9) split.sh
10) xaa

 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Comparing column of variable length anf fixed width file

Hi, I have two input files. File1: ID Name Place 1-234~name1~Newyork 1-34~name2~Boston 1-2345~name3~Hungary File1 is a variable length file where each column is seperated by delimitter "~". File2: ID Country 1-34<<11 SPACES>>USA<<7 spaces>> 1-234<<10 SPACES>>UK<<8... (5 Replies)
Discussion started by: manneni prakash
5 Replies

2. Shell Programming and Scripting

edit entire column from a fixed-width file using awk or sed

Col1 Col2 Col3 Col4 12 Completed 08 0830 12 In Progress 09 0829 11 For F U 07 0828 Considering the file above, how could i replace the third column the most efficient way? The actual file size is almost 1G. I am... (10 Replies)
Discussion started by: tamahomekarasu
10 Replies

3. Shell Programming and Scripting

Changing one column of delimited file column to fixed width column

Hi, Iam new to unix. I have one input file . Input file : ID1~Name1~Place1 ID2~Name2~Place2 ID3~Name3~Place3 I need output such that only first column should change to fixed width column of 15 characters of length. Output File: ID1<<12 spaces>>Name1~Place1 ID2<<12... (5 Replies)
Discussion started by: manneni prakash
5 Replies

4. UNIX for Dummies Questions & Answers

Remove duplicates based on a column in fixed width file

Hi, How to output the duplicate record to another file. We say the record is duplicate based on a column whose position is from 2 and its length is 11 characters. The file is a fixed width file. ex of Record: DTYU12333567opert tjhi kkklTRG9012 The data in bold is the key on which... (1 Reply)
Discussion started by: Qwerty123
1 Replies

5. Shell Programming and Scripting

How to split a fixed width text file into several ones based on a column value?

Hi, I have a fixed width text file without any header row. One of the columns contains a date in YYYYMMDD format. If the original file contains 3 dates, I want my shell script to split the file into 3 small files with data for each date. I am a newbie and need help doing this. (14 Replies)
Discussion started by: bhanja_trinanja
14 Replies

6. Shell Programming and Scripting

To replace the value of the column in a fixed width file

I have a fixed with file with header & trailer length having the same length of the detail record file. The details record length of this file is 24, for Header and Trailer the records will be padded with spaces to match the record length of the file Currently I am adding 3 spaces in header... (14 Replies)
Discussion started by: ginrkf
14 Replies

7. Shell Programming and Scripting

Print column details from fixed width file using awk command

hi, i have a fixed width file with multiple columns and need to print data using awk command. i use: awk -F "|" '($5 == BH) {print $1,$2,$3}' <non_AIM target>.txt for a delimiter file. but now i have a fixed width file like below: 7518 8269511BH 20141224951050N8262 11148 8269511BH... (5 Replies)
Discussion started by: kcdg859
5 Replies

8. Shell Programming and Scripting

UNIX command -Filter rows in fixed width file based on column values

Hi All, I am trying to select the rows in a fixed width file based on values in the columns. I want to select only the rows if column position 3-4 has the value AB I am using cut command to get the column values. Is it possible to check if cut -c3-4 = AB is true then select only that... (2 Replies)
Discussion started by: ashok.k
2 Replies

9. Shell Programming and Scripting

Column to row and position data in a text file

Hi everyone.. I have a list of values in a file... a, b, c, 1, 2, 3, aaaa, bbbbb, I am interested in converting this column to a row.. "text",aaaa, bbbb a,1 (7 Replies)
Discussion started by: manihi
7 Replies
directory(3)						     Library Functions Manual						      directory(3)

Name
       opendir, readdir, telldir, seekdir, rewinddir, closedir - directory operations

Syntax
       #include <sys/types.h>
       #include <sys/dir.h>

       DIR *opendir(dirname)
       char *dirname;

       struct direct *readdir(dirp)
       DIR *dirp;

       long telldir(dirp)
       DIR *dirp;

       void seekdir(dirp, loc)
       DIR *dirp;
       long loc;

       void rewinddir(dirp)
       DIR *dirp;

       int closedir(dirp)
       DIR *dirp;

Description
       The library routine opens the directory named by filename and associates a directory stream with it.  A pointer is returned to identify the
       directory stream in subsequent operations.  The pointer NULL is returned if the specified filename can not be accessed, or if  insufficient
       memory is available to open the directory file.

       The  routine  returns  a  pointer  to  the next directory entry.  It returns NULL upon reaching the end of the directory or on detecting an
       invalid operation.  The routine uses the system call to read directories. Since the routine returns NULL  upon  reaching  the  end  of  the
       directory or on detecting an error, an application which wishes to detect the difference must set errno to 0 prior to calling

       The  routine  returns the current location associated with the named directory stream. Values returned by are good only for the lifetime of
       the DIR pointer from which they are derived.  If the directory is closed and then reopened, the value may be invalidated due to	undetected
       directory compaction.

       The routine sets the position of the next operation on the directory stream.  Only values returned by should be used with

       The routine resets the position of the named directory stream to the beginning of the directory.

       The routine closes the named directory stream and returns a value of 0 if successful. Otherwise, a value of -1 is returned and errno is set
       to indicate the error.  All resources associated with this directory stream are released.

Examples
       The following sample code searches a directory for the entry name.
       len = strlen(name);

       dirp = opendir(".");

       for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp))

       if (dp->d_namlen == len && !strcmp(dp->d_name, name)) {

		 closedir(dirp);

		 return FOUND;

	    }

       closedir(dirp);

       return NOT_FOUND;

Environment
       In the POSIX environment, the file descriptor returned in the DIR structure after an call will have the FD_CLOEXEC flag set.  See <fcntl.h>
       for more detail.

Return Values
       Upon  successful  completion, returns a pointer to an object of type DIR.  Otherwise, a value of NULL is returned and errno is set to indi-
       cate the error.

       The routine returns a pointer to an object of type struct dirent upon successful completion.  Otherwise, a value of NULL  is  returned  and
       errno is set to indicate the error.  When the end of the directory is encountered, a value of NULL is returned and errno is not changed.

       The routine returns the current location.  No errors are defined for and

       The routine returns zero upon successful completion.  Otherwise, a value of -1 is returned and errno is set to indicate the error.

Diagnostics
       The routine will fail if:

       [EBADF]	      The dirp argument does not refer to an open directory stream.

       [EINTR]	      The routine was interrupted by a signal.

       The routine will fail if:

       [EACCES]       Search permission is denied for any component of dirname or read permission is denied for dirname.

       [ENAMETOOLONG] The length of the dirname string exceeds {PATH_MAX}, or a pathname component is longer than {NAME_MAX}.

       [ENOENT]       The dirname argument points to the name of a file which does not exist, or to an empty string and the environment defined is
		      POSIX or SYSTEM_FIVE.

       [ENOTDIR]      A component of dirname is not a directory.

       [EMFILE]       Too many file descriptors are currently open for the process.

       [ENFILE]       Too many files are currently open in the system.

       The routine will fail if:

       [EBADF]	      The dirp argument does not refer to an open directory stream.

See Also
       close(2), getdirentries(2), lseek(2), open(2), read(2), dir(5)

																      directory(3)
All times are GMT -4. The time now is 03:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy