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

0
votes
2answers
1k views

Shell script to add or replace block of text?

I'm looking for a shell script (Bash) that adds or replaces copyright text at the beginning of the file (for .c and .h files). It should search and add or replace the copyright text block for all the ...
2
votes
8answers
10k views

How to print lines with blank 5th field in CSV

I have to check if the fifth field is empty in a CSV file. This is my file: 1,abc,543,87,DATA,fsg; 1,abc,543,87,,fsg; 1,abc,543,87,DATA,fsg; 1,abc,543,88,,fsg; 1,abc,543,,DATA,fsg; As you can ...
0
votes
1answer
503 views

Confusing db2 output

When type in echo $(db2 -x "select count(*) from dict_area") in bash, I get 446. But when I type in echo $(db2 -x "select count(*) from dict_area";db2 -x "select count(*) from dict_area"), I get ...
12
votes
6answers
3k views

Shell: “Display all 2588 possibilities?”

So, I was moving my laptop around (and I have the bad habit of setting things on the keyboard...) and I woke up to discover this: $ Display all 2588 possibilities? (y or n) What command would ...
6
votes
4answers
534 views

Detect if a variable is empty

In my Bash script I have this line: mv -f $HOME_DIR/$dir $HOME_SAVE/BACKUP The problem is when $dir is empty (no $dir directory) the mv command moved the directory $HOME_DIR. We want only to move ...
5
votes
2answers
104 views

Long-generating Bash prompt wraps incorrectly when I start typing

I have a Bash prompt that takes a while (~100-200ms) to generate, because it includes Git working tree status that takes some time to compute. Sometimes I start typing a command before it appears, but ...
5
votes
2answers
49 views

Is it possible to (re)define what readline (embedded in bash) defines as a word?

Many of the special Readline constructs allow the user to edit the command line in various ways. For instance, certain keystrokes allow moving forward a word. A word is defined to be what bash itself ...
2
votes
1answer
143 views

bind -x leaves terminal in a state resembling ^V

I define a shell keybinding in my ~/.bashrc like so: bind -x '"\e\C-w":"/usr/bin/reset"' This does make Ctrl-Alt-w launch the reset executable. However, it leaves the terminal in a state that ...
83
votes
2answers
3k views

Security implications of forgetting to quote a variable in bash/POSIX shells

If you've been following unix.stackexchange.com for a while, you should hopefully know by now that leaving a variable unquoted in list context (as in echo $var) in Bourne/POSIX shells (zsh being the ...
4
votes
2answers
1k views

bash history for current session

Maybe I'm overlooking something but is there a way to get your current bash history for the current session you are using like if i run ssh host $ pwd $ ls $ cd /tmp I just want to see those 3 ...
17
votes
1answer
334 views

Is there a difference between prepending a name-value-pair to a command and using env in bash?

Let's say I invoke A=B command and env A=B command in bash. Is there any situation where there might be a difference between both invokations?
3
votes
2answers
389 views

Repeatedly execute bash command while there's no output from another process

I'm running fs_usage to detect access to an object on my filesystem. sudo fs_usage -w | grep -E 'object' I now want to run a touch command on that object every 5 seconds as long as there's no new ...
1
vote
5answers
751 views

How to move a file and change its name without retyping the name and just add the new characters

I change too frequently the location of some files generated daily. The thing is that I want to change their names by only adding the new required characters. What I want is something like this: $ ...
0
votes
2answers
811 views

Bash assign $1 value

#!/usr/bin/bash kill9="9" kill15="15" if [ $1 == $kill9 ]; then set -- "$1" "$kill9" else set -- "$1" "$kill15" fi echo $1 I want $1 to become 9 if I type -9 and 15 if I type -15 My script ...
3
votes
2answers
209 views

Sed: modify every non-first word repetition for every word in text

Can you help me to do something like that using sed? qq ab xyz ab qq aa ab Becomes: qq ab xyz +ab+ +qq+ aa +ab+
0
votes
2answers
64 views

executing commands in shell and turnoff the default displays of commands in console [duplicate]

This is my script cd /opt/product/vinoth -- some operations -- cd - While executing this command cd - the old path get displayed in the console. is there is any way to block this from displaying ...
0
votes
2answers
291 views

