Questions about bash only, as opposed to other Bourne/POSIX shells. For all Bourne/POSIX-style shells, use the /shell tag instead.

learn more… | top users | synonyms

3
votes
1answer
173 views

is there a way to get the url from current tab in google-chrome?

I used to do that on firefox using a python command, but recently something changed and I can't get the URL anymore! What used to work with firefox: #!/bin/bash current_tab_num () { python2 ...
2
votes
2answers
48 views

Is a sub-shell the same thing as a child-shell

There are this two names: a subshell and a child-shell. Yes, a child process will be started by any of this: sh -c 'echo "Hello"' ( echo "hello" ) echo "$(echo "hello") echo "hello" | cat Are all ...
0
votes
0answers
9 views

Filtering JSON request with JQ and bash scripting

I'm requesting a JSON from Twitch with: curl --silent -H 'Accept: application/vnd.twitchtv.v3+json' -X GET https://api.twitch.tv/kraken/streams/$1 where $1 is the input I send for my function. Now ...
35
votes
2answers
29k views

How to suspend and resume processes

In the bash terminal I can hit Control+Z to suspend any running process... then I can type fg to resume the process. Is it possible to suspend a process if I only have it's PID? And if so, what ...
0
votes
1answer
42 views

How can we prevent parameter expansion?

How can we prevent parameter expansion? Does the Bash's Manual mention this somewhere? I'd appreciate if you could help me to locate where it is mentioned there. For example, $ b=1 $ echo $b 1 ...
1
vote
4answers
111 views

Split comma separated list ignoring commas within matching {}

I want to split a csv, but ignore any commas within matching curly brace groups, and loop through each of the list members. The code below works great but does not consider commas within curly brace ...
-2
votes
0answers
27 views

Do a bash script and `bash -c <command>` run in a subshell environment? [duplicate]

In Bash Manual Command substitution, commands grouped with parentheses, and asynchronous commands are invoked in a subshell environment that is a duplicate of the shell environment, except that ...
0
votes
1answer
22 views

Reading file using shell script, format of the line has changed

I am reading a file using the following code: displayLine(){ echo $line } filename="SampleFile" while read line do displayLine $line done < "$filename" The format of the file that I am ...
0
votes
2answers
70 views

How is a command following the while command executed over the loops?

In while <command> part of a while loop, is <command> executed in each loop independently of other loops? In the following example, why can the while loop make read read all the lines of ...
51
votes
16answers
65k views

Is there a way to get the min, max, median, and average of a list of numbers in a single command?

I have a list of numbers in a file, one per line. How can I get the minimum, maximum, median and average values? I want to use the results in a bash script. Although my immediate situation is for ...
2
votes
3answers
118 views

Does command substitution create a subshell?

Bash manual says: Command substitution, commands grouped with parentheses, and asynchronous commands are invoked in a subshell environment that is a duplicate of the shell environment, except ...
2
votes
1answer
16 views

Is it possible to configure bash to autocomplete with one tab like zsh?

As most people here know, when using bash at the command prompt if you partially type a file name a command or an option to a command etc, bash will complete the word if there is exactly one match. ...
0
votes
2answers
25 views

How to read a file into a shell script as a variable?

I need to write a shell script to read a text file in and perform operations on it to count all distinct words in the text file. I have all of the commands needed to do these operations, but how ...
1
vote
3answers
33 views

How to determine callee function name in a script

To make it short, doing something like: -bash$ function tt { echo $0; } -bash$ tt $0 will return -bash, but how to get the function name called, i.e. tt in this example instead?
20
votes
7answers
21k views

Terminating an infinite loop

I have a command that I want to have run again automatically each time it terminates, so I ran something like this: while [ 1 ]; do COMMAND; done; but if I can't stop the loop with Ctrl-c as that ...
0
votes
1answer
19 views

BASH script that check disk space and send email [on hold]

I wrote the script that checks disk space usage on specific partition. Cron executes script every 5 minutes. What I want to do is to implement check which will check if mail is sent in last hour and ...
0
votes
1answer
22 views

Update 'changing' variables every time PS1 is called, i.e. every new prompt [duplicate]

The reason I need to be able to do this, is to have 'updating' variables in my PS1. I'd like to have my prompt span across the entire width of the terminal, not wrapping around or going down to a new ...
1
vote
1answer
53 views

