How to read data from tab delimited file after a specific position?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to read data from tab delimited file after a specific position?
# 8  
Old 12-04-2014
These files are DOS-type files with Carriage Returns and they contain no TABS.

--
Try:
Code:
awk '{$1=$2=$3=x; gsub(/\*/,x); $1=$1}1'  file

# 9  
Old 12-04-2014
If it's really a TAB delimited file, then following cut command should work
Code:
cut -f4- myfile

but it will produce an empty line if a line has less than 4 fields.
---
This awk command will ignore lines with less than 4 fields:
Code:
awk 'NF>=4 {for (i=4;i<=NF;i++) printf $i" "; print ""}' myfile

# 10  
Old 12-04-2014
Scrutinizer thanks.

attached the output file

currently it is in below format.
Administrators Guests
None

It would be really gr8 if all the data in a single line with either tab or comma separated format.(with current format, I have a workaround but it may not be gr8 for long run)

Administrators,Guests,None
Administrators Guests None
# 11  
Old 12-04-2014
Awright. Try:
Code:
awk 'END{printf RS} {$1=$2=$3=x; gsub(/\*|\r/,x); $1=$1}1' OFS='\t' ORS='\t'  file

# 12  
Old 12-04-2014
Scrutinizer,
command execution failed with below error

\r not recognized as an internal or external command,operable program or batch file.
# 13  
Old 12-04-2014
Right... "batch file" ??? You are running awk on a Windows OS then...

Try putting this in a file, for example tst.awk

Code:
BEGIN {
  OFS=ORS="\t"
}

{
  $1=$2=$3=x
  gsub(/\*|\r/,x)
}

END {
  printf RS
}

And run it like this:
Code:
awk -f tst.awk file



---
It will output the file in UNIX format. Is that what you want?

Otherwise, replace
Code:
printf RS

with
Code:
printf "\r\n"

# 14  
Old 12-04-2014
yes it is a windows OS but earlier command was also awk that you have suggested and it was executed successfully
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Replace a column in tab delimited file with column in other tab delimited file,based on match

Hello Everyone.. I want to replace the retail col from FileI with cstp1 col from FileP if the strpno matches in both files FileP.txt ... (2 Replies)
Discussion started by: YogeshG
2 Replies

2. UNIX for Dummies Questions & Answers

Need to convert a pipe delimited text file to tab delimited

Hi, I have a rquirement in unix as below . I have a text file with me seperated by | symbol and i need to generate a excel file through unix commands/script so that each value will go to each column. ex: Input Text file: 1|A|apple 2|B|bottle excel file to be generated as output as... (9 Replies)
Discussion started by: raja kakitapall
9 Replies

3. Shell Programming and Scripting

How to make tab delimited file to space delimited?

Hi How to make tab delimited file to space delimited? in put file: ABC kgy jkh ghj ash kjl o/p file: ABC kgy jkh ghj ash kjl Use code tags, thanks. (1 Reply)
Discussion started by: jagdishrout
1 Replies

4. Homework & Coursework Questions

Shell Script to read a tab delimited file and perform simple tasks

1. The problem statement, all variables and given/known data: Hello! I need help with this problem bash shell scripting that basically just reads the data in a tab delimited file and does the following below 1. Read in the data file Survey.txt and assign the column values to variables of... (6 Replies)
Discussion started by: jsmith6932
6 Replies

5. Shell Programming and Scripting

Extracting a portion of data from a very large tab delimited text file

Hi All I wanted to know how to effectively delete some columns in a large tab delimited file. I have a file that contains 5 columns and almost 100,000 rows 3456 f g t t 3456 g h 456 f h 4567 f g h z 345 f g 567 h j k lThis is a very large data file and tab delimited. I need... (2 Replies)
Discussion started by: Lucky Ali
2 Replies

6. Shell Programming and Scripting

Determining position in a tab delimited file

hi, I want to determine the position of specific values over a cutoff. So I have a string of values that are mainly negative in number and I want to print the rare few that are positive. Specifically I want to know the position of the value along the string. The position is based from right to... (11 Replies)
Discussion started by: phil_heath
11 Replies

7. UNIX for Dummies Questions & Answers

Read a tab delimited

OK, let's set this up. I have a tab delimited file from excel. In my UNIX shell I have the following lines IFS=`printf "\t"` while read LINE_NO SKIP IGNORE_ERRORS OTHER do .... This works fine if there is something in every column like this. NOTE, those are tabs, not spaces. :) ... (2 Replies)
Discussion started by: podzach
2 Replies

8. Shell Programming and Scripting

read space filled file and replace text at specific position

Hi I have a spaced filled file having records like below: What I want is to read line having RT3 at position 17-19 then go to position 2651 check the 18 characters (might be space filled till 18 characters). This position should have a... (6 Replies)
Discussion started by: COD
6 Replies

9. Shell Programming and Scripting

Check whether a given file is in ASCII format and data is tab-delimited

Hi All, Please help me out with a script which checks whether a given file say abc.txt is in ASCII format and data is tab-delimited. If the condition doesn't satisfy then it should generate error code "100" for file not in ASCII format and "105" if it is not in tab-delimited format. If the... (9 Replies)
Discussion started by: Mandab
9 Replies

10. Shell Programming and Scripting

Looping thru tab delimited data

Hello people, Can you please tell me how to loop thru the contents of a variable having tab delimited data using for loop in KSH. For example: data1 data2 data3 data4 How can I access the above data in a for loop? Please let me know. Thanks. Regards, T. (6 Replies)
Discussion started by: tipsy
6 Replies
Login or Register to Ask a Question