problem with grep -f list of pattern

After searching, reading and trying possible solutions for much about grep lines with the list of patterns, hence I am writing. It is I know a very basic and have been attended in many forums. But I ...
3
votes
1answer
123 views

Reading char-by-char silently does not work

I'm trying to read user input char by char, silently, as follows: while [ 1 ]; do read -s -N 1 ... done While this loop works perfectly using VNC (xterm), it works only partially using putty ...
4
votes
2answers
163 views

How do I convert a string into a number interpreted in certain base in bash script?

I'm simply trying to convert a string $RECORD_HDR to a number $RECORD_SIZE, where echo $RECORD_HDR gives 003D and echo $RECORD_SIZE should give 61
6
votes
4answers
905 views

Back to back Pipes into a Command

Is there a way to pipe back to back values into a command? e.g. If I can command.pl and want to pipe in response, then y to confirm (because it doesn't have a way to auto confirm)? I've tried echo ...
0
votes
2answers
2k views

bash NOT reading .bashrc on RHEL 6

machine A --RHEL 7 and updated. machine B -- RHEL 6 and updated. If I do this on A (RHEL 7) ssh B I get in, like I should, but my .bashrc has NOT been run. This is new behavior to me. I want ...
0
votes
3answers
1k views

Bash scripting problem - compare two lists and create a third

I've got the beginnings of a script that I'm putting together to check Xen hosts... this question is twofold really. Firstly I've got the below code snippet; TMPFILE001=/tmp/FILE001.rx ...
1
vote
1answer
294 views

Shell glob expansion after loop variable substitution

How can the following be changed example so that it does glob expansion after loop variable substitution? for i in a b c do echo $i/*.txt done UPDATE: This normally does work, however set -f ...
-1
votes
1answer
283 views

Run a server and client in a makefile [closed]

I'm coding a socket file server in C++, and I can't figure out how to put proper unit testing into my makefile. My problem is as follows: The server, when started, spits out its port number to ...
1
vote
1answer
101 views

BASH Program to remove files, Integer expression expected

# # if MAXFILES is not set, set to 10 # if [ -z "MAXFILES" ] then MAXFILES=10 fi # # now check to see if the number of files being removed is > MAXFILES # but only if MAXFILES = 0 # if [ ...
2
votes
1answer
484 views

Find Command: File Path vs -name Argument

I'm currently building a script to handle some files in a directory. In the first example, I use the find command and pass a directory in as the argument. In the second I instead use the -name switch ...
1
vote
1answer
201 views

Dynamic ~/.ssh/config

I'd like make my ~/.ssh/config file dynamically generated by a shell script (or anything else that prints to STDOUT). Is there a UNIX trick to make reading a file result in executing a command & ...
2
votes
2answers
302 views

Inheriting Bash signal traps

I'm struggling to find clear, unambiguous information about how the trap command works. In particular, is the effect of trap local to the script where it appears? I had always assumed this to be the ...
1
vote
3answers
486 views

Remove old directories according to directory's name?

In my bash script I create a directory each month for backups as follows: DAY=$(date -d "$D" '+%d') MONTH=$(date -d "$D" '+%m') YEAR=$(date -d "$D" '+%Y') mkdir -p /var/app/backup/$DAY$MONTH$YEAR ...
0
votes
2answers
315 views

How can I capture two columns of ls output in a bash script

I want to create a script to delete any directories with numeric groups. What I have so far captures and analyzes the group: #!/bin/bash re='^[0-9]+$' for x in `/usr/bin/ls -l /var/indexes | sort ...
5
votes
3answers
2k views

Append human readable timestamp of last edit to filename

I would like to add the time of the last change to the file to its filename using the bash. For example this output of ls -la: -rw-rw-r-- 1 beginner beginner 5382 Dec 1 17:18 B_F1-1.xml should ...
1
vote
2answers
92 views

Why doesn't my regex work in bash “if”? [duplicate]

Here is my code: if [ -f /Applications/xml[0-9].pl ] I also tried with -f =~ and double brackets but none seem to work. I first though that the regex might be faulty but I tried this. echo h1 | ...
0
votes
2answers
306 views

Bash regex string manipulation bug

I have an issue with bash and its regex match ability that I for now think is a bug in bash but could also be me having missed something obvious. I hope it is the latter. I have made this function in ...
0
votes
1answer
351 views

How to copy a whole directory structure with a certain file size limit? [duplicate]

For some reasons, I need to do a data clone. In which I need to copy the whole structure of a huge directory, but I'd like to only copy those files which are smaller than 1MB(with their hierarchy ...
2
votes
1answer
112 views

Remove tar compress spool from cron email

I have a crontab job that call a simple script to backup a website: 15 0 1,10,20 * * /home/username/bin/backup_whatever This is the script: #!/bin/bash TODAY=$(date +"%Y%m%d") ...
2
votes
2answers
275 views

Checking and Killing processes of a user before deleting

I am working on a script to delete users from text file. However, before deleting, I wanna check if any process by a user is running and if running then kill all the processes and delete. Here's how, ...
1
vote
1answer
26 views

Trying to generate random pass for users and saving them in a file

I'm trying to generate random pass of the users created by a text file in a bash script and then saving those passwords into a text file.. That's how I'm doing.. It works fine and creates user from ...
1
vote
1answer
469 views

get only file name while iterating over directory instead of path with it [duplicate]

$ script.sh -i /storage/testFile -i stores the path of /storage/testFile/. I want to iterate over file in testFile. Everything goes good, but I want to make this code cleaner and add a directory ...
1
vote
1answer
53 views

Print newlines on command output

If I get the result of a command on a variable, how can I print this output with new lines. Silly example: XX=$(ls -l); echo $XX When I execute the above sentence, I have one line ilegible result ...
3
votes
2answers
1k views

Compare directory trees regarding file name (and size and date)

I want to check the results of a restore from backup. This is, because TimeMachine on MacOS gives me some weird errors and warnings and I want to make sure, everything is in its place again after ...
-4
votes
1answer
326 views

Why is setting a variable name giving me “command not found”?

I want to input a number and then add taxes and subtract discounts. I am trying: #!/bin/sh ... final_amount = $(echo "$purchase_amount+($purchase_amount * $tax)-($purchase_amount * $discount)" |bc ...
0
votes
2answers
5k views

Remove a carriage return with sed

I have a large CSV file. One of the fields contains an error. This error appears as a new line in the file. Since now i've been using notepad++ with this command to correct the problem : \r";" ...
5
votes
3answers
5k views

awk + print lines from the first line until match word

I want to print all lines from file until the match word please advice how to do that with awk for example I want to print all lines until word PPP remark the first line chuld be diff from AAA ( ...
4
votes
3answers
785 views

How to append a date to all files in a directory without touching sub-directories via bash script

I'm currently taking a class for Operating Systems and we're learning to do bash scripts as part of the curriculum. I need to append the date to all the files in a directory without touching ...
0
votes
1answer
4k views

Run bash script on startup in Linux Mint and open mate-terminal automatically

I'm new to Linux, so not sure how to do what I want. I have my_script.sh (executable, of course) like this: #!/usr/bin/env bash mate-terminal -e "bash -c 'cd ...
2
votes
1answer
1k views

redirecting output of running background job in bash

in bash I have some jobs running, in background. They are always producing random irrelevant error messages that pollute the terminal. I am not always so prompt to start them with the 2>&1 > ...
1
vote
2answers
121 views

Map reading/writing a file to getting output from/sending input to a script?

Suppose I have two scripts, script1.sh and script2.sh. I am wondering if there is a way to make a filesystem interface such that, for example, I can go vim file and then have my system run script1.sh ...
3
votes
2answers
135 views

What is &>> in a shell script [duplicate]

In a script I have inherited the output of one of our programs is put in to a file with: program &>> result.txt I have been reading in my book "Learning the bash shell" at home over the ...
2
votes
1answer
2k views

login/non-login and interactive/non-interactive shells [duplicate]

Are the concepts of login/non-login shells the same as the concepts of non-interactive/interactive shells (respectively)? Or are the concepts orthogonal yielding four different combinations? I am ...
2
votes
1answer
1k views

'Tar' the result of a 'find', preserving the directory structure

I want to tar all the *.txt files that I get as the result of a find command, that exist in a directory having a tree structure like this: Directory_name dir1 file1.pdf file1.txt dir2 ...