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

1
vote
1answer
94 views

spawn external program in the background inside a loop

I am trying to stress-test (at a very basic level) a server by simulating multiple client programs with the following: for i in {1..5} ; do echo ./client-program& ; done but it fails with: ...
2
votes
2answers
2k views

Rename file in Mac OS Terminal using Regex

Hundreds of images need to be renamed with a terminal command using regex on MacOS 10.9 Mavericks. The files are named this way: 0045AW489R3T(IPCAM)_0_20131124101245_931.jpg ...
3
votes
3answers
3k views

Cut a field in a string with bash

I need to lower all upper-cases of file and folder names from a path, recursively inside other folders found; I need to do that with a bash script. Here my code: for file in $(find $1 -type f) do ...
4
votes
1answer
229 views

Preferred way to install bash functions?

I've written a bash function called up which I share via github. Now I'm struggling with installation instructions. I know of two options to 'install' bash functions: put them into .bashrc put them ...
0
votes
5answers
298 views

How to logout from su-ed root at certain time

Suppose, the user does su, switching to root $ su Password: bash-4.2# crontab -l How can I logout all such users from root at a certain time? What I tried I know, that using this command: ...
0
votes
3answers
1k views

Identify if files or directories are hidden

I am trying to write a bash script that prints out all files (including hidden) in a directory recursively and records the number of files, hidden files, hidden directories and directories. This is ...
2
votes
1answer
179 views

What does the expression ${MYVAR:+-x} mean in bash?

In a bash script I cannot post here I see the following expression: ${MYVAR:+-x} I understand the meaning of expressions like ${MYVAR:+OTHERVAR} and ${MYVAR:-OTHERVAR}, but an expression with both ...
2
votes
1answer
389 views

What does the expression $(<“dir/file”) mean in bash?

In a bash script I cannot post here I see the following expression: $(<"dir/file") From what I understand the expression $(...) evaluates a command inside (as when using backticks), but what is ...
4
votes
4answers
6k views

What is the most efficient way to move a large number of files that reside in a single directory?

CentOS 5.x I apologize if this is a repeat question. I've seen a lot of similar questions (regarding deleting files) but not exactly the same scenario. I have a directory containing hundreds of ...
3
votes
1answer
223 views

How can I make stdin always get consumed?

Some programs do not read from stdin (such as dmesg or adb logcat). I usually press Return a few times to provide a separation between log lines. When I interrupt the command directly in the shell, ...
2
votes
2answers
115 views

OS X: how to keep the computer from sleeping during a http connection

An application I use downloads data from a specific server, and I need it to sleep after the download has finished and the socket is closed. However downloads take place at random days, the app that ...
0
votes
1answer
918 views

Occasional error from bash on AIX: Interrupted system call

I am experiencing problems with process substitution in bash on AIX It happens very rarely, apparently only when the server is loaded. An example error message is: line 9: /tmp//sh-np-7841523: ...
1
vote
2answers
857 views

How to invoke a shell built-in explicitly?

I want to customize the functionality of cd command as per my needs. I define following function - function cd () { cd "$@" && pushd "$@"; } The intent of this function is to automatically ...
1
vote
1answer
2k views

locale-dependent bash script: How to properly ensure locale?

I went through a strange bug in a bash script which is on another machine, accessed via ssh (or other ssh like clients). It was basically a menu, in particular showing IP address(es) of the machine ...
3
votes
1answer
144 views

script to remember dir and always cd to it instead of the root dir

How can write a script to change to a given directory but also remember it so that when you do cd it always changes to that directory ? #!/bin/bash setdir() { cd $1 # remember the directory ...
1
vote
2answers
249 views

Ensure /etc/export contains rule using bash

What's a working example of modifying /etc/export using bash? Example: I want to ensure the following rule is present and valid: /export/home 2400:123::/32(rw,no_root_squash) And it should: Add ...
3
votes
1answer
146 views

Navigating the CLI: Go back N words

I'm a Vim user, so I'm learning Emacs commands for use in the Bash CLI. I know that on my systems I can use Vim-keybindings in Bash but I'd like to learn how to use it effectively in its default ...
5
votes
2answers
2k views

Get the PID of file creation

I am writing a bash script that creates 5 files with the extension ".P" and write a line of "something" into them. "P" represents a number and it's the PID of the process that creates the file. How ...
12
votes
2answers
3k views

find and remove duplicates in a directory

I have a directory with multiple img files and some of them are identical but they all have different names. I need to remove duplicates but with no external tools only with a bash script. I'm a ...
3
votes
2answers
151 views

Is it possible to transfer the history of commands from one system to another?

I am going to have all my data transferred to a new PC. Is it possible to transfer the command history of the previous Linux to the new system as well? So that when I type the history command, I get ...
0
votes
1answer
84 views

What's meaning the of a pair of parentheses after a string literal?

I accidentally input the the following command into the Bash terminal: exit() And the Bash keeps read the next line until I input a string literal and Bash gives the error of "-bash: syntax error ...
3
votes
1answer
189 views

code review: automatic completion for bash aliases

I was reading How do I get bash completion for command aliases? and I thought, that the answer by Shawn J. Goff needed a little something: less user setup so I wrote a little script that is intended ...
2
votes
1answer
112 views

how to record different values of a “flag” file

I have a black-box system that periodically updates a single-line "flag" file. This single-line file takes, over the course of the system's life various different values, corresponding to the states ...
3
votes
2answers
7k views

bash: insert character at specified position in file

Lets say I have following file word1 something blabla anotherword somethingelse asdf yetanother else 123 For each line, I need to put a comment infront of the ...
1
vote
1answer
37 views

ssh: define group of servers [duplicate]

I am using a script to connect to multiple servers. At the moment, I am using something like: for SERVER in server1 server2 server3 ; do ssh $SERVER "my-command" ; done I have to specify the (many) ...
1
vote
3answers
426 views

Creating a file counter that includes hidden files

As part of a programming assignment I need to create a piece of code that will count the number of files and directories (including hidden) recursively. I'm not allowed to use the commands -R, find or ...
2
votes
2answers
147 views

stripping out the last two [end] with sed?

I'm working on a script that improves the fluxbox 'menu', and my script has this line: sed -i 's/\[end]//g' ~/.fluxbox/menu;sed -i '/^\s*$/d' ~/.fluxbox/menu but this has the unfortunate effect of ...
3
votes
2answers
7k views

What is “Exit 2” from finished background job status?

I have an exercise to put in a file some data (*conf from some directories) and need to do this in background. I did it and I am wondering what is the meaning of output messages: [A@localhost tests]$ ...
3
votes
4answers
474 views

Bash: For loop with binary range keeping control value binary

Let's say I have two bash variables that contain binary values: a=0011 # decimal 3 b=1000 # decimal 8 Is there a way I can loop through all the possible values between $a and $b keeping it binary? ...
0
votes
2answers
567 views

Test if number from range <0,infinity)

I have a problem If [[ * ]] then continue else exit 1 fi I want to test that the argument to my switch (for example -d 3) is a valid positive decimal integer number (a sequence of one or more of ...
3
votes
2answers
65k views

mail: send email with attachment from commandline [duplicate]

I know how to send an email from command line (script) echo "body" | mail -s "subject" my@email.com Is it possible to send attachments from commandline (script) as well? I am using heirloom-mailx ...
1
vote
1answer
287 views

exported variable disappears when I open a new terminal

I type this: export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk so that I can access that directory by typing cd $JAVA_HOME but every time I close and open the terminal I have to do this again and ...
1
vote
1answer
127 views

Trouble getting menu to work

Currently I’m trying to get a menu working for my Into to Unix class. The problem I’m getting right now is that when I input something into the script my input appears instead of the script responding ...
8
votes
2answers
701 views

How do I columnate a list of items with minimal width?

How do I columnate any uncollumnated input like ls does? ls is creating an optimized table with minimum width for each row, for example: ls 2 dsao file with space with 5 e g ...
-1
votes
1answer
201 views

find not working right

if [[ "$1" == "" ]] then leftarray=($(find . -type l -printf "%p\n" 2>/dev/null)) rightarray=($(find . -type l -printf "%l\n" 2>/dev/null)) for var in "${rightarray[@]}" do ...
2
votes
3answers
663 views

how to pipe find's output into another find

In searching how to make find sort the files it finds based on modification time I found this answer which provides the following incantation: find . -type f -printf '%T@ %p\n' | sort -k 1nr | sed ...
7
votes
1answer
733 views

Why doesn't the process substitution <() work with ssh -F

I have some vagrant virtual machines. To log into them I issue the vagrant ssh command. I want to log into them using regular ssh command. The vagrant ssh-config outputs the suitable config file $ ...
4
votes
4answers
518 views

Remove all files except for last file of each month

Consider a directory with MySQL backup files with timestamps as part of the filename: -rw-rw-r-- 1 ubuntu ubuntu 35856184 Nov 16 16:00 db_2013-11-16_1600.sql -rw-rw-r-- 1 ubuntu ubuntu 35856915 Nov ...
3
votes
3answers
80 views

Script is stuck saying 1 response with 2 available: Math related

I have a script that tells the user the square footage of 2 rooms based on user input. I think I have that part done right. The problem I have is that I need to have the script say which room is ...
0
votes
2answers
650 views

Count occurrences of line in multiple files

I have log files that I need to grep and count the number of occurrences of a specific line. Issue is that I must start at a specific line of the first file and only count occurrences after that ...
2
votes
3answers
544 views

How can I tell echo/printf in Bash to swallow escape codes, based on a condition?

I have a Bash script that is being run interactively and as a cron job. When run interactively it outputs colored text on the terminal. However, when run in cron it doesn't have a terminal and ...
5
votes
2answers
222 views

How to report time and other information on all bash commands? [duplicate]

Most of the things I run in the terminal take a long time to compute and I would like to have bash output a time report at the end of every command entered into the terminal. Is there something I can ...
2
votes
1answer
141 views

Check for existence of files prior to acting on them

In one of my processes I check for existence of files older than 31 days, and then do stuff with them. find /my/directory/*txt -mtime +31 -exec ls -l {} \; All this is well and fine if files are ...
4
votes
1answer
345 views

bash_completion for initscripts

I have writen my own initscript /etc/init.d/myscript. I can start and stop my script with the service command service myscript start service myscript stop When I type service <TAB>, ...
3
votes
3answers
900 views

Correctly parse arguments in script behaving like a shell called through SSH

I have a server with a very limited used whom I want to be able to run two very specific (and custom) instructions through SSH. In order to do that, I have set the shell for that limited user to be a ...
5
votes
2answers
8k views

Bash globbing and argument passing

I have the following simplified bash script #!/bin/bash files=("$@") if [ "X$files" = "X" ]; then files=$HOME/print/*.pdf; fi for file in "${files[@]}"; do ls "$file"; done If I pass ...
4
votes
5answers
5k views

Bash: What is the use of type (Bash builtins)?

I came across a command in Bash script in which I found: find /var/log/abcd -type f The above command was in context of cleaning the log files. I know what find does. After having seen -type f, I ...
5
votes
3answers
24k 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 ...
2
votes
2answers
372 views

How to load .bashrc from “bash -c”

Trying to run a function defined in my .bashrc using "bash -c ". I end up with the error "command not found". How do I get "bash -c" to load my init file?
1
vote
2answers
1k views

.bashrc execute command after “/bin/bash --login”

I have this alias in my .bashrc: alias s='cd ~/Documents/projects/s && /bin/bash --login && rvm use ruby-1.9' How can I execute the right part after it enters login shell (/bin/bash ...