09-21-2006
help running strace
OK so I wanted to know how does grep outputs to the pipe and how sort reads from it. So I run a strace over "grep blah myfile | sort" and this is what I got:
open("myfile", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0600, st_size=84, ...}) = 0
read(3, "blah blah and blah cause of blah"..., 32768) = 84
fstat64(1, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fe8000
read(3, "", 32768) = 0
close(3) = 0
write(1, "blah blah and blah cause of blah"..., 85) = 85
close(1) = 0
munmap(0xb7fe8000, 4096) = 0
exit_group(0) = ?
Process 14533 detached
blah blah and blah cause of blah
find blah myfile blah grep it.
this is my blah file
I know that grep nor sort are aware of the pipe, they just input/output to the stdin/stdout... the pipe just connect them, that's how pipes works as far as I know... but what I don't see in this code is how grep is outputing to the pipe (stdout) and how is sort reading from the pipe (stdin). Is there anyway to check that relation? All I can tell from the code I bolded is:
MyFile -> Grep --------------------------> stdout
Unless "read(3, "", 32768)" has anything to do with the sort process.
Thanks in advance.
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi,
Please I need your expert advise on how to prevent/lock from execution job1 while job2 is still running in Unix... THanks:) (3 Replies)
Discussion started by: tikang
3 Replies
2. UNIX for Advanced & Expert Users
Hi Gurus,
I need to trace a sqlplus session using strace.
Can someone please provide me the syntax. sorry was not able to figure out by reading the man page. :-(
i tried to do as below but getting the error
xt33db006/u1/app/oracle/product/10.2.0/asm_1$ strace -f sqlplus '/as sysdba'... (0 Replies)
Discussion started by: p4cldba
0 Replies
3. Solaris
Hi,
i have a script which need to do behave differently when run as a startup process from init.d/ rc2.d script and when run manually from shell.
How do i distinguish whether my script is run by init process or by shell??
Will the command
/proc/$$/psinfo | grep "myscript" work well???... (2 Replies)
Discussion started by: vickylife
2 Replies
4. UNIX for Advanced & Expert Users
Hi All,
int ioctl(int d, int request, ...);
Can somebody tell me how does ioctl decides the input parameter: "request".
Sometimes, its SNDCTL_TMR_TIMEBASE or TCGETS
or FIONREAD...etc.
What is the pattern??
I am asking this coz my strace returns this: ... (1 Reply)
Discussion started by: angad.makkar
1 Replies
5. Shell Programming and Scripting
Hi. A shell scripting newbie here. I am trying to write a script that will create a running total of Sales, and increment a counter for each Sales entry, but when I executed the program it never stopped.
counter=0
Sales=0
echo "enter sales price"
read sales
while
do
let counter=counter+1... (6 Replies)
Discussion started by: Ccccc
6 Replies
6. UNIX for Advanced & Expert Users
Hi,
does anyone know the equivalent command of the following in AIX :
$ strace -tp 15033
Process 15033 attached - interrupt to quit
11:28:06 gettimeofday({1257766086, 104118}, NULL) = 0
11:28:06 getrusage(RUSAGE_SELF, {ru_utime={2270, 615813}, ru_stime={0, 634903}, ...}) = 0
Thank you (6 Replies)
Discussion started by: big123456
6 Replies
7. UNIX for Advanced & Expert Users
Hi All,
Good day, need some help on strace result. We're encountering oracle Database server connection slowness (using sqlplus login to db server, there have 1 or 2 secs delay) we had generated strace and provide to oracle to investigate, and they told us it look like OS problem (Our OS is Red... (4 Replies)
Discussion started by: klng
4 Replies
8. Android
I need to run and monitor applications on Android Emulator. I am using the strace utility to monitor system calls. Everytime to start strace i need to manually start the application , get the process Id of the application and then give it to strace to start logging all the system calls.
So is... (20 Replies)
Discussion started by: far001han
20 Replies
9. Ubuntu
I want to run the strace -p xxxx -o in a script to monitor a process that hangs sometimes and requires a restart, my question is if strace is constantly running in the background will it chew up system resources and cause the system slowness? (3 Replies)
Discussion started by: wereyou
3 Replies
10. Red Hat
I have requirement for strace utility rpm package for RHEL 5.9. I have made a google for last 1 hr. but did not find the required one. Can any one help me out to find out the compatible rpm package of strace for Redhat 5.9 version (I require 64 bit version). (7 Replies)
Discussion started by: Anjan Ganguly
7 Replies
LEARN ABOUT HPUX
rbacdbchk
rbacdbchk(1M) rbacdbchk(1M)
NAME
rbacdbchk - Verifies the syntax of the Role-Based Access Control (RBAC) database files
SYNOPSIS
DESCRIPTION
verifies that there are no conflicting or inconsistent entries in and amongst the RBAC database files. also checks the syntax of the data-
base files and prints messages indicating which lines contain errors. returns zero output if no errors are present in the database files.
All the RBAC database files and are verified. See rbac(5) for more information on these RBAC database files.
Options
supports the following options:
Checks the
database.
Checks the
database.
Checks the
database.
Checks the
database.
Checks the
database.
Cross reference checks all databases.
EXTERNAL INFLUENCES
Environment Variables
determines the language in which messages are displayed.
International Code Set Support
Single-byte character code set is supported.
RETURN VALUE
0. Success
1. Incorrect syntax
EXAMPLES
The following example finds an error that user is an invalid user
# rbacdbchk
[/etc/rbac/user_role] John: Administrator
invalid user
The value 'John' for the Username field is bad.
The following example finds a syntax error, an extra colon at the end of a line:
# rbacdbchk
[/etc/rbac/user_role] root: Administrator:
invalid name: Not alphanumeric
The value 'Administrator:' for the Rolename field is bad.
[Role in role_auth DB with no assigned user in user_role DB]
Administrator:(hpux.*, *)
The following example finds a field missing:
# rbacdbchk
[/etc/rbac/roles] : my comment
invalid name: <empty>
The value '' for the Rolename field is bad.
The following example finds a bad role:
# rbacdbchk
[Role in role_auth DB with no assigned user in user_role DB]
blah:(hpux.*, *)
[Invalid Role in role_auth DB. Role 'blah' does not exist in the roles DB]
blah:(hpux.*, *)
The following example finds a bad group name:
# rbacdbchk
[/etc/rbac/user_role] &blah: Administrator
invalid group
The value 'blah' for the Group name field is bad.
FILES
Database containing valid definitions of all roles.
Database containing definitions of all valid authorizations.
Database specifying the roles for each specified user.
Database that defines the authorizations for each role.
Database containing the authorization to execute specified commands,
and the privileges to alter uid and gid for command execution.
Database that defines the role-to-authorization to audit
SEE ALSO
authadm(1M), cmdprivadm(1M), privrun(1M), rbac(5).
rbacdbchk(1M)