csh -f and the at command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting csh -f and the at command
# 1  
Old 11-11-2005
csh -f and the at command

Hi everyone.
I am new to the forums and new to Unix, so please pardon my beginner "status".

In my company, we have a few C shell scripts, which we call BAT files (!). They all start with the usual "#/bin/csh" line to get it to run the .cshrc script which preloads the session with a lot of environment variables.

At the end of the login script, we call another script which runs a menu system and effectively calls a system which was written in house (written in Powerhouse).

When our powerhouse system submits a script using the 'at' command, we've noticed it fires up the user's .cshrc script which is then trying to fire up the menu.

Is there a way (and we've tried using '-f' without knowing why!!), to submit scripts with the 'at' command, where it can tell the .cshrc script NOT to submit the call to run the menu system?

In VMS (oooh... yes I am an original VAX VMS man), I know from past experience that you can tell the login scripts (login.com) to trap if the login script was executed "interactively" or in "batch". If it was in "batch" it would skip calls to interactive menu commands and calls to force the users to run a menu!

With Unix, we are not able to achieve this. Is there an system environment variable that can say whether the login session was executed at the terminal or via an 'at' command?

Thanks in advance...

-sp-
# 2  
Old 11-11-2005
First off, please use the man pages - they aren't as easy to move around in as VMS help pages, but still have plenty of info (ex-VAX/VMS system manager too).

Make sure you are using #!/bin/csh versus #/bin/csh (which is what you posted).


csh -f This is to do a fast start - it is suppose to read neither the .cshrc file, nor the .login file (if a login shell) upon startup. So this SHOULD work for you.

In the man page for csh you should find the following:
prompt The string an interactive C shell prompts with. Noninteractive shells leave the prompt variable unset. Aliases and other commands in the .cshrc file that are only useful interactively, can be placed after the following test
`if ($?prompt == 0) exit` to reduce startup time for noninteractive shells.

Read the man page csh for more info. Then post back any questions.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

If command in csh

hi everyone what is difference between "if ( -e Arch )" and "if ( -e ./Arch )" in csh shell? Many Thanks samad (1 Reply)
Discussion started by: abdossamad2003
1 Replies

2. UNIX for Beginners Questions & Answers

About echo command in csh

hi linux expert I want to print the following lines ( or similar) with the echo command in csh script. how to do it when the number of lines is high and the use of the \ symbol for each line is difficult? Thanks in advance samad 000 'iexpt ' = experiment number x10 (000=from... (4 Replies)
Discussion started by: abdossamad2003
4 Replies

3. Shell Programming and Scripting

Help on command line argument in csh

HI , I am new to csh. I need to pass some command line arguments like ./abc.sh -os Linux -path abc -tl aa -PILX 1 I have defined the loop as shown below. But its taking "-os" switches as arguments. Its treating them as arguments. How to resolve it? while ( $#argv != 0 ) switch ($argv) ... (7 Replies)
Discussion started by: vineet.dhingra
7 Replies

4. Shell Programming and Scripting

trouble executing a command in csh

Hi All!! I am having trouble in executing the following command into a c-shell script. mv "$file" "$(head -1 "$file")" The funny thing is that the same command works perfectly from the command line, but when incorporated into a "foreach loop" of a c-shell script, it shows an error -... (1 Reply)
Discussion started by: chen.xiao.po
1 Replies

5. Shell Programming and Scripting

AIX : Need help with <join> command in csh

Hi All, I need your hand to resolve an issue I am facing with a join command in one of the script. Please see the 3 files attached where file1 and file2 are the two files I am passing to the join command written in the command file. Prior to calling the join I am also sorting both the files on... (6 Replies)
Discussion started by: sraj142
6 Replies

6. UNIX for Dummies Questions & Answers

csh command not found

I get a "command not found" error when I run the csh command. I also get this error when I start a new session since my default shell is c shell. Any pointers as to what is going on? I am trying to set some paths using the .cshrc file and need to use the csh command for this. Thanks. (1 Reply)
Discussion started by: kannyg
1 Replies

7. UNIX for Dummies Questions & Answers

Sed command over multiple lines in csh??

hi i have a long sed command in a csh script that won't fit on 1 line. how do i break it up correctly over multiple lines? this doesn't seem to work in csh: sed -e s/template/$IP.$NN/ \ -e s/NRG/6/ \ -e s/inputf/$IS.$NN/ \ -e s/SHIFT/10.0/ <template.egsinp > $IP.$NN.inp i get: sed:... (1 Reply)
Discussion started by: tuathan
1 Replies

8. Shell Programming and Scripting

how to execute a sh command from a csh script

Hi everyone, I have a csh script that works fine but the output of an rsh command is different if I use boune shell instead cshell. Is there the possibility to execute only this command in bourne shell from a script declared cshell? Thanks Christian (2 Replies)
Discussion started by: bonovox
2 Replies

9. Shell Programming and Scripting

Is there any thing like this perl command is csh?

I mean this : perl -pi -e 's/OS/blah/g' *.c* The Great thing in such thing i dont need to rename orig then rename back when i do it with sed for instance inside csh shell , is there any way to avoid this with sed/awk/what ever? Thanks (4 Replies)
Discussion started by: umen
4 Replies

10. UNIX for Dummies Questions & Answers

csh and the set command

Hi, I am trying to write a csh script that will run another csh script, but redirect the output from the second script to an email. my code looks like this. #!/bin/csh ## This script is designed to run the SSM.sh ## then email the output to a specified email address ## it will also display... (2 Replies)
Discussion started by: jagannatha
2 Replies
Login or Register to Ask a Question