Questions tagged [eval]
The eval tag has no usage guidance.
77
questions
1
vote
0
answers
18
views
While Loop Exits After Calling Function [duplicate]
I'm trying to do a db backup script using Bash.
When adding a "Resume" feature to the script, I do the following loop calling defined functions to do step by step (depending on the .lock ...
0
votes
2
answers
94
views
Confusing results of eval + sed combination [closed]
I run a game from steam which starts with the game companies launcher app where I have to click another button to start the actual game.
The game launcher is very slow, contains needless advertising, ...
0
votes
2
answers
307
views
eval: $? vs ${PIPESTATUS[@]} (bash)
In bash 5.0, I wish to capture the ${PIPESTATUS[@]} of a piped command that is executed via eval. However, eval appears to mask ${PIPESTATUS[@]}, but doesn't mask $? which is the equivalent to ${...
0
votes
1
answer
650
views
Sanitize input that is used to update script
Looking at a bash-script that takes input from Git commit comment to update itself. Simplified:
script:
#!/bin/bash
comment=''
printf '%s\n' "$comment"
upgrade_script() {
# ...
0
votes
1
answer
59
views
Shell script: Using variables makes command fails ( substituting values of variables manually ; command works fine )
In a bash script:
jenkins_folder=`cut -d "|" -f1 -s input.csv`
jenkins_url='https://url.com:8181/jenkins/view/'
echo "jenkins_folder : ${jenkins_folder}"
for job in ...
3
votes
4
answers
609
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
840
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
95
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
349
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
282
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
341
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 "$...
1
vote
1
answer
90
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
902
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
69
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
215
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
72
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
votes
2
answers
14k
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
92
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
129
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
1k
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
302
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. ...
16
votes
10
answers
5k
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
353
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
236
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
1k
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
3k
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
832
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
...
3
votes
2
answers
4k
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
799
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
70
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
210
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 ...
11
votes
2
answers
852
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
427
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
62
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
141
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
4k
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
6k
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
5k
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
173
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
3k
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
802
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
645
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
2k
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 ...
3
votes
2
answers
6k
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
328
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/...