How do I maintain sudo in a bash script?

If I run this script, how do I pass super user permissions to it? I wrote this just to setup new machines with the basics. I don't want to run every command with elevated permissions, but the commands ...
0
votes
1answer
44 views

cp doesn't work in a script but does from the command line

I have this script for automating a simple process where I scan a number into the command line, grep that number out of a catalog file which gives me a path, and then copy the DVD which the above ...
1
vote
2answers
195 views

Changing directory color with zsh + Prezto

I am using Prezto + zsh as my shell. I would like to change the color of directories when I ls my directory. For instance, here is what I currently have: Obviously, this is no fun, as I'm hardly ...
2
votes
0answers
20 views

The environment given to a program vs the execution environment in which the program is invoked

Bash manual says When a program is invoked it is given an array of strings called the environment. This is a list of name-value pairs, of the form name=value. What are the relation and ...
0
votes
1answer
18 views

Comparing 2 directories and copying the different sub-directories to a 3rd directory

I have 2 directories DIR1 and DIR2 DIR1 is base directory, where new changes come often, sometimes new sub-directories as well. DIR2 has older version of files. I want to compare these 2 ...
0
votes
4answers
43 views

Grep for a string and then echo a string back from a record

I have the following record: MiraServ.log.10:2016/02/07 15:25:13 3 All stations busy!! MiraServ.log.10:2016/02/07 15:25:13 1 TranHasError (3627,-2) ...
1
vote
1answer
33 views

Bash: Default variable with command substitution

