Sponsored Content
Top Forums Shell Programming and Scripting AIX function example with "shift" command Post 302900101 by Kibou on Sunday 4th of May 2014 09:15:40 AM
Old 05-04-2014
AIX function example with "shift" command

Hello,

I am reading one of the AIX manuals about shell scripting and (AIX 5) and I found this example when introducing to functions:

Code:
function usage
{
  prog="$1"; shift
  print -u2 "$prog: usage: $prog $@"
  exit 1
}

This example is meant to be easy but I don't understand what it is for or what is trying to demonstrate.

The shift command is meant to pass to next argument.. but I don't see what is the purpose here (?)

Then it prints into the STDERR because it prints into file descriptor 2.. but what for?

So.. I am confused. This is probably a very simple thing but I am stuck since yesterday and I still don't figure it out.

Any hint will be appreciated.

Thanks.
 

10 More Discussions You Might Find Interesting

1. Programming

How to convert the "select" function into a "poll" function

i have a program using the select function but i want to convert it to poll... how can i do this? thanks in advance... :) (1 Reply)
Discussion started by: rbolante
1 Replies

2. Shell Programming and Scripting

Sending "Shift-F1" to a process

Hi, I need to find out the ASCII code for ALT-F1. The reason is that I'm using Expect to interact with an application and although I have the codes for keys such as 'Escape' (/033); F1 (\033\117\120) and ALT-F1 (\033\133\064\071\176) I have no idea where to find the code for Shift-F1. The... (2 Replies)
Discussion started by: pbritta
2 Replies

3. HP-UX

ERROR: more than one instance of overloaded function "vprintf" has "C" linkage

Hi people! I've got this own library: -------------------------------------------- Personal.h -------------------------------------------- #ifdef __cplusplus extern "C" { #endif #include <stdio.h> #include <stdarg.h> #include <string.h> ... (0 Replies)
Discussion started by: donatoll
0 Replies

4. UNIX for Dummies Questions & Answers

Alias, function or script (bash) to "revert" cd command?

In all of my brief and superficial experience with Unix or Linux, the one curious and consistent thing has been that 'cd ./' (back up one directory level) has done absolutely nothing in any of them. Now I understand that, at least for bash, 'cd ./' appears to have been substituted by 'cd ..' Am... (1 Reply)
Discussion started by: SilversleevesX
1 Replies

5. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

6. Shell Programming and Scripting

AIX's "bc" Command: Doing a Conditional Expression?

Hello All, I'm trying to issue a conditional expression using "bc" on floating point numbers. I had this working on my linux box, but as soon as I transferred the file over to an AIX Server, it would not work anymore... This is the "WORKING" command on linux (below), which I can't seem to... (8 Replies)
Discussion started by: mrm5102
8 Replies

7. UNIX for Advanced & Expert Users

AIX - io info get from "libperfstat" not match "iostat"

Hi, everyone. I need to write a program to get io info based on libperfstat. But the "write time" of a disk is just half of the value get from iostat. I'm confused and can't explain. Help please. How I calculate "write service time per sec": In iostat: write service... (0 Replies)
Discussion started by: jackliang
0 Replies

8. AIX

How to enable "TCP MD5 Signatures" and "https" on AIX?

I have searched many times but nothing found. Somebody help please :(:(:( (1 Reply)
Discussion started by: bobochacha29
1 Replies

9. Shell Programming and Scripting

How to express "shift+enter"?

Hi expert "enter" can be expressed by "\n" in python, how about "shift+enter"? Thanks (1 Reply)
Discussion started by: yanglei_fage
1 Replies

10. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address and column 3 contains “cc” e-mail address to include with same email. Sample input file, email.txt Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies
CC(1)							      General Commands Manual							     CC(1)

NAME
cc - C compiler SYNOPSIS
cc [-STOUfcimos] [-w[aos]] [-v[n]] [-Dname]* [-Idir]* [-Ldir]* file+ [-lname]* OPTIONS
-D The flag -Dx[=y] defines a macro x with (optional) value y -I -Idir searches dir for include files -L -Ldir searches dir for -lname libraries -O Optimize the code -S Produce an assembly code file, then stop -T The flag -Tdir tells cc and as to use dir for temporary files -U Undefine a macro -E Preprocess to standard output -c Compile only. Do not link -f Link with floating point emulation library -i Use separate I & D space (64K + 64K) ( only) -l The flag -lname causes the library libname.a to be linked -m Remove unnecessary prototypes after preprocessing ( only) -o Put output on file named by next arg -s Strip the symbol-table from executable file -v Verbose; print pass names -vn Verbose; print pass names but do not run them -w Suppress warning messages -ws Suppress strict messages -wa Suppress all warning and strict messages -wo Suppress messages about old-style -.o Do not link the default run-time start-off EXAMPLES
cc -c file.c # Compile file.c cc -DFOO file.c # Treat the symbol FOO as defined cc -wo -o out file.c # Compile old-style code; output to out DESCRIPTION
This is the C compiler. It has eight passes, as follows: Program Input Output Operation performed lib/ncpp prog.c prog.i C preprocessor: #include, #define, #ifdef lib/irrel prog.i prog.i Removal of unnecessary prototypes lib/ncem prog.i prog.k Parsing and semantic analysis lib/nopt prog.k prog.m Optimization of the intermediate code lib/ncg prog.m prog.s Code generation bin/as prog.s prog.o Assembly lib/ld prog.o prog.out Linking lib/cv prog.out a.outConversion to MINIX a.out format In the 68000 versions of MINIX , the preprocessor is not called since the front-end contains the preprocessor. This increases compilation speed. The main program, cc , forks appropriately to call the passes, transmitting flags and arguments. The -v flag causes the passes to be listed as they are called, and the -vn flag causes the passes to be listed but not called. The libraries should be made with aal (which is the same as ar on the 68000 versions), and consist of .o files. The internal order of files inside the library is unimportant, but the order in which the libraries are specified is. When -T is used, the intermediate files end up in the directory specified. Otherwise, /tmp is used. When available memory is very limited (e.g., a 512K machine), it may be necessary to run chmem to reduce the sizes of the compiler passes that do not fit, typically ncem . On the other hand, if the compiler (or, in fact, almost any program) begins acting strange, it is almost always due to its running out of space, either stack space or scratch file space. The relevant pass can be given more stack space using chmem . More space for scratch files can be obtained by removing other files on the device. If the compiler runs out of memory, it may be necessary to use the -m flag. This causes irrel to be run, which removes unnecessary proto- types and thus frees up extra table space within the compiler. Beware, however, that running this pass may cause strictly conforming pro- grams to become non-conforming and vice versa, so you should only run this pass as a last resort. The compiler is derived from the ACK system (Tanenbaum et al., Communications of the ACM, Sept. 1983), not from the AT&T portable C com- piler. It has been shoehorned onto the PC with some loss of performance. SEE ALSO
make(1). CC(1)
All times are GMT -4. The time now is 07:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy