Questions specific to GNU’s Bourne Again SHell, as opposed to other Bourne/POSIX shells. For questions about Unix shells in general, use the /shell tag instead.

learn more… | top users | synonyms

3
votes
3answers
1k views

How to set the number of commands history recalls

I am using bash. To browse my command history I am calling the history command which I believe is calling the Gnu program of the same name. (I don't know if there's a better bash specific way). In ...
1
vote
2answers
282 views

find command throws errors when inside function

I can run the following command in bash without any errors: $ find /d/Code/Web/Development/Source/ \( -name '*.cs' -o -name '*.cshtml' \) -exec grep -IH UserProfileModel {} \; I wrote a function in ...
1
vote
2answers
1k views

Lazy regex using Bash

I'm trying to match just the text contained within the HTML tags using Bash's built-in regex function: string='<span class="circle"> </span>foo</span></span>' regex='<span ...
4
votes
1answer
661 views

Add autocompletion for custom script

I am currently working on a shell script I called makeyourself.sh (linked to /usr/bin/mys) which automatically installs a debian package from source (via apt-get source -b $1). So I decided to add an ...
2
votes
2answers
458 views

Sed? Stripping all formatting, i.e line breaks and whitespaces, from a report text file, while masking out certain pieces

I am working on a project in which I need to remove all formatting from a text file including whitespaces and line breaks, then replace any colons with pipes. I've made some headway but I cannot find ...
2
votes
1answer
219 views

Duplicates in history file even after HISTCONTROL specified

I am using cygwin with bash (on Windows 7 pro). I have the following in .bashrc: # Don't put duplicate lines in the history. export HISTCONTROL="ignoredups" and the following in .bash_profile: # ...
7
votes
5answers
632 views

List out strings which are substrings of other strings in the list

I have a list of names like so: dog_bone dog_collar dragon cool_dragon lion lion_trainer dog I need to extract out names that appear in other names like so: dragon lion dog I looked through the ...
4
votes
1answer
550 views

Binding Shift-Enter to insert a newline without evaluating the current expression

I try to bind Shift-Enter to insert a newline without evaluating the current expression in the terminal and in repl modes. Reading through the ArchWiki, I tried setting this in my ~/.Xmodmap file and ...
0
votes
2answers
12k views

Bash script returns “command not found” when outside the source folder

under my directory, /home/lucas/bin I have the following script term_multiscreen: [lucas@lucas-ThinkPad-W520]~$ sudo cat bin/term_multiscreen #!/bin/bash # Initializes ...
1
vote
0answers
84 views

Create global enviromental variable after boot

I know about /etc/profile and /etc/environment, but I would like to set a global environmental variable after boot and login. By global, I mean an environment variable that can be accessed by any ...
1
vote
0answers
26 views

Is there a way to execute the second-to-last command that started with a given string? [duplicate]

In a project with different makefiles: $ make -f foo1.make ... ... $ testing testing ... ... $ !ma make -f foo1.make Good! But then if I by accident do: $ make -f foo1.make ... ... $ testing ...
1
vote
1answer
3k views

Create a iptables rule if the rule does not all ready exist

Hi I've created a script to setup Nagios on my remote servers. My Script checks iptables to see if a firewall rule all ready exists and then is supposed to add the rule if it's not all ready there. ...
1
vote
4answers
113 views

How to delete a line if string is the only thing on the line

How can I use sed or something else to delete a line only if the string I'm searching for is the only thing on the line? Example output: device-address-binding: ? database-revision: 20 -- ...
1
vote
0answers
34 views

Filter partial output of some script [duplicate]

I need to analyze the output of some script So, I know their header and their tail of some part of the output script, but not the content. I found an approach [1] But I need something like: $ ...
0
votes
1answer
990 views

Run supervisord without root access

Hi I'm really new to writing scripts and I searched a lot but all that I've found is scripts with full access. I don't have access to the /etc. I'm working in a host in the cloud but I have limited ...
4
votes
1answer
1k views

Redirect grep out to a file does not work [closed]

I am doing a recursive grep by the following command: grep -r "load" . > tmp.txt However, when I hit enter, the command does not execute and bash is waiting for more inputs.. My OS is Ubuntu 12....
0
votes
2answers
473 views

