Questions tagged [eval]
The eval tag has no usage guidance.
65
questions
-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-...
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 ...
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/...
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 ...
-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 "$@...
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/...
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 ...
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 ...
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. ...
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, ...
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 ...
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 ...
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'...
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 ...
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
...
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 ...
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?
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 ...
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 ...
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 ...
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.
...
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 ...
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 ...
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 ...
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-...
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 ...
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 ...
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 ...
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 ...
-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 ...
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 ...
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 ...
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 ...
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}? $@? (...
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 ...
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 ...
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
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/...
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 ...
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 ...
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 ...
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
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 $...
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
...
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 ...
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 ...
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 (...
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 ...
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 :
#!...
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 ...