Read same file simultaneously with two different programs


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Read same file simultaneously with two different programs
# 1  
Old 02-20-2013
Read same file simultaneously with two different programs

Hi all, I was just wondering if there are any consequences, or if its a problem to have a multiple scripts parsing (reading) the same file simultaneously.

For example, I have file.txt with lots of information.

Code:
cat script1.sh
grep "awesome" file1.txt > awesome.txt

cat script2.sh
grep -v "awesome" file1.txt > notawesome.txt

Can both scripts run at the same time and read from file1.txt simultaneously?

Many thanks in advance,
Torch
# 2  
Old 02-20-2013
Unsynchronized simultaneous reads are not a problem.

Regarding the example you gave, though, it could be accomplished in a single pass by a single process (sed or awk, to name a couple tools).

Regards,
Alister
This User Gave Thanks to alister For This Post:
# 3  
Old 02-20-2013
Thanks for your response, Alister.

What do you mean by unsynchronized? The example I gave was just for simplicity, but typically the scripts are perl or python programs that read the file (gigabites in size). But don't write to it or append anything.

Just wondering if I am screwing things up by accessing the file with multiple programs.

Thanks again,
Torch
# 4  
Old 02-20-2013
Unsynchronized means the readers of the file read whatever they want to read whenever they need to read it.

You can have large number of processes reading a file at exactly the same time. If you have too many you can reach I/O saturation on huge files. On medium sized files the I/O systems kernel memory cache and disk controller cache can easily hold several GB's of data for a group of files on a system that is not starved for memory. On small desktops with 2GB of RAM this will not fly.

That said: two scripts scripta scriptb running in parallel launched from another bigscript

bigscript:
Code:
scripta giantfile >output1 &
scriptb giantfile >output2 &
wait

put bigscript in background so you can keep working:
Code:
bigscript 1>bigscript.log 2>&1  &

Or. run it with at:
Code:
at -k now <<!
cd /home/me
/home/me/bigscript 
!

Any output (like errors) will be emailed to your UNIX account.
This User Gave Thanks to jim mcnamara For This Post:
# 5  
Old 02-26-2013
Thank you so much for your very clear reply! That was very helpful.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Ksh: How to write the log file simultaneously when .sql file executes by UNIX process

Hello Team- we would like to implement an approach which has to write the log file simultaneously when .sql file is executing by Unix process. At present,it is writing the log file once the process is completed. I've tested the current process with the below approaches and none of them... (1 Reply)
Discussion started by: Hima_B
1 Replies

2. UNIX for Dummies Questions & Answers

Difference between inbuilt suid programs and user defined root suid programs under bash shell?

Hey guys, Suppose i run passwd via bash shell. It is a suid program, which temporarily runs as root(owner) and modifies the user entries. However, when i write a C file and give 4755 permission and root ownership to the 'a.out' file , it doesn't run as root in bash shell. I verified this by... (2 Replies)
Discussion started by: syncmaster
2 Replies

3. Shell Programming and Scripting

Redirect an output from a script to a file and display it at a console simultaneously

Hi, I'd like to redirect the STDOUT output from my script to a file and simultaneously display it at a console. I've tried this command: myscript.sh | tail -f However, it doesn't end after the script finishes running I've also tried this: myscript.sh | tee ~/results.txt But it writes... (3 Replies)
Discussion started by: wenclu
3 Replies

4. Programming

Run two CGIs simultaneously and Ajax to read updated value from CGI1

Flow of program: C based CGI is used CGI1: -Gets called when user hits upload button(submit) ie form action = CGI1 -Does the file upload (copy to a directory etc) JS, Ajax fucntion: -A JS function is called when user hits upload button -The JS function opens an Ajax request for CGI2... (8 Replies)
Discussion started by: xs2punit
8 Replies

5. UNIX for Dummies Questions & Answers

Are programs like sys_open( ) ,sys_read( ) et al examples of system level programs ?

Are the programs written on schedulers ,thread library , process management, memory management, et al called systems programs ? How are they different from the programs that implement functions like open() , printf() , scanf() , read() .. they have a prefix sys_open, sys_close, sys_read etc , right... (1 Reply)
Discussion started by: vishwamitra
1 Replies

6. UNIX for Dummies Questions & Answers

What programs access shared library file

I was curious how to tell which programs are accessing a file (libobjc.A.dylib) in /usr/lib This file seems to be the culprit in a bunch of Safari crashes, and I just wanted to know if and what other programs use it. Also, I was curious what a good way to find out what files are being written... (4 Replies)
Discussion started by: glev2005
4 Replies

7. UNIX for Dummies Questions & Answers

how to call two programs simultaneously

Hi, i want to call two programs simultaneously from a currently running program so as to distribute the job and fasten the speed. As of now I call the programs one after the other within the main program. e.g. `perl A.pl`; `perl B.pl`; how can I run the two paralelly? urgent ... please... (1 Reply)
Discussion started by: vipinccmb
1 Replies

8. Shell Programming and Scripting

Multiple processes writing on the same file simultaneously

Hi All, I have encountered a problem,please help me. I have a script in which multiple processes are writing on to the same file . How should I stop this , I mean lock mechanism can be implemented or we can write the at different files and then concatenate the files. What would be a better... (1 Reply)
Discussion started by: Sayantan
1 Replies

9. Shell Programming and Scripting

Config file use in Shell Programs...

I wanted to know the format everyone uses for cfg files that are called by shell programs. I do mostly sh and ksh scripts and many times I'm modifying an existing script to do another task. Recently I have been making my scripts more generic and using configuration files to hold uniq details.... (3 Replies)
Discussion started by: tomas
3 Replies

10. UNIX for Dummies Questions & Answers

log file of programs

if i have a program (example admintool), if i want to keep a log of what i did in admintool, can i do this admintool > admintool_log. i have tried but the system just waits there.... then i did a kill and see the file. the file has the main menu screen... basically, i want to keep a log... (3 Replies)
Discussion started by: yls177
3 Replies
Login or Register to Ask a Question