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

0
votes
1answer
333 views

How does this bash statemnet test “.$TOMCAT_USER” = . && TOMCAT_USER=tomcat work?

I am trying to understand the tomcat daemon.sh script which contains a bunch of lines along the lines test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat I figured out that test ".$TOMCAT_USER" = ...
6
votes
5answers
9k views

How to securely allow scp, but not ssh

I work from a Mac Book Pro (called foo). I have a server where my customers scp large files to. (called bar). I frequently ssh into bar, and scp a file (called buzz) to my Mac. bob@foo$ ssh bar ...
3
votes
2answers
473 views

Writing scripts that use different commands in different shells [duplicate]

How can I write a script that is shell independent? I want to be able to run one script which will run in ksh, sh and bash. For example: If I have a line in my script like whence ls which will run in ...
1
vote
6answers
168 views

How to rename directory from all user accounts

Let say that more users have a tmp directory in their home directory. I want to rename each tmp directory in each user home directory. What is the easiest way? Something like this: sudo mv ...
4
votes
3answers
295 views

Simplified navigation in terminal

I know IDEs are the wave of the future, but I always find myself coding in vim in a Linux terminal. Old dog. New tricks. Anyway, navigation becomes challenging when dealing with long package names. ...
2
votes
2answers
7k views

Print line numbers of files I am searching through [closed]

I am looking for a way to print the line number of files my script is going through. I have found $LINENO but when I do echo 'Found foo in file' $(basename $foo) 'on line' $LINENO >> foo.csv ...
2
votes
3answers
348 views

sudo command after long sleep call without re-prompting sudo password

I'm trying to write a simple bash function that sleeps X-number of mins and then runs a system sleep command (for me it's sudo pm-suspend since I'm on Ubuntu) right now the function looks like this: ...
1
vote
1answer
4k views

How does this su -c “…” command seem to pass two commands instead of one?

I am trying to understand the script below and I am confused about the su line. I understand the postgres command line arguments. when I do man su the manual says -c, --command=COMMAND ...
0
votes
2answers
2k views

HISTTIMEFORMAT does not show correct date and time for history

After exporting HISTTIMEFORMAT='%F %T' I tried to query history But the result shows all the commands are executed on same day. How can I check the actual date and time of actual command execution?
1
vote
3answers
2k views

How to combine bash arithmetic with command output?

Suppose you had two commands: First command let foo=2+2 echo $foo 4 Second command date "%s" 1377107324 How would you combine them? Attempt 1. echo The epoch time is: `date +%s` in 100 ...
3
votes
4answers
4k views

How do I select files in a bash script that do not have an extension?

Let's say I have files xinitrc, alphabetsoup, ieat.pie in the current directory. Need a bash script to select only xinitrc and alphabetsoup.
11
votes
8answers
14k views

Is there a way to make “mv” fail silently?

