Linked Questions

3
votes
1answer
3k views

Is `echo $TEST` expanding an asterisk in the variable a bug? [duplicate]

Is this a Bash bug? $ mkdir test && cd test && echo "a" > "some.file" test$ echo '*' * test$ TEST=$(echo '*') test$ echo $TEST some.file Why is the second output the resolution of ...
2
votes
2answers
3k views

Why do we double-quote a dollar sign evaluation in Bash? [duplicate]

I know single quotes will not evaluate what's inside, and double quotes will. I often see people quote-quote the dollar sign evaluation. Here are some examples: for i in "${indices[@]}"; do if [ "${a}...
6
votes
2answers
240 views

Do I need to quote command substitutions when assigning their output to a variable? [duplicate]

I tend to quote command substitutions as shown below even when assigning their output to a variable: var="$(command)" Is that actually needed though? When does it break? The accepted answer ...
3
votes
3answers
421 views

Enclosing vs. not enclosing a variable's value in quotes in bash [duplicate]

When I do something like this: x="hi echo hello" or x='hi echo hello' Then x will contain the string hi echo hello. But when I don't use quotes: x=hi echo hello Then x will contain the string ...
1
vote
3answers
416 views

Shell: only double quote on test -n/-z? [duplicate]

In case of test -e for example: VAR="<this is a file path: /path/to/file/or/dir" test -e $VAR && do_something || do_anotherthing Question: Should I use "$VAR" here?, here I don't like ...
1
vote
1answer
650 views

How can bash aliases be configured to handle spaces in directory names? [duplicate]

The alias below works well in zsh when spaces in directory names are \ escaped, but bash doesn't handle them properly. What changes would be required to make them work with bash properly. dum() { ...
1
vote
1answer
419 views

How to output comma separated values using IFS=“,” in shell [duplicate]

I have a small script, which does not give comma separated output when IFS is used, but IFS is mandatory as i need it to read many other value. The output of the below script is odi_server1 ...
0
votes
1answer
337 views

Bash whois script calling local information with *? [duplicate]

I'm getting a very strange output from a script. Here is the line run in the terminal by itself: root@KaliTestBox:~/Desktop/dns1# echo $(whois 13.66.39.88 |head -n 40 |tail -n 28 |tr '\n' ' ') But ...
3
votes
3answers
172 views

What situations exist where Bash variables should not be double quoted? [duplicate]

I'm aware of several situations where it's unnecessary to use double quotes when expanding a variable in Bash, such as inside [[...]], or when used on the right hand side of a variable assignment. ...
0
votes
1answer
346 views

How to escape echo? [duplicate]

Edit: I realized that this has nothing to do with $() it's just the result of using echo *. So I just need a way to escape with echo. I'm writing a script that checks what users don't have passwords ...
0
votes
0answers
231 views

How can I safely pass an argument containing '{{}}' to a bash script? [duplicate]

The following arguments are valid for docker command: docker ps -f"status=exited" --format 'table {{.Names}}' #output: # jovial_hellman # modest_blackwell So I have created this script docker-ps-...
1
vote
1answer
75 views

Prevent quote expansion in user-made function [duplicate]

I have the following bash function : tg() { git add -A && git commit -m $1 && git push } But it seems not to work : $ tg "create index for users" error: pathspec 'index' did not ...
0
votes
1answer
51 views

How to copy a file to a path with a space in it in Bash Script? [duplicate]

Sample script to copy /tmp/template.txt file to any directory as specified in $1. copy_script.sh if [ $# -eq 0 ]; then echo No Argument echo "Usage: $0 <path>" else cp /tmp/...
-5
votes
1answer
48 views

Why is unquoted $PATH containing whitespaces safe in an assignment? [duplicate]

What does the following from https://unix.stackexchange.com/a/154290/674 mean? In general, in shells other than zsh, $PATH outside double quotes breaks when the value contains spaces or other ...
0
votes
1answer
33 views

Print awk function out to new line everytime [duplicate]

part of my code is as below : output=$(cat databaselog | awk '{print $9,$1,$2,$6}' ) echo $output >> savedfile Output will be something like this , saved in a new file called savedfile name1 ...

15 30 50 per page
1
2 3 4 5
15