Questions tagged [eval]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
3 votes
4 answers
208 views

awk or perl to eval mathematical expressions in each line

I want a script to make awk to become an interactive mathematical calculator, to eval mathematical expressions given in each line. I.e., instead of constructing awk commands to calculate expressions ...
  • 977
1 vote
1 answer
151 views

Command output evaluation not working in Bash script [duplicate]

I am trying to automate adding Homebrew to my path in a shell script, but these two lines do not evaluate inside my shell script: #!/bin/sh eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)&...
-1 votes
1 answer
76 views

use a variable as a variable

I'd like to use a variable variablenaam for using in a loop. I tried for hours but can't make it work. My experiment in bash on a RPi 4 with the latest Raspbian. I like to make the use of xstack1 and ...
  • 5
0 votes
1 answer
85 views

Declare variable in eval Bash

There is a way to declare variable in eval ? For example function test { eval $1 } test " value="foo" echo "$value" " But it display nothing. ...
0 votes
0 answers
88 views

How does one store the evaluation of a big string with multiple env variables $VAR into another env variable?

Becuase I need to make sure I run authentication for my nohup commands I need the real command I want to run to be in a string in here: nohup sh -c 'echo $SU_PASSWORD | /afs/cs/software/bin/reauth; ...
0 votes
2 answers
123 views

Bash: how to wrap a command to measure its elapsed time?