A command like mv foo* ~/bar/ produces this message in stderr if there are no files matching foo*. mv: cannot stat `foo*': No such file or directory However, in the script I'm working on that case ...
4
votes
1answer
287 views

Looking for lines which is in one file but not in other using Unix and Awk

I have 2 files with 7 fields and I want to print the lines which are present in file1 but not in file2 based on field1 and field2. Logic: I want to print all the lines, where there is a particular ...
2
votes
6answers
9k views

Using cut/awk/sed with two different delimiters

I have the following cases: case@test.com case_1_2@test.com case_1@test.com I'm trying to convert these to case@test.com case@test.com case@test.com So it should remove everything from ...
4
votes
2answers
429 views

Shells in tabbed windows in a terminal

I want to do tabbed terminal stuff without having actual tab windows in my terminal application. Is there any good way to do this within bash? It would come in very handy with SSH if I could avoid ...
1
vote
2answers
101 views

How to hide the . and .. from ls

When I run ls -l on a directory, I see an entry titled '.' How can I remove the row containing '.' from the output? ls -latr /foo | tail -n5 -rw-rw-r-- 1 guest bar 59169 Aug 20 12:22 ...
2
votes
2answers
282 views

Why does Bash readline sometimes try to parse the second word of a command out of context?

I recently migrated all my dotfiles and setting to a new laptop running Ubuntu 13.04, and have been noticing a strange behavior that I've never seen before. Essentially, it seems like my terminal is ...
2
votes
4answers
8k views

Shell script to check for the presence of one or more files with a specific extension?

I want to write a script to find a file with specific extension.this much i have done: #!/bin/bash file="/home/Savio/Dsktop/check/*.csv" file1="/home/Savio/check/*.txt" if [[ -f "$file" && -f ...
24
votes
2answers
43k views

How can I execute local script on remote machine and include arguments?

I have written a script that runs fine when executed locally: ./sysMole -time Aug 18 18 The arguments "-time", "Aug", "18", and "18" are successfully passed on to the script. Now, this script is ...
0
votes
1answer
104 views

File permissions when mixing command line and server

I have a PHP server which creates folders and files for certain things. I also run supporting code from the command line operating on the same folders and files. The problem is that when running from ...
4
votes
4answers
2k views

Why cat, grep and other commands can't understand files starting with minus sign? [duplicate]

If I have a file which name starting with single or several minus sign, for example --1 it can't be used as a parameter of many commands. Even if I run cat --1 instead of file content I get ...
3
votes
3answers
2k views

Why is delay after ifconfig down needed before up if changing MAC address?

Hi I made bash script to put down my interface, change MAC address and get it up again. #!/bin/bash INTERFACE_STATUS=$( cat /sys/class/net/eth0/operstate ) echo "$INTERFACE_STATUS" if [ ...
7
votes
3answers
190 views

Getting unexpected colorized output on several commands

I just added this to my .bashrc to get colorized output with less: # Colorize less man pages. export LESS_TERMCAP_md=$'\e[01;34m' export LESS_TERMCAP_us=$'\e[01;33m' export ...
7
votes
2answers
394 views

Use keyboard-interactive authentication when piping ssh output to other command

I'd like to pipe the output of ssh to a different command. For example: ssh myserver cat remote-file | diff local-file - The problem is that myserver asks for a password, but I can't enter it. (For ...
4
votes
2answers
2k views

Optimizing a shell script with long running while loop

I have written a shell script which has to do the following: Capture session commands into one file. Every individual command into separate file. Mail every individual command file content based on ...
4
votes
4answers
2k views

Can I get the opposite of `diff -q` — matching identical files without printing their contents

I have a number of files in a directory, and I want to check that they are all unique. For simplicity, let's say I have three files: foo.txt, bar.txt and baz.txt. If I run this loop, I will check them ...
1
vote
1answer
179 views

mysql database dump script adding fuctionality to skip dumped database

I'm using the following script to dump my database. it works great. I want to add functionality that it first checks if a database table is already dumped or not, if a dump exists then it should be ...
3
votes
2answers
324 views

How change prompt of subshell

I'm trying to create a simple script that, among other things, will create a subshell: #!/bin/sh # setup "${@:-$SHELL}" # teardown The question is: I need to change the default prompt, so for ...
1
vote
4answers
189 views

All subprocesses are Bash (!),

I was trying to use GDB, and found that whenever it attempted to spawn the program I was debugging, Bash was spawned instead (GDB would say starting myProg..., and then Bash would appear. When I ...
5
votes
1answer
3k views

find and rysnc?

I want to be able to search for files over 14 days and over 10k and than rsync those found files to a destination. Is there a way to combine these two commands? find ./ -mtime +14 -size +10k rsync ...
2
votes
2answers
265 views

Is it possible to assign multiple commands to a single hotkey? (bash, xterm)

Back in the day, if my cursor was in the middle of a really long shell command I'd just hit Ctrl+C to get myself a new command prompt. Then I learned about Ctrl+K/C and life was good. Unfortunately ...
3
votes
2answers
201 views

Log in as one user but authenticate as another

This might be a weird question but I wonder if there are possibilities to this. When I'm configuring a system I prefer to be root so that I don't have to sudo everything. However, the root account is ...
2
votes
2answers
1k views

Faster way to find matching patterns from external file grep -f {patternfile} {source} in BASH

In *nix terminal (Bash) os there any other faster way to find a pattern (or excluding them - egrep -v option) than using this: grep -f {patternfile} {source} Using this option is painfully slow for ...
12
votes
3answers
6k views

How to SSH into a specific directory?

I frequently login to a server, then cd into a specific directory. Is it possible to simplify these two commands into one? ssh bob@foo cd /home/guest I'd like to avoid changing anything on 'foo' ...
3
votes
2answers
604 views

$PS1 on Ubuntu VM does not match actual prompt

I am running an Ubuntu VM out of Virtual Box and Vagrant: vagrant@lucid64:~$ uname -a Linux lucid64 2.6.32-38-server #83-Ubuntu SMP Wed Jan 4 11:26:59 UTC 2012 x86_64 GNU/Linux My $PS1 variable ...
8
votes
3answers
2k views

How to tell if terminal session is running within screen

When running a bash script, I would like to be able to tell if it is running within a screen. Is this possible? I want this so that .bashrc can set the colour of the command prompt depending on ...
1
vote
1answer
2k views

Run “logout script” for non-login shells

I have a .bash_logout script that I've put in the home directories of the vagrant and root users of a VM (created, as you have already guessed, with Vagrant) that I'm using for development. The ...
6
votes
4answers
3k views

Why can't we execute a list of commands as different user without sudo?

This question has been asked in a different way in other forums. But there has not been a decent explanation why you can't do the below in bash. #!/bin/bash command1 SWITCH_USER_TO rag command2 ...
2
votes
2answers
2k views

Bash function to scp a file not working

I am new to bash scripting and read basic tutorials online and wrote following simple bash function: function to_company() { scp ${1} username@long.server.name.company.com://home/username } ...
43
votes
10answers
66k views

How do I loop through only directories in bash?

I have a folder with some directories and some files (some are hidden, beginning with dot). for d in *; do echo $d done will loop through all files, but I want to loop only through directories. ...
1
vote
2answers
76 views

Renaming a file to a shorter name easily using something like brace expansion

So I know about using braces when backing up a file to making this sweet and easy like so: cp -v original.xml{,.backup} But if I wanted to restore the original I would have to do this cp -v ...
3
votes
1answer
1k views

Why doesn't terminal show color schema once logged as root?

I'm currently using Debian 7 Wheezy, and I've noticed that the colors palette on terminal (which might be useful to identify among a large set of files and folders) are not enabled once I log as root. ...
5
votes
3answers
1k views

Quote a variable in shell script “if” statement

e.g. if [ "$FOO" = "true" ]; then vs if [ $FOO = "true" ]; then What is the different? Seems both of two statements also works.
3
votes
1answer
404 views

Why does this one-liner clobber files?

I have written this to help me batch-encode some videos: find -name '*.mkv' -exec HandBrakeCLI -Z "Android Tablet" \ -c "1-3" -m -O --x264-tune film -E copy --decomb -s 1 -i {} \ -o `echo {} | tr ...
0
votes
1answer
2k views

How do you time how long a command took to run? [duplicate]

How would you find out how long a running process took to complete? Example: date; dd bs=1m if=/foo of=bar; date ^This example only has 1 second of resolution. Any shell is acceptable.
3
votes
1answer
2k views

Comparing Files based on 5 fields using Awk and Bash

I want to compare File1 and File2 (Separated by spaces) using five fields (Column 1,2,4,5,6). *Logic:*If column 1 and 2 of File1 and File2 match exactly and if the File2 has the same characters as ...
3
votes
2answers
765 views

screen /bin/bash execute script and then go to interactive shell

I am using .byobu/windows to start up some screen sessions, and I'm trying to start a script that will exit to an interactive shell once it has completed. Is this possible? I've tried: screen -t ...
2
votes
3answers
13k views

Testing remote TCP port using telnet by running a one-line command

I have numerous linux boxes with a very limited set of commands and disk space. But it has the telnet command on it. I remotely connect to each of these probes (programmatically) and issue one line ...
1
vote
1answer
175 views

Searching for all the array elements in another array?

This is how I would search for an element in an array. count=${#ARRAY[@]} lsearch() { status=-1 for((i=0;i<count;i++)) do Temp=$1 if [[ $Temp -eq ${ARRAY[i]} ]] then ...
2
votes
3answers
7k views

Executing a program with various parameters (loop)

I have a program, prog, which takes an integer argument when I call it from the terminal, eg: ./prog 10 I would like to execute prog with a range of values, e.g. 10, 20, 30, .... Is there a neat ...