Questions tagged [eval]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
-2 votes
0 answers
71 views

eval a string which is the pathname of an executable file: "No such file or directory"

I am trying to run the community edition of SonarQube downloaded from https://www.sonarqube.org/downloads/. When I extract the downloaded zip file, I step inside $ cd sonarqube-9.4.0.54424/bin/linux-...
user avatar
  • 90.8k
0 votes
2 answers
57 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 ...
user avatar
0 votes
1 answer
52 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/...
user avatar
  • 481
0 votes
1 answer
49 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 ...
user avatar
  • 2,225
-1 votes
2 answers
2k 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 "$@...
user avatar
  • 53
0 votes
1 answer
51 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/...
user avatar
0 votes
2 answers
20 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 ...
user avatar
2 votes
1 answer
149 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 ...
user avatar
1 vote
1 answer
104 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. ...
user avatar
  • 367
15 votes
10 answers
2k 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, ...
user avatar
3 votes
1 answer
88 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 ...
user avatar
0 votes
1 answer
31 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 ...
user avatar
  • 1
0 votes
2 answers
496 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'...
user avatar
  • 65
4 votes
1 answer
1k 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 ...
user avatar
  • 167
0 votes
1 answer
313 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
1k 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 ...
user avatar
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?
user avatar
0 votes
1 answer
221 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 ...
user avatar
0 votes
0 answers
55 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 ...
user avatar
2 votes
2 answers
156 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 ...
user avatar
  • 191
12 votes
2 answers
644 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. ...
user avatar
  • 272k
2 votes
1 answer
1k 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 ...
user avatar
0 votes
1 answer
301 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 ...
user avatar
  • 53
1 vote
1 answer
55 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 ...
user avatar
  • 2,105
0 votes
1 answer
61 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-...
user avatar
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 ...
user avatar
  • 21
1 vote
1 answer
3k 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 ...
user avatar
  • 133
0 votes
2 answers
1k 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 ...
user avatar
  • 441
5 votes
1 answer
3k 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 ...
user avatar
  • 697
-3 votes
2 answers
140 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 ...
user avatar
  • 2,294
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 ...
user avatar
  • 123
2 votes
2 answers
504 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 ...
user avatar
  • 415
1 vote
1 answer
2k 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 ...
user avatar
1 vote
1 answer
414 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}? $@? (...
user avatar
  • 1,305
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 ...
user avatar
  • 90.8k
2 votes
2 answers
3k 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 ...
user avatar
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?
user avatar
-3 votes
1 answer
224 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/...
user avatar
1 vote
2 answers
154 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 ...
user avatar
  • 2,637
2 votes
3 answers
209 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 ...
user avatar
2 votes
1 answer
3k 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 ...
user avatar
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 '...
user avatar
5 votes
2 answers
6k 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 $...
user avatar
  • 309
10 votes
2 answers
23k views

return value from eval

The bash manual states: eval [arg ...] The args are read and concatenated together into a single com- mand. This command is then read and executed by the shell, and ...
user avatar
  • 871
6 votes
4 answers
49k views

bash + read variables & values from file by bash script

I have the following file variable and values # more file.txt export worker01="sdg sdh sdi sdj sdk" export worker02="sdg sdh sdi sdj sdm" export worker03="sdg sdh sdi sdj sdf" I perform source in ...
user avatar
  • 11.1k
1 vote
2 answers
793 views

eval not evaluating echo? [duplicate]

I'm trying to write something that stores an API access token in a bash variable, so I'm modelling it on ssh-agent, where you use eval. ssh-agent If you run ssh-agent by itself, it outputs something ...
user avatar
18 votes
4 answers
46k views

How can I list all user names and/or home directories?

I want to list all the users dirs on the machine.Usually, I will do: ls -l /home But I use it in a script that will be deployed on others machines and maybe on that machines they don't call it home (...
user avatar
  • 335
1 vote
1 answer
711 views

how to evaluate an dynamically generated if elif else statement in shell

im having trouble getting a dynamically generated shell function to evaluate properly (by evaluate i mean "eval" command) this is the desired statement to be evaluated when ran (except the output ...
user avatar
8 votes
3 answers
5k views

Bash: Why is eval and shift used in a script that parses command line arguments?

As I was looking this answer https://stackoverflow.com/a/11065196/4706711 in order to figure out on how to use parameters like --something or -s some questions rised regarding the answer's script : #!...
user avatar
0 votes
1 answer
55 views

Evaluate part of a text line

I have an expression of the form @(<date calculation>) that I want to replace with the result of date +%s --date "now<date calculation>". So for example @(-1 day) would be replaced with ...
user avatar
  • 381