How to wrap a command to measure its elapsed time? Currently I do it using eval: do_cmd_named() { local name=$1 local cmd=$2 echo "$name" local start_time=$(date +%s) eval "$...
  • 457
0 votes
1 answer
31 views

Bash - How to make dynamic menu selection without eval

I'm making a script for Docker environments, and I'm a bit stuck with a pigeonhole I've gotten myself into. #!/bin/bash set -euo pipefail # Variables gituser="modem7" gitrepo="docker-...
  • 1
0 votes
1 answer
127 views

Using `env` command with `eval`

Suppose I have this in script.sh: env -i SOMEVAR=SOMEVALUE eval -- "$@" I run it with: ./script.sh echo "\$SOMEVAR" Now it shows: env: ‘eval’: No such file or directory I ...
  • 35
0 votes
2 answers
63 views

get value of variable which is prefixed by another variable in bash

I'm running offlineimap on a bunch of accounts and want to check the exit code of each run and perform some actions accordingly. I have 6 separate email accounts that I run against with a lot of code ...
0 votes
1 answer
134 views

Iterating through a command list using heredoc

This works fine: $ eval 'echo "1" > ~/Desktop/in/foo' But not this: $ while IFS= read _cmd; do eval "$_cmd"; done < <(cat << EOF 'echo "1" > ~/Desktop/...
  • 561
0 votes
1 answer
58 views

Difference between eval execution of a command and assigning the result of the command execution to a variable

In the following script #!/bin/sh CMD="ls -al" Z=`$CMD` echo $Z echo "-----" eval $CMD what is the practical difference of the invocation of ls -al via $CMD and eval and why ...
  • 2,433
0 votes
2 answers
6k views

Handling long-options with getopts

I am parsing options with getopts but would like to handle long-options as well. print-args () { title="$1" ; shift printf "\n%s\n" "${title}: \$@:" for arg in "$@...
  • 55
0 votes
1 answer
70 views

Why doesn't `eval` work in this code?

I wrote the following code which is meant to create a file with a list of low-resolution media files: #!/usr/bin/bash find "$PWD" -type f -iname "*.avi" -execdir ~/CS/...
0 votes
2 answers
38 views

How to run eval with lockf command?

I have a command which I run via eval as shown below. #! /bin/sh readonly scr="MYENV=1 sh /tmp/scr.sh" eval ${scr} -a 1 -b 2 Now I want to run the scr script with lockf utility, so I made ...
2 votes
1 answer
470 views

Evaluate multi-line output (with comments) of another command. (pip-completion)

In trying to make my .zshrc neater, I stumbled over the following problem/question: "How can I run the output of another command?". While I'm sure this is a simple problem, I just don't ...
1 vote
1 answer
169 views

Security implications of executing strings using eval in bash

Consider the following: $ a='friend' $ b='printf "%s\n" "$a"' $ eval "$b" friend This should be completely safe. Let's however say that $b is the same but $a is unknown. ...
  • 389
15 votes
10 answers
3k views

What are some useful use-cases for eval in Shell?

You hear it a lot eval is evil, whether it's in Shell/POSIX world, or in other langs like python etc... But I'm wondering, is it actually useless? or is it there some arcane, non-documented, ...
3 votes
1 answer
159 views

Why does substituting eval with declare (for creating dynamic variables) result in an empty variable?

With bash >5, I'm trying to assign a different value to variables depending on the architecture specified in a variable. I use a function to do so. This works perfectly: # arguments: variable ...
0 votes
1 answer
156 views

Script using data/input which contains variable names [duplicate]

So I have a file "Directories.dat" that contains a list of directories for a script to read that runs on multiple machines. Due to this, the list of directories in the file is often defined ...
  • 1
0 votes
2 answers
800 views

eval variable=command in the background

I have the following code for name in a b c d; do for i in {01..12}; do eval test_${name}_{i}=`some command` done done I am trying to do the assignments in the background but it doesn'...
  • 87
4 votes
1 answer
2k views

How to conditionally redirect the output to files based on variable in bash

I'm trying to use eval command to eval a comment -- I'm not sure if this is the right way to do it. Example: i=?? (What I want here is either a #, to comment what's after, or blank) somecommand arg1 ...
  • 377
0 votes
1 answer
496 views

How to export lines from other file into current shell

I have this content in a file called foo.env: foo=bar and then I want to read that file and export the lines to the shell: for line in $(cat ./foo.env); do eval export $line done but when I run ...
user avatar
2 votes
2 answers
2k views

How can I write an `eval` command containing a new line into one line?

Since I need to set and use alias in the same line in bash, I would like to use Hauke Laging's workaround: eval 'alias df5=df df5 -h' (I took df and df5 for the sake of the example. I am aware that ...
0 votes
0 answers
18 views

Why running eval from cli works, but running script with eval inside it, it doesn't? [duplicate]

Why when I run eval $(keychain --quiet ~/.ssh/id_rsa) from cli it works, but if I try to do same from the script it doesn't work and $SSH_AUTH variables are not present?
-1 votes
1 answer
381 views

Generating content stored under a dynamic variable in Shell Script

I am stuck with the below code and any help would be greatly appreciated: I am trying to assign contents inside a dynamically generated variable to another variable. But instead of the value of the ...
0 votes
0 answers
61 views

Can I avoid using eval in alias re-definition?

My system: Linux Mint 19.3. My default shell: Bash. Problem: I do not like using eval (man page) if unnecessary. Question: Is there another way of redefining stored alias, which I currently do as ...
2 votes
2 answers
180 views

building an alias from a function

I need a lot of different aliases to create ssh tunnels to different servers. To give you a few of them: alias tunnel_1='autossh -M 20000 -N -L 8080:localhost:8080 -N -L 9200:localhost:9200 -N -L ...
  • 191
12 votes
2 answers
718 views

Behaviour of "eval" under "set -e" in conditional expression

Consider the commands eval false || echo ok echo also ok Ordinarily, we'd expect this to execute the false utility and, since the exit status is non-zero, to then execute echo ok and echo also ok. ...
  • 311k
2 votes
1 answer
2k views

How to execute something in current shell [duplicate]

I want to create a bash script or something similar that I can execute in the current shell: echo '#!/bin/bash export foo="bar" ' > zoom.sh but if I want to run this script in the current ...
0 votes
1 answer
352 views

Weird behavior of su command

Everytime I run su command on this box, I constantly see the weird messages below. Switching user do eventually continue, but why are these messages showing? <Server>:~ # su - -bash: eval: line ...
  • 73
1 vote
1 answer
57 views

Why does this bash idiom require eval?

Why does this produces _results=""... _results="$( grep ${_gopts[@]} )" And this produces the desired _results (list of SSHFS entries in fstab)... _results="$( eval grep ${_gopts[@]} )" The _gopts ...
  • 2,125
0 votes
1 answer
112 views

How to check "eval" command?

My code docker-machine create --driver virtualbox dev VBoxManage list vms "minikube" {9c326ed5-faf4-42fe-acda-bf3a283f1a74} "kalinew" {de6de631-0d51-4638-b967-66db463cbf05} "dev" {84a116bf-02b9-...
2 votes
3 answers
3k views

Get return code of first piped command using eval?

I wish to execute different commands and check the return code afterwards before moving to the next steps in the script. At the same time I also wish to log the output of the executed commands to a ...
  • 21
1 vote
1 answer
4k views

Trying to export a path from inside a bash script [duplicate]

I am trying to put my whole environment set up into a single bash file. I am only hitting one issue. When I try to export a new path from inside the file it is not setting the path in the environment ...
  • 133
0 votes
2 answers
2k views

eval ssh command in variable

I am trying to execute commands via ssh remotely. But I have the calling command saved as variable such as: SSH_CMD="ssh -i path_to/identity" SSH_USER=user SSH_DST=server dir1=dir1 dir2=dir2 now if ...
  • 481
5 votes
1 answer
4k views

File with parentheses/brackets in working directory causes eval error

I encountered a strange bug today, when running a script in a directory containing a directory with parentheses in it, such as a(). Minimal working example I managed to reduce the bug to the ...
  • 757
-3 votes
2 answers
156 views

Loop through filenames without eval [closed]

In a shell script, if we want to loop over certain filenames, which we would get by shell globbing, as for example all MKV-files in all sub-directories starting with string "Example" – how can we do ...
  • 2,464
1 vote
2 answers
2k views

Eval and exec with variable substitution

I'd like to execute a statement to start a server. For that I have an environment variable to determine which server is to be started. I was given this command as a starting point: eval "exec ...
  • 123
2 votes
2 answers
589 views

Bash: How to kill eval if the process that receives its output terminates

I have a little ugly bash script on my Ubuntu machine that contains the lines: search_command="find -L $(printf "%q" "$search_folder") \( ! -regex '.*/\..*/..*' \) -mindepth 1 2> /dev/null" for i ...
  • 425
1 vote
1 answer
3k views

dollar sign inside eval string in bash

I have hundreds of sub-directories which contain a dollar sign (i.e., $) as the 1st character in their names, each of which needs to be visited. These sub-directories can not be renamed. The bash ...
1 vote
1 answer
522 views

zsh: A prefix function that runs the rest of the line with no alias expansion

I am thinking of: function noalias() { setopt localoptions noexpandalias "$@" } But I don't know what the last line should be. eval "${*:q}"? eval "$@"? eval "${@:q}"? "${@:q}"? ${@:q}? $@? (...
  • 1,413
2 votes
2 answers
1k views

Does `eval` apply the shell to the redirection part of the following command?

When use eval on a command, does eval apply the shell twice to the redirection part of the command? Suppose the filename in the redirection contains a whitespace, if eval applies all the steps of ...
  • 95.8k
2 votes
2 answers
4k views

Why is eval not working with command substitution? [closed]

I have this command $("${DIR}/test.py" "$1") the output of which is export SOME_VAR="hello world" export ANOTHER_VAR="hello" But eval $("${DIR}/test.py" "$1") seems to do nothing. What am I ...
6 votes
1 answer
3k views

eval vs. pipe through bash

What is the difference between using: eval 'echo "foo"' and echo 'echo "foo"' | bash is there any?
-3 votes
1 answer
277 views

Eval not working

i try run this code to get random number but eval seems not working this is my code #!/bin/bash # Sequencia alfanumerica de 12 carateres aleatoriamente (maiusculas e minusculas) file="/home/...
1 vote
2 answers
175 views

cksum files using substituted variable string as a pattern

Can I avoid eval in the below example or is there no other way? The list of files on variable is dynamic, and I want to cksum all of them. There are many other files in the directory, but they should ...
  • 3,281
2 votes
3 answers
228 views

Get contents of passing string from a script

I would like to get, in the output, the content of KW0_TEXT and KW1_TEXT from the "for" of this script: #!/bin/sh STRS=" KW0 KW1 " KW0_TEXT="text text text" KW1_TEXT="text text text text" for str ...
2 votes
1 answer
4k views

Will "dircolors" work here instead of " eval `"dircolors`"` "?

I was checking .bashrc to set colors for ls comand and found this export SHELL='/bin/bash' export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS' Will there be any problem ...
0 votes
3 answers
1k views

diff two files from a command output [closed]

I have a bunch of xml file in the current directory. Problem 1. As far as I have read eval returns the results and stores it in a variable. But I get an error with the below command find ./ -name '...
5 votes
2 answers
7k views

Why is using eval necessary to pass quoted arguments

I have the following example. #!/bin/bash ARGUMENTS="-executors 1 -description \"The Host\" " # call1 # error: parameter Host" is not allowed java -jar swarm-client.jar $...
  • 309