The shell is unix's command-line interface. You can type commands in a shell interactively, or write scripts to automate tasks. Use this tag for questions applying to /bin/sh and most compatible shells (ash, bash, ksh, zsh, …).

learn more… | top users | synonyms (1)

2
votes
3answers
1k views

Color scheme is lost on shell change

My default login shell is ksh which shows my default color scheme which I set via putty. But when I change my shell to bash my color scheme is lost. Is there a way to retain the color scheme? EDIT: ...
9
votes
3answers
24k views

Escape sequences with “echo -e” in different shells

I just noticed that it seems like the flag -e does not exist for the echo command in my shell on Linux. Is this just a messed up setting or is it "normal"? Some code as an example: #!/bin/sh echo -e ...
5
votes
4answers
3k views

Get vertical cursor position

This might sound pretty weird, but I know how to set the vertical cursor position in Bash like this: echo -e "\e[12H" This moves the cursor to the 12th line (starting with 1). So how do I get the ...
6
votes
4answers
8k views

Capture output of a bash command, parse it and store into different bash variables

Explanation: I have a small bash script which simply runs any Linux command (e.g. say ifconfig) The typical output of ifconfig is something like this: eth0 Link encap:Ethernet HWaddr ...
13
votes
2answers
2k views

How to background a command chain?

I want to background a command chain like cp a b && mv b c && rm a. I have tried doing cp a b && mv b c && rm a & but this only backgrounds the last process. How ...
20
votes
2answers
2k views

What's the best distro/shell-agnostic way to set environment variables?

The question says it all. I currently use Arch Linux and the zsh, but I'd like a solution that (at minimum) works both on VTs and in xterms and also (hopefully, preferably) will continue to work if I ...
4
votes
5answers
978 views

Only output most recent 10 (or n) lines of a lengthy command output

I have a command that outputs thousands of lines. I actually need these lines in order to see the progress of the command. But I do not need to see more than the 10 most recent lines. How can I do ...
19
votes
4answers
34k views

Why doesn't my ~/.bash_profile work?

I'm using Linux Mint. My login shell (cat /etc/passwd | grep myUserName) is bash. After I start my graphical desktop environment and run terminal emulator from it, I could see that .bash_profile is ...
5
votes
2answers
238 views

Filtering the result of the find command, so that it returns only directories

Is it possible to get only the results from find that are directory paths? Using find with some option, or using grep or some other utility the results are piped into as a filter? I thought something ...
3
votes
2answers
667 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 ...
4
votes
2answers
1k views

Exiting out of an infinite reboot loop in startup (rc.local)

I am creating a startup script (called from rc.local) in Debian Squeeze. The startup script checks for a variable value from a file, decrements the variable and writes it back to the file, then if the ...
4
votes
3answers
403 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. ...
6
votes
2answers
3k views

What does “cd &” mean?

I know how to change directory from terminal by typing cd <directory> but here's the scenario. I was using terminal to go on my git repository's folder. glennRepositories ...
4
votes
2answers
15k views

Shell Script - syntax error near unexpected token `else'

With the following shell script, why I am getting errors syntax error near unexpected token `else' Shell Script echo "please enter username" read user_name echo "please enter password" read -s ...
1
vote
1answer
1k views

Error not a valid identifierd when executing shell script [duplicate]

I have the following shell script in order to connect to database and do some tasks. echo Please enter userid: read USER_NAME echo "Please enter password:" read -s PASS SID=${ORACLE_SID} if [ ...
1
vote
0answers
60 views

Where does backtick and single quote come from when denoting commands e.g. `prog'? [duplicate]

When referring to commands in tutorials, man pages, and articles I see authors use the backtick and single quote in this way: `./configure' `make' I believe I have seen gcc denote points of failure ...
0
votes
1answer
690 views

Cat into fifo not running through bash

I want to script these few lines mkfifo my.fifo cat >my.fifo & cat my.fifo | nc remotehost.tld 10000 But the line cat >my.fifo & When i run it manually it works, but not through ...
1
vote
2answers
3k views

Find and move directories based on file type and date

I have a directory "New Movies" containing 200+ subdirectories "Movie Name (year)". The subdirectories "Movie Name (year)" contains a single video file (avi/mkv) and several related jpg/xml files. I ...
2
votes
2answers
574 views

Bashrc disable-ing all but a given command for a given user

Is it possible to have bashrc grab every single command the user types, save for those containing a given word? Like the way you can use aliases to change what the user meant, you can alias for ...
22
votes
2answers
10k views

Is there an easy way to programmatically extract IP address?

Is there an easy way to programmatically extract IP address, without tedious parsing of ifconfig? I would not mind simple command output processing using sed to do it but not processing multiline ...
2
votes
3answers
761 views

Unexpected condition outcome in a ksh script

I'm new to shell scripting. The below code is not working. Can anyone help me on this? I've given explanation for all the lines: #!/bin/ksh cat example.txt | while read LINE # ...
38
votes
2answers
70k 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 ...
2
votes
4answers
1k views

Can awk use field identifiers also for shell strings (variables)?

Well, this apparently is not possible the way I'm trying it. This alternate approach to obtain bar as a resulting string works, though: #!/bin/bash path1=/usr/tmp/foo/bar/baz awk -F/ '{print $5}' ...
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 ...
0
votes
1answer
149 views

Converting a loop of code to function

I want to retry a command for 5 times with an interval of 20 seconds. I want this command to be passed as a method parameter. How to do it? And once the function is written how to pass the value to ...
1
vote
2answers
3k views

Busy box Read file line by line

There is no read applet comming with busy box. Is there any way to read a txt file line by line using busybox? What I have now is while read line do echo $line done < "$InputFile"
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 ...
3
votes
3answers
8k views

Escaping * with Regular Expressions and Grep

I have a file that has unique lines that start with 2 stars (**). However when I run a grep command for grep \*\* fileName I get all of the lines in the file. This is very unusual, and what I ...
3
votes
2answers
177 views

Absolute path to currently-running zsh?

Sometimes the output of ps -p $$ shows the absolute path to the currently-running zsh, % ps -p $$ PID TTY TIME CMD 1027 ttys005 0:00.11 /usr/local/bin/zsh but not always: % ps -p ...
2
votes
2answers
2k views

Booting into shell instead of graphical interface [duplicate]

I have a laptop with lubuntu. It's great but I wish LXDE was optional instead of autostarting. So my question is, what can I do to make it boot directly into a text only mode, not loading anything ...
1
vote
4answers
208 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 ...
6
votes
1answer
5k 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 ...
3
votes
1answer
315 views

watch command to delete files in a directory every N secs

I thought of using watch command to delete files in a directory every N seconds with the command running in background. This is what I was planning to use: nohup watch -n1200 rm -rf ...
13
votes
2answers
679 views

Why does `exit &` not work?

I don't understand why exit & does not work. Why does it not?
5
votes
1answer
1k views

Send stdin to console and compressed file

I'm running a propietary program which generates text output. Kind of like a logger. logger I'd like to both view this output on the terminal to watch the server breathe, and send it to a text ...
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
2k 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.
2
votes
1answer
6k views

i/o format with printf in bash-shell

I am trying to output the results of my shell script using printf. To keep the results aligned in column, I am using tab as: printf "%s\t %s\t %s\t %s\t %s\t %s\t %s\n" $i $est $var_m $jk $mst $var_M ...
1
vote
1answer
485 views

How to give variable to a KSH script with a CGI?

index.sh is in the cgi-bin directory: #!/usr/bin/ksh echo 'Content-type: text/html <html><body> <form action=FOO.KSH method=POST> <input type=submit value=fgrep ...
1
vote
1answer
148 views

Numbering the output of grep

When we're filtering the output with grep, is there any way we can get line numbered output, like we get with cat -n? I'm not asking for the grep -n option which shows the line number of the match in ...
0
votes
1answer
562 views

Stream grep from subprogram, not tail file

Does a simple one liner exist for grepping continuous output from a program rather than just a file? Now just as an example, I would like to skip lines containing PHPUnit in them. For obvious reasons ...
3
votes
2answers
518 views

See extended attributes with coreutils ls on Mac

I have coreutils installed via MacPorts on my Mac running OS X 10.8.4. I have ls set to use the coreutils version of ls [(GNU coreutils) 8.21] when available: if [ -e /opt/local/libexec/gnubin ]; ...
1
vote
1answer
62 views

How to customize a backend running job completion message?

Here is the situation, I am running a command (my own executives), in bash shell (Ubuntu), say something like this: [newbie@office currentCaseAFolder]$ FEMSolver & So that the FEMSolver job is ...
28
votes
4answers
48k views

What does ampersand mean at the end of a shell script line?

sh sys-snap.sh & What is sh? What is sys-snap.sh? Why I should put & at the end of the line? Can anyone explain the syntax? Without the & the script won't go back to the prompt till I ...
5
votes
6answers
7k views

How to append data of multiple files into single file?

For example: I have 01.txt and 02.txt files and need to append data of these files into new file new.txt. It should append data based on 01.txt followed by 02.txt files. Before this I have to delete ...
3
votes
2answers
3k views

Why does `at` warn me that commands will be executed using /bin/sh? What if I want a different shell?

I tried to use at from within a script of mine and it prints: warning: commands will be executed using /bin/sh How would I use different shell if I wanted?
7
votes
4answers
3k views

Bash script to rename files from a text file source

I'm fairly new to bash; I can just about perform simple administrative tasks with simple commands 1 at a time. However, I've been tasked with renaming some files in a directory using a text file as ...
11
votes
2answers
12k views

How can you log every command typed

How can you log every command someone has entered into the shell? I'm asking on both the basis of protecting yourself if you are logged into someone else's server and something breaks, or if someone ...
1
vote
3answers
392 views

Taking Backup of files of particular limit in unix

Here is the scenario, I have 1000 files in a folder each ~3 MB. I want to zip all files into 50MB each zip and remove the original files. NOTE: 50MB may contain 20 files or 10 files but that zip ...
3
votes
4answers
691 views

Show video files with its size

I need all the .mp4 files' dimensions to be printed with the file name. For example: 1_VIDEO.mp4 1204x680