cat in the command line doesn't match cat in the script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting cat in the command line doesn't match cat in the script
# 8  
Old 01-27-2009
sure, mate:

Code:
########### first #############

sort -n -r -k 2 -k 1 file1 | uniq > file2
cat file2

output:
246 12 egged
246 12 egged
468 -1 egged
246 12 egged
468 -1 egged

########## second ############

sort -n -r -k 2 -k 1 file1 | uniq > file2
#cat file2 => note that this command is disabled at the moment!

> cat file2
246 12 egged
468 -1 egged

# this should be the correct answer.

No hard feelings Smilie
# 9  
Old 01-27-2009
Hi System_Shock,

All my files are in the same folder.
I create them in the same folder, hence that's where there'll be, I guess...

I checked in the remote computer window in my SSH program, and they're in the same folder.

Thank you, though! Smilie
# 10  
Old 01-27-2009
Tools

The difference appears to be that the uniq command runs in one example, but not in the other.
Odd and perplexing....
must ponder a little more...
# 11  
Old 01-27-2009
But you know what's strange?
That the original file doesn't even look like that!
The cat command adds and doubles lines!
The original file looks like this:

Code:
file1:
------
246 12 egged
468 -1 egged
468 -1 egged

# 12  
Old 01-27-2009
It works fine for me, so there's more to it.
Are you writing this script in one box and moving it to another which could have a different version of sort?
Any variables/paths you are setting in the script?
Are you doing this through a serial console?
Code:
#  cat file1
    246 12 egged
    468 -1 egged
    468 -1 egged

#  cat script.ksh
   sort -n -r -k2 -k1 file1 | uniq > file2
   cat file2
   
# ./script.ksh
    246 12 egged
    468 -1 egged

#

# 13  
Old 01-27-2009
I had to add -u -d to the end of the uniq command to get it to work the way shira wants it to.

I think this may be a simple syntax issue, no spaces between -k and the numbers, add -u -d to the uniq command (that is supposed to be the default for the uniq command with no flags).

Code:
sort -n -r -k2 -k1 file1 | uniq -u -d > file2
cat file2

Shira, run a more on your file2.
# 14  
Old 01-27-2009
Quote:
Are you writing this script in one box and moving it to another which could have a different version of sort?
I'm creating file1 and file2 in the same script.
although in order to create file1 I used a different script.
But this part works fine.

Quote:
Any variables/paths you are setting in the script?
No...
Actually there are some, but they have no connection to file2. They only help me to create file1, and as I said, this file is okay.

Quote:
Are you doing this through a serial console?
I'm not sure what it is, perhaps I don't know the English term for this...?
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Bash script: "mkdir -p" doesn't work with var(cat x)

Hello, :) I've an issue with the creation of a directory, All work without it :mad: So, below, my scripts with the debug output : #!/bin/bash # PATHS HOME_BACKUP="/home/backup" HOME_SCRIPT="/home/scripts/test/backup_server" TARGET="/var/www" # DATE DATE_Ymd=$(date +%Y-%m-%d) #... (1 Reply)
Discussion started by: Arnaudh78
1 Replies

2. UNIX for Beginners Questions & Answers

Cat command does not respect new line

Here's my script echo "1" >>hello.txt echo "2" >>hello.txt echo "3" >>hello.txt mailx -s "Check Status" #myteam@mycomp.com<hello.txt In Outlook I see EMail body as when I want it to be can you please suggest ? (29 Replies)
Discussion started by: mohtashims
29 Replies

3. AIX

Script to cat and dd last line!!! of each file

hi Guys, Am new to this awesome forum, and yea i need some help here asap thnx :) i have a directory with over 34000 text files, i need a script that will delete the last line of each of this file without me necessary opening the files. illustration:- file1 200 records file2 130 records... (5 Replies)
Discussion started by: eetang
5 Replies

4. Shell Programming and Scripting

for loop with whole line using cat

Hi all, I need to create loop script to read full line and append a variable to each line. cat file I need the output like below 10.0.0.1,136 1 24 048800 id N4 No_Light 10.0.0.1,137 1 25 048900 id N4 No_Light 10.0.0.1,140 1 28 048c00 id N4 No_Light 10.0.0.1,262 1 38 048e80... (13 Replies)
Discussion started by: ranjancom2000
13 Replies

5. Shell Programming and Scripting

Using cat to match pattern start with particular date.

Hi All, version :- SunOS rdrsu1 5.10 Generic_142900-12 sun4u sparc SUNW,SPARC-Enterprise I have a requirenemet, where I have to extrace eroror start with ORA-, which match a perticular date. In below text I only extract out error coming on wed-8 and start with text like "ORA-". hope you... (4 Replies)
Discussion started by: alok.behria
4 Replies

6. Shell Programming and Scripting

cat file1 read line-per-line then grep -A 15 lines down in fileb

STEP 1 # Set variable FILE=/tmp/mainfile SEARCHFILE =/tmp/searchfile # THIS IS THE MAIN FILE. cat /tmp/mainfile Interface Ethernet0/0 "outside", is up, line protocol is up Hardware is i82546GB rev03, BW 100 Mbps Full-Duplex(Full-duplex), 100 Mbps(100 Mbps) MAC address... (6 Replies)
Discussion started by: irongeekio
6 Replies

7. UNIX for Dummies Questions & Answers

Difference between cat , cat > , cat >> and touch !!!

Hi Can anybody tell the difference between Difference between cat , cat > , cat >> and touch command in UNIX? Thanks (6 Replies)
Discussion started by: skyineyes
6 Replies

8. Shell Programming and Scripting

Cat'ing a multiple line file to one line

I am writing a script that is running a loop on one file to obtain records from another file. Using egrep, I am finding matching records in file b, then outputing feilds of both into another file. **************************** filea=this.txt fileb=that.txt cat $filea | while read line do... (1 Reply)
Discussion started by: djsal
1 Replies

9. UNIX for Dummies Questions & Answers

using 'cat' to in 'while read line'

Hi, I'm having some trouble reading a file that was 'cat' through a while loop. Can anyone suggest alternatives? what i do is cat filename|grep *.stuff while read line do echo $line ... and other commands done The cat,grep line seems to work correctly, but the script hangs when i add in... (3 Replies)
Discussion started by: chugger06
3 Replies
Login or Register to Ask a Question