Is there any way to accomplish the following in one stroke using Bash? my_var=${$(grep -E '^setting_1' /settings.conf):-default_setting1} As opposed to: my_var=$(grep -E '^setting_1' ...
2
votes
1answer
28 views

Inside a bash script doing an ssh, automatically add the host only for certain known RSA keys

I have a Chron job running a bash script that then SSH's to a my server. But my server's IP address changes from time to time (my bash script has a way of finding looking up the new IP address). But ...
9
votes
4answers
790 views

Bash Function Decorator

In python we can decorate functions with code that is automatically applied and executed against functions. Is there any similar feature in bash? In the script I'm currently working on, I have some ...
0
votes
2answers
39 views

Check if a file contains a certain pattern?

#!/usr/bin/expect -f ps ps -ef > test.txt Now if I want to check whether test.txt has certain keywords present, in it, how do we go about? say: 'apache' or 'fast' Can we use the if statement ...
0
votes
1answer
19 views

Remove file name when recursively counting number of occurrences of a pattern

When I run my grep command: grep -rc 'PATTERN' . it prints out the number of lines that the pattern occurs, but it looks like this: ./hotel_232424.dat:234 and so on... How would I remove the ...
0
votes
1answer
36 views

Convert a column of epochs into a time column starting from 0

What I have Hi, imagine a lot of this files, where first column is epoch, and the other(s) column(s) are some data: 1000333,34,1 1001456,56,0 1005356,34,2 What I need I need to transform them ...
12
votes
2answers
8k views

How do I force a user to change a password at the first time login using ssh?

I'm trying to force a newly created user to change a password at the first time login using ssh. For security reasons I want to give him a secure password until he logs in for the first time. I did ...
5
votes
2answers
9k views

Kill all background jobs

Is there a more compact form of killing background jobs than: for i in {1..5}; do kill %$i; done Also, {1..5} obviously has a hard-coded magic number in it, how can I make it "N" with N being the ...
1
vote
1answer
36 views

Remove a part of a path from a variable content

In a Bash I have a variable: LOCAL_PATH="/this/is/a/path/" Then I have another variable, which content starts with LOCAL_PATH and it should be removed: LINE="/this/is/a/path/which/is/longer" The ...
2
votes
3answers
32 views

How to alias rm to always confirm

When I use the command rm -rf, I want to make sure a prompt always appears before deleting a file, so I tried adding this to ~/.bashrc alias 'rm -rf'='rm -rfi' But it doesn't work. How can I fix ...
0
votes
1answer
25 views

creation of a variable, and assignment of a value to the variable

From Bash manual, a parameter is set if it has been assigned a value. In bash, are the following two different concepts: a variable exists a variable has been assigned a value, i.e. is set? unset ...
0
votes
1answer
12 views

Trouble using if string in column 3 of .csv exist, then statement

I have a set of 10 files. 5 are unique tumors tissues and the other 5 are matching normal tissues… So {tumor_A, normal_A, tumor_B, normal_B,… tumor_E, normal_E} These files each have a random ID, ...
3
votes
2answers
104 views

How to wrap output of watch command?

Consider the following command: watch -d "ps -ef | grep java" It gives following output: kshitiz 11369 11285 0 Oct13 ? 00:06:02 /usr/lib/jvm/jdk1.7.0_40/jre/bin/java ...
0
votes
2answers
50 views

command not found error after giving permission to access file using chmod

I've been trying to run a script using chmod. Here's how I tried to execute the script: $ chmod u+x tester $ ./tester ./tester: Command not found. I always get the Command not found error and I'm ...
0
votes
0answers
15 views

Delete Non numeric row from a csv

I have used sed to allow only numeric and csv format ,I have used sed '/[^0-9, -, .]/d' as regex. It has still "_","1-0","1-1" character as o/p which worries me. sed 's/'"$(printf '\015')"'//g' ...
1
vote
2answers
23 views

Unexpected field expansion behavior by bash for loop

I am having a problem reconciling all of the field expansions rules in linux/unix, so I've been experimenting. Here is an example which based on my reading is not consistent with what I'd expect. ~$ ...
0
votes
3answers
28 views

Backup script fails with the rsync command's options in a quoted variable

Using: rsync version 3.1.0 protocol version 31; Linux Mint 17 (based on: Ubuntu 14.04.3) In one of my backup Bash scripts, which uses rsync, I put the rsync options in a variable like this: # Set ...
12
votes
7answers
1k views

Unable to stop a bash script with Ctrl+C

I wrote a simple bash script with a loop for printing the date and ping to a remote machine: #!/bin/bash while true; do # *** DATE: Thu Sep 17 10:17:50 CEST 2015 *** echo -e "\n*** ...
3
votes
3answers
355 views

How can I use '*' to capture everything with exceptions

For example, I have files named A_1.txt A_t_1.txt A_ts_1.txt A_tsa_1.txt in a directory ~/admin/packages/. I am building a for loop to by globbing to A_1.txt for f in ~/admin/packages/*_1.txt ...
2
votes
4answers
49 views

how to access the next argument of command line parameters in bash?

Say I have the following: for i in $@; do echo ${i+1} done and I run this on shell $ test.sh 3 5 8 4, it outputs 1 1 1 1 why wouldn't ${i+1} work? I am trying to access the next argument for a ...
0
votes
1answer
12 views

Centralising Discs to Repository?

I have discs where is much variations. I would like to add the files to my central repository. However, I am getting warnings about ownership. I am thinking of running sudo chown -R masi:masi ...
3
votes
2answers
6k views

grep output of expect script

I'm trying to run some expect language, and grep/parse the output all in one script. I want to grep the output of and look for "error" (I should note that standard linux commands like awk, sed, grep, ...
5
votes
3answers
25k views

How do I echo just 1 column of output from ls command?

Lets say when I do ls command the output is: file1 file2 file3 file4 Is it possible to display only a certain column of output, in this case file2? I have tried the following with no success: echo ...
1
vote
2answers
94 views

What do you use when you can't use Bash? [on hold]

I am trying to make a shell script that runs on a widest variety of *nix systems. So, if I wrote a bash script backwards compatible with old versions of the shell, but what if bash wasn't on the ...
8
votes
2answers
18k views

set gnome terminal background/text color from bash script

I would like to setup my gnome terminal's background(#002b36) and foreground color in ubuntu 13, using bash script. I tried gconftool but couldn't succeed. GCONFTOOL-2(1) User ...
0
votes
2answers
42 views

Bash - Redirect output to a variable or file descriptor, then read from the variable or file descriptor

Here's an example of a bash script that redirects all output to a file (and shows output on the screen too): # writing to it exec > >(tee --ignore-interrupts ./log) exec 2>&1 echo "here ...
-2
votes
0answers
39 views

Script for logging in to multiple servers and running some commands [on hold]

I have a list of host/server names in a text file. I want to log in to each host using SSH and run certain commands. I'm using password authentication. When ssh'ing to another server, how to handle ...