Csh variable calling problem

Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Csh variable calling problem
# 1  
Old 03-06-2013
Csh variable calling problem

First post on here. So I use csh shells for my research (physics... not a CS person). I am trying to rerun the same scripts, but there are ~10 files that have similar variables that I have to change for each different configuration, so I would like one central file for the variables I change that get used in the various csh files.

Basically what I have been trying to do by scouring the internet but have had no success is to have a document with values:
('0.645 0.645 0.645' '0.011 0.011 0.011' '0.011 0.011 0.055' '0.011 0.055 0.055'  '0.055 0.055 0.055')
(645 011 011m 055m 055)

and then be able to call them in different csh files as if I had just done
set mass = ('0.645 0.645 0.645' '0.011 0.011 0.011' '0.011 0.011 0.055' '0.011 0.055 0.055'  '0.055 0.055 0.055'), but instead from the file (call it specs)

, where I could then reference it later as $mass[$1] for 0.645 0.645 0.645.

I have tried to do
mass=$(awk 'NR==$1' specs)

, but I keep getting 'invalid variable' when I run the csh script.
# 2  
Old 03-06-2013
Do you absolutely have to use csh? It makes everything harder.
# 3  
Old 03-06-2013
I would like to stay with it because I have large programs written. I knew someone would bring this up, next project I start ill change to something more modern.
# 4  
Old 03-06-2013
You are already trying to use bourne shell! $() is bourne syntax. You only get to use `` in csh.

csh can't do the kind of doublethink where you put a csh statement in a variable then execute it, either. sh can, but you have to force it, since it's very seldom a good idea to do so.

This will get them in an array where each number is its own index:

set VAR = ( `tr -d ",()'" < infile` )

...which you can then process with a loop to get the numbers three to an index like you want.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Calling a variable of variable from a file

Hi All, I have file which have looks like below abc=${def} def=${efg} efg= "this is the actual value" based on "abc" value I have to call "efg" value , Am using below lines but it is not working #!/bin/bash source file.txt echo $abc Please wrap all code, files, input &... (5 Replies)
Discussion started by: Prashanth.K
5 Replies

2. Shell Programming and Scripting

Calling a Variable based on a Variable

Hi all, I have a source config file with variables like so: eth1_ip= eth2_ip= eth3_ip= I am trying to run a script which loops based on the number of eth interfaces on a machine and therefore modifies the variable it calls in the environment based on the... (5 Replies)
Discussion started by: landossa
5 Replies

3. Shell Programming and Scripting

How to check existence of variable in csh

Hi All, I want to check existence of variable, whose name gets decided dynamically. E.g. value of this variable,is derived as $option_"exclude" , where value of option varies depending upon user input. I am trying to do it in a following way : set exclude_var = `echo $option"_exclude"`... (3 Replies)
Discussion started by: Rashmee
3 Replies

4. Shell Programming and Scripting

csh and variable values with spaces

my working shell is csh and even though if I try to run my script in plain sh, it behaves the same way. Here's a simple script: #!/bin/sh desc='"test my changes"' cmd="echo \"$desc\"" $cmd I want $desc to be passed as an argument to another command, but csh apparently doesn't like spaces in... (5 Replies)
Discussion started by: iskatel
5 Replies

5. Shell Programming and Scripting

Calling awk fom csh

I have to call two awk scripts where the second one used the output from the first one. Am wondering if it may happen that the second awk might start before the first awk finished creating the file... if ($nAnomaly == 1) then awk -v anomaly=$Anom -v zloc="$zmin/$zmax" -v dz=$dz \ ... (1 Reply)
Discussion started by: kristinu
1 Replies

6. Shell Programming and Scripting

Calling awk from csh

I am trying to call awk from a csh script using awk '{print $1, -$2, $3}' $fvmod.vel > $fvmod.xzv and getting awk: Command not found. Running awk '{print $1, -$2, $3}' $fvmod.vel > $fvmod.xzv on the command line with the actual filenames works (2 Replies)
Discussion started by: kristinu
2 Replies

7. Shell Programming and Scripting

Reading a variable in csh

I have a simple script that sets a value and reads the value in csh: set -x set a = 10 echo $a The output of the script does not show the value of a + set a = 10 + echo any help would be great. (4 Replies)
Discussion started by: pt14
4 Replies

8. Shell Programming and Scripting

help with multiline variable in csh

My shell is csh and it is required. I have a file like sample.txt ------------------------ a b c d e f g h i ------------------------ I want set the file to a variable and print it out in the same format. I have tried something like this, but not succed. % cat ~/tmp/sample.txt a b c d... (8 Replies)
Discussion started by: anykao
8 Replies

9. Shell Programming and Scripting

calling csh script from ksh shell

hi, I have a csh script, which has setenv X xyz etc My shell is korn Is there some way I can "source" this to have the variables in my current korn shell? thanks (3 Replies)
Discussion started by: JamesByars
3 Replies

10. Shell Programming and Scripting

Calling C from within a csh script

After I compile a C program, when I run it from a C shell script, it does not print out the results. e.g: myCFile.c: main(){printf("Hey");} myCshScript: myCFile This does not output "Hey" to the terminal window. I am not even sure if it is executed or not. What should I do to see the... (2 Replies)
Discussion started by: barisgultekin
2 Replies
Login or Register to Ask a Question

Featured Tech Videos