Disable the display of “terminated xxx” info of bash

For example, when I kill a background process, then bash weil display terminated xxx, How to disable this info? $ ping g.cn >/dev/null & [1] 25123 $ pkill ping [1] + 25123 terminated ping g....
2
votes
2answers
859 views

Variable value is not recognized after using gnu parallel?

I have a below shell script from which I am trying to copy 5 files in parallel. I am running my below shell script on machineA which tries to copy the file from machineB and machineC. If the file is ...
0
votes
1answer
67 views

Expansion of *,#,% - What do they mean? [duplicate]

for j in * .* ; do cp $j ../$name-S$i.gid/${j%%. * }$i.${j#*.} done Could someone tell me what this for loop does? What do *, % and # mean? ($name is a path of a directory in which there are -...
2
votes
3answers
183 views

How to split the array in set of five files and download them in parallel?

I am trying to copy files from testMachineB and testMachineC into testMachineA as I am running my shell script on testMachineA. If the file is not there in testMachineB, then it should be there in ...
2
votes
3answers
2k views

How can I get my PS1 prompt to show time, user, host, directories and git branch

I've seen others add all this information to their PS1 prompt. I like the approaches that colorize the elements and also do a carriage return at the end
2
votes
2answers
117 views

Converting an if-else statement into a switch statement [closed]

I'm having trouble turning this program from an if-else statement into a switch statement. Any help would be appreciated. #!/bin/bash for x in $@ do array[$i]=$x i=$((i+1)) done # initial state ...
1
vote
1answer
39 views

Forwardticks in example command in `man emerge`: local misconfiguration or typo?

In Manpage of EMERGE it is stated: To find files that need to be updated in /etc, type find /etc -iname ´._cfg????_´* Taking a closer look at it (copy-pasted from terminal -- not from the online ...
2
votes
1answer
411 views

No password prompt when using rsync remotely?

I have a bash script that executes rsync transfers to a remote location, and every time I execute the script I get asked for a password. Is there a way to avoid this? This is the command I use: ...
0
votes
1answer
356 views

apply bash function to parent scope

I can to define function in bash and use it: foo() { echo $1; } foo test But if I want to collect my functions in one bash script all its unavailable: init.bash #!/bin/bash foo() { echo $1; } ...
3
votes
2answers
3k views

Automating backups run from a bash script in Linux the right way

I have a bash script I wrote to backup a Moodle installation. It works fine, I've tested the backups, but there's a problem with it; when I do the backups, since I have to use sudo to type the ...
0
votes
1answer
552 views

Trying to pass user generated variable to an external command

I have a bash script that is asking a user for input, then passes that variable to a find command. I've tried quoting/escaping the variable every way I know, but it keeps failing. read -p "Please ...
1
vote
2answers
113 views

remove files after insertion into tarball

I want to limit the number of files that get put into a tar ball and erease them after they've been inserted into the tarball and being indipendent from the current directory. I've tried this: tar -C ~...
5
votes
1answer
757 views

Performance differences between pipelines and process substitution

I tend to use pipelines in my bash scripts over process substitution in most situations, especially in cases of using multiple sets of commands as it seems more readable to do ... | ... | ... over ... ...
2
votes
2answers
1k views

bash value of $LINE is not showing when defined like val=`$LINE`

I have the following bash script for some reason $LINE value is not coming on val=. I can see the line from file is read can be display by each $LINE but when defined in the val.. is not showing. #/...
5
votes
2answers
3k views

Copying one file to multiple directories

I have a file that I want to copy to another 60 directories. The best way I can think of doing this is by making a bash script that has instructions to every folder like this: cp script.sh /home/...
1
vote
2answers
392 views

How to fix 'set -o emacs' in .bashrc not working in ssh shell

I work in an LDAP-based user and host network. My user exists on all hosts since it an LDAP user, and my user's home directory exists on all hosts as a mountpoint. I have ~/.bash_profile set up to ...
3
votes
2answers
9k views

Why does the filename contain question marks when I run a script on my remote machine?

I have a tiny script that simply fetches the current date, runs a PHP script and redirect the output (and errors) to a filename containing the current date. DATE=$(date +"%Y%m%d") FILE="log/${DATE}....
3
votes
1answer
523 views

Why does the history command do nothing in a script file?

If I create a file containing #!/bin/bash history and run it, I get no output. Running it manually in a terminal or sourceing the script file does produce output. Why does history not work from ...
24
votes
1answer
977 views

How do I redirect command completion output?

On the command line, I can redirect or pipe output of a command to a file or another command using the > or | operator after the command. I have come across a less standard situation that I would ...
3
votes
1answer
163 views

Screwed up my bash prompt, what happened?

I just thought I might get version information about the current bash by entering bash -v That brought many lines of code to stdout and left me with a line that appears right above my usual promt ...
3
votes
1answer
190 views

Write a shell script that takes in a variable from the terminal? (~$ command variable)

I am writing a shell script that takes in a time (in minutes) and opens an online egg timer set for that amount. #!/bin/bash #Opens http://e.ggtimer.com/TIMEmin where TIME = number of minutes TIME=5 ...
4
votes
1answer
77 views

Tab-completion within for loops not working

I'm either going crazy or about to ask a stupidly basic question. I appreciate your patience either way. Tab completion for executable command is not working within interactive for loops in bash. I ...
3
votes
1answer
539 views

Pipe hex characters to awk

This command works as expected $ awk 'BEGIN {print "\x41"}' A As does this $ printf '\x41' | awk '{print}' A However when you rely on awk to recognize the hex characters, it fails $ echo '\x41' ...
1
vote
2answers
1k views

How to move or copy list of files referenced in a csv file to a new folder

I'd like to write a shell script (OSX) which copies files listed in a csv file to a particular directory. I need to strip quotes from each line in the csv file. My attempt for i in $(cat myfile.csv) ...
2
votes
1answer
42 views

Script. How to sort and move catalogs

I have some trouble writing a script. I don't know how to sort and move catalogs. #!/bin/bash while read -r line; do mkdir "sd/$line" done < 1a.txt After reading information from 1a.txt ...
0
votes
3answers
42 views

bash_profile stops after file call

I have the following code in my .bash_profile that automates a couple of file write tasks I need to run. # Compile cron jobs for server do_cron() { cd ~/Sites/MAMP/mywebsite/.ebextensions && ...
0
votes
0answers
360 views

Editing metadata with bash

I have a bunch of photos(jpeg, bmp, png) that I have arranged in such a manner that the metadata is in html form in a separate file. I would like create some script to read this html file and edit ...
15
votes
3answers
9k views

Bash subshell creation with curly braces

According to this, placing a list of commands between curly braces causes the list to be executed in the current shell context. No subshell is created. Using ps to see this in action This is the ...
1
vote
1answer
1k views

Is it possible to change the key binding for completion in bash shell?

For bash, I would to modify the tab key for completion to the escape key. I know that key bindings are defined in /etc/inputrc. But I don't know if something like this could work: `"\e" : ...
11
votes
2answers
471 views

How to define a symbolic link that I can use in all of my directories

Is it possible to write a symbolic link such that no matter where am I on the file system, I can use for example project to point the directory home/me/project? I would like to use commands like cd ...
0
votes
3answers
386 views

bash color echo : problem with '-n' option

here is my function to print color text: cecho() { color=${1:-""} # defaults to original color if no color specified colorreset="\E[0m" # back to black after function return while read line;...
0
votes
2answers
2k views

Stopping .bashrc without exiting shell

My .bashrc file is modularized and I've got some error checking in it. In bash scripts, I typically have a function _errexit (or something similar) that I call when I detect an error and want to exit. ...
1
vote
2answers
218 views

bash function to handle file through symlink : problem with command line arguments

I wrote a little code that will copy files given either their name or symlinks to a given directory. linkcp() { cp `echo "$(realpath $1)"` "$2" } here is the file list: $ ls -l drwxr-xr-x 2 user1 ...
7
votes
2answers
18k views

Bash command in string is executing when I create the string, not when I use it later

I'm relatively new to shell scripting, but have nearly completed a script which makes use of the lftp program. The part of the script I am having trouble with is when I create a long string of ...