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