Sponsored Content
Top Forums Shell Programming and Scripting Need help with looping through file contents Post 302947411 by Chubler_XL on Wednesday 17th of June 2015 08:19:17 PM
Old 06-17-2015
From bash you could do (Based on RudiC's awk script):

Code:
for file in *.out
do
   log=""
   while read line
   do
      case "$line" in
          appname:\ *) echo "${line#* }"  ;;
          logname*)    printf -v log "%s%s\n" "$log" "$line" ;;
          CAP:\ *)     printf -v log "%s\n" "$log"
                       eval printf '%.0s\\n' {1..${line#* }} ;;
      esac
   done < $file
   printf "%s" "$log"
done

Edit: And if you don't like using eval (which can be wise) replace the eval line with:

Code:
declare -a "vals=({1..${line#* }})"
printf "%.0s\n" ${vals[@]} ;;


Last edited by Chubler_XL; 06-17-2015 at 09:40 PM..
This User Gave Thanks to Chubler_XL For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Creating file contents using contents of another file

Hi, I am not sure how to start doing this so I hope to get some advice as to how to start. I have 2 files. The source file contains data that I needed is in columns delimited by ";". For example, in this format: "CONTINENT","COUNTRY","CITY","ID" "asia","japan","tokyo","123"... (21 Replies)
Discussion started by: ReV
21 Replies

2. UNIX for Dummies Questions & Answers

compare 2 file contents , if same delete 2nd file contents

Give shell script....which takes two file names as input and compares the contents, is both are same delete second file's contents..... I try with "diff"...... but confusion how to use "diff" with if ---else Thanking you (5 Replies)
Discussion started by: krishnampkkm
5 Replies

3. Shell Programming and Scripting

I want to delete the contents of a file which are matching with contents of other file

Hi, I want to delete the contents of a file which are matching with contents of other file in shell scripting. Ex. file1 sheel,sumit,1,2,3,4,5,6,7,8 sumit,rana,2,3,4,5,6,7,8,9 grade,pass,2,3,4,5,6,232,1,1 name,sur,33,1,4,12,3,5,6,8 sheel,pass,2,3,4,5,6,232,1,1 File2... (3 Replies)
Discussion started by: ranasheel2000
3 Replies

4. Shell Programming and Scripting

Replace partial contents of file with contents read from other file

Hi, I am facing issue while reading data from a file in UNIX. my requirement is to compare two files and for the text pattern matching in the 1st file, replace the contents in second file by the contents of first file from start to the end and write the contents to thrid file. i am able to... (2 Replies)
Discussion started by: seeki
2 Replies

5. Shell Programming and Scripting

While or For with looping contructs? to create files from contents of a text file

Hi so far I created this script: vi loop.beta.sh for i in `cat extract.filenames.tabc` do echo $i done>$i === This is the original text file. $ more tabc.txt -rwx------- 1 alice staff 1586 2010-11-05 02:27 request-key .conf -rwx------- 1 ted staff 126 ... (3 Replies)
Discussion started by: wolf@=NK
3 Replies

6. Shell Programming and Scripting

FILE_ID extraction from file name and save it in CSV file after looping through each folders

FILE_ID extraction from file name and save it in CSV file after looping through each folders My files are located in UNIX Server, i want to extract file_id and file_name from each file .and save it in a CSV file. How do I do that? I have folders in unix environment, directory structure is... (15 Replies)
Discussion started by: princetd001
15 Replies

7. Shell Programming and Scripting

Looping inside directories based on a file which contains file directory list

Hi All, Please help. I have got a file which contains a listing of a file and some directories after it, one by one. I am calling this file xyz.txt here file1 dir1 dir2 dir3 dir4 file2 dir5 dir6 dir7 dir8 file3 dir9 dir10 dir11 dir12 (6 Replies)
Discussion started by: Piyush Jakra
6 Replies

8. UNIX for Dummies Questions & Answers

Looping/Reading file contents not working

Hi, I am doing something basic, but I am missing something. Im trying to read the contents of a file and taking those values and connecting to a database. However, it only connect to one (or reads in) value and then exists. Here is what it looks like: listname.txt db1 db2 db3 Script:... (15 Replies)
Discussion started by: DBnixUser
15 Replies

9. Shell Programming and Scripting

Folder contents getting appended as strings while redirecting file contents to a variable

Hi one of the output of the command is as below # sed -n "/CCM-ResourceHealthCheck:/,/---------/{/CCM-ResourceHealthCheck:/d;/---------/d;p;}" Automation.OutputZ$zoneCounter | sed 's/$/<br>/' Resource List : <br> *************************** 1. row ***************************<br> ... (2 Replies)
Discussion started by: vivek d r
2 Replies

10. UNIX for Dummies Questions & Answers

Looping through the contents of array for output name

Hi all, I am trying to loop through the string contents of an array, to add it during the saving of the output files. I am trying this code to print each column and save it to unique file name, but it doesn't work. Thanks for any help. fnam=(japan usa uk) alldata.dat contained sample data... (1 Reply)
Discussion started by: ida1215
1 Replies
folder(1)						      General Commands Manual							 folder(1)

NAME
folder - set folder or display current folder name (only available within the message handling system, mh) SYNOPSIS
folder [+folder] [msg] [options] OPTIONS
Displays information on all the folders in your Mail directory. The folders are listed alphabetically, with a line of information given for each folder. This is identical to the display produced by the folders command. See folders(1). Lists only the name of the current folder, with no additional information. This is faster because the folders need not be read. Displays a header produced by the system, in addition to the information about the current file. This header is identical to the one that appears at the top of the listing produced by folder -all or by folders. The header can be suppressed by using the -noheader option. Prints a list of the valid options to this com- mand. Lists the contents of the folder-stack. No +folder argument is allowed with this option. The contents of the folder-stack are listed automatically when the -pop or -push option is used. This corresponds to the dirs operation in the C-shell. Re-numbers messages in the folder. Messages are re-numbered sequentially, and any gaps in the numbering are removed. The default operation is -nopack, which does not change the numbering in the folder. Discards the top of the folder-stack, after setting the current folder to that value. No +folder argu- ment is allowed with this option. This corresponds to the popd operation in the C-shell; see csh(1). The -push and -pop options are mutu- ally exclusive: the last occurrence of either one overrides any previous occurrence of the other. Pushes the current folder onto the folder-stack, and makes the +folder argument into the current folder. If +folder is not given, the current folder and the top of the folder-stack are exchanged. This corresponds to the pushd operation in the C-shell; see csh(1). The -push switch and the -pop switch are mutually exclusive: the last occurrence of either one overrides any previous occurrence of the other. Lists each folder recursively. Information on the current folder is displayed, followed by information on any sub-folders which it contains. Displays only the total num- ber of messages and folders in your Mail directory. This option does not print any information about the current folder. It can be sup- pressed using the -nototal option. The defaults for folder are: +folder defaults to the current folder msg defaults to none -nofast -noheader -nototal -nopack -norecurse DESCRIPTION
The folder command lets you set the current folder, or display information about it. It can also be used to manage the folder stack. If you use the folder command without a +folder argument, information about the current folder is displayed on the screen. If you use folder with the +folder argument, the named folder is set to be the current folder. Information about the named folder is also displayed on the screen. If you use folder with the msg argument, it will set the specified message to be current. Information on the current folder is also dis- played. You can use both the +folder and msg arguments together in one command. If you specify a +folder that does not exist, you are asked whether you want to create it. This is a good way to create an empty folder for later use. The display is identical whether you set the folder or display the contents of the current folder. The following example shows the type of display that is produced. The display lists the current folder, the number of messages in it, the range of the messages (low-high), and the current message within the folder. It also flags extra files if they exist. inbox+ has 16 messages ( 3- 22); cur= 15. RESTRICTIONS
Do not create folder names that are made up of only digits. PROFILE COMPONENTS
Current-Folder: To find the default current folder Folder-Protect: To set mode when creating a new folder Folder-Stack: To determine the folder stack lsproc: Program to list the contents of a folder EXAMPLES
The following example shows how folder can be used to change the current folder to +test, and display information on that folder. The plus sign (+) next to test indicates that it is now the current folder. % folder +test test+ has 2 messages ( 1- 2); cur= 2. The next example shows the display produced by using the -all option to folder: Folder # of messages ( range ); cur msg (other files) V2.3 has 3 messages ( 1- 3). adrian has 20 messages ( 1- 20); cur= 2. brian has 16 messages ( 1- 16). chris has 12 messages ( 1- 12). copylog has 242 messages ( 1- 242); cur= 225. inbox+ has 73 messages ( 1- 127); cur= 127. int has 4 messages ( 1- 4); cur= 2 (others). jack has 17 messages ( 1- 17); cur= 17. TOTAL= 387 messages in 8 folders. This display is identical to that produced by the folders command. See folders(1) for an explanation of this display. The next example shows how to use folder to create an empty folder: % folder +test Create folder "$HOME/Mail/test"? y test+ has no messages. You can also use folder to create an empty sub-folder within an existing folder. The following example shows how you can create a sub-folder in the folder +test: % folder +test/testtwo Create folder "$HOME/Mail/test/testwo"? y test/testtwo+ has no messages. See refile(1) for more details of sub-folders. FILES
The user profile. SEE ALSO
csh(1), refile(1), mhpath(1) folder(1)
All times are GMT -4. The time now is 02:12 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy