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)

3
votes
1answer
660 views

ssh “-f” don't give back hand in bash when listening to stdout/stderr

Please look at these: ## Does NOT return to the shell, but Ctrl-C can exit ssh -S none -fNR 13018:localhost:22 example.com | cat ## Returns to the shell (no "-S none") ssh -fNR ...
5
votes
2answers
523 views

Can I trace a dash script without modifying its source code?

I would like to trace a shell script for debugging purposes without having to modify its source code (e.g. change the shebang or insert a set -x at the beginning). It is a dpkg postinst script, so not ...
4
votes
2answers
7k views

list the difference and overlap between two plain data set [duplicate]

Possible Duplicate: Linux tools to treat files as sets and perform set operations on them I have two data sets, A and B. The format for each data set is one number per line. For instance, ...
7
votes
2answers
4k views

List elements with spaces in zsh

I've been studying zsh scripting for all of 2 hours at this point and I've hit a wall. I want to go through a list of files that may have spaces in them. I'm open to completely different approaches ...
5
votes
4answers
13k views

What is the syntax of a complex condition in shell?

If want to express the following test in shell (sh) : if ( a == 1 && ( b == 1 || b == 2 )) { ... } So far, the best I have been able to write is this : if [[ $a -eq 1 ]]; then if [[ $b ...
2
votes
2answers
2k views

.sh file cannot be executed without explicitly calling sh

This problem has bugged me so much and I can't find a solution. Sorry in advance if it is a newbie question. Let's say I have a file called run.sh that contains: #! /bin/sh -x x-www-browser ...
3
votes
2answers
1k views

Execute command through SSH

I am writing a script to check whether all the servers in my organization are functioning properly. One of those is Zimbra mail server. I am trying to send a mail through sendmail provided by zimbra ...
9
votes
1answer
10k views

How to hide commands typed in a Linux shell?

Is there a way to hide what I'm typing in a shell, so the terminal doesn't echo my keystrokes, while still keeping the output of the command? For example, if I run ip addr show, the only thing on the ...
66
votes
5answers
47k views

How can I send stdout to multiple commands?

There are some commands which filter or act on input, and then pass it along as output, I think usually to stdout - but some commands will just take the stdin and do whatever they do with it, and ...
3
votes
3answers
822 views

Escaping argument in bash script?

I'm writing a bash script wherein I want to check that one of the arguments passed to it is a valid group. I have the line if [ `grep -c -e '\b$2\b' /etc/group` -eq 0 ]; then echo "Error: $2 is ...
31
votes
4answers
28k views

How can I install the `ll` command on Mac OS X?

I'm using Mac OS X. When I SSH into servers I find the ll command useful, but it's not available on my local machine. How can I install it?
1
vote
4answers
367 views

What is this Bash line supposed to mean?

find . -name "*.html" -exec grep -l somethingtobefound {} \; I was just wondering what the keywords "-name" "-exec" "-l" "{}" "\" and ";" were supposed to signify. Also, I commonly see ...
2
votes
5answers
6k views

script to scan ip range and return results in a certain format

This script scans IP's and returns a status of Up or Down. How can I alter it so it doesn't scan everything twice? As it sits it scans everything and returns the "Up" addresses only and then scans all ...
1
vote
2answers
549 views

What are the key differences between $ENV_VAR and `env_var`?

It's a quite simple asked question I think: What are the key differences between using environment variables just like $HOSTNAME and `hostname`. Where is which appropriate, why are there two ...
3
votes
1answer
2k views

Count in real time the output lines from another output command

I think what I want to do is very easy, but I can not find a way to do that: If I put this command: [root@:Active] tmp # tcpdump -i any -s 65535 host 192.168.1.110 and port 1645 or port 1813 -v -X | ...
3
votes
2answers
187 views

How do I create a structured list of all the files and directories under a particular directory (recursively)?

I need to have an "image" of a file system without actual contents of the files - just all the names and the structure, so that I can read the file and know what files were stored there and how were ...
3
votes
3answers
1k views

Monitoring progress/liveness of background jobs

I have started a background job. Is there a way to know how it is progressing, and whether it has stopped? My command line is like: java weka.classifiers.trees.J48 -t data.arff J48-data.model ...
5
votes
2answers
3k views

the usage of < /dev/null & in the command line

I tried to run an example java program using the following command line. However, I do not know what is the trailing part < /dev/null & used for? java -cp /home/weka.jar ...
20
votes
4answers
4k views

Is it possible to configure ctrl-w (delete word)?

Normally, Ctrl+W deletes back to the last whitespace. Is it possible to configure it to use additional characters, such as /? Edit: To be more clear: I don't want to configure the key for it, I want ...
3
votes
3answers
579 views

Multiple Command List After Shell Conditionals, &&, ||. Shell Script, Dash

I'm trying to do multiple commands after a condition, so for example... [ $VAR ] || echo "Error msg" ; echo "exit" and the Inverse [ -z $VAR ] && echo "Error msg" ; echo "exit" I know ...
2
votes
1answer
981 views

Power broker safe shell or full shell script

I am looking for a script which we can pass as an argument to the pbrun command. Eg: Login: test1 Passwd: xxxxxxx Welcome to Solaris 10 gcmsys01 $ pbrun sysadmins safeksh Here sysadmins is the ...
16
votes
4answers
8k views

Why do some commands 'hang' the terminal until they've finished?

Sometimes you run a program from the terminal, say, lxpanel†. The terminal won't drop you back to the prompt, it'll hang. You can press Ctrl+C to get back to the prompt, but that will kill ...
1
vote
1answer
238 views

How to access user's fpath as opposed to system's fpath with a script?

test.zsh: #!/usr/bin/env zsh for f in ${fpath}; do echo ${f} done outputs: ...
1
vote
2answers
465 views

Unix alias with parameters [duplicate]

Possible Duplicate: How to pass parameters to an alias? I'm wondering if it is possible to define an alias with parameters. For example, when I have to compile a tex file I execute ...
8
votes
7answers
11k views

What's the best way to count the number of files in a directory?

If parsing the output of ls is dangerous because it can break on some funky characters (spaces, \n, ... ), what's the best way to know the number of files in a directory? I usualy rely on find to ...
2
votes
0answers
501 views

What happens when you background a function which calls another function?

Question says it all on the tin. Can someone explain to me what goes on here ? I'm trying to find out how to background a process in a script that calls another function and reliably terminate it when ...
45
votes
5answers
62k views

What does ` (backquote/backtick) mean in bash?

I came across the following command sudo chown `id -u` /somedir And I wonder what is the meaning of the ` symbol. I noticed for instance that while the command above works well the one below does ...
8
votes
3answers
15k views

How to discover a new line using a for loop?

In various places around the web I've found: \015 \012 \x0a - hex \n \r all as synonyms for various newlines / carriage returns... But in this small script I cannot recognise when I come across a ...
1
vote
3answers
582 views

Script to count files matching a pattern in subdirectories

I wrote the following script for finding the number of pdf and tex files from the current directory, including the subdirectories and hidden files. The following code is able to find the number of pdf ...
1
vote
2answers
221 views

conditional expression and expansion

I don't seem to understand how to "test" the conditional operators [[ and [. I tried using various form such as echo [[a=a]] [[a=a]] echo $? and some other things I want to see what they ...
12
votes
4answers
14k views

How do I reverse a for loop?

How do I properly do a for loop in reverse order? for f in /var/logs/foo*.log; do bar "$f" done I need a solution that doesn't break for funky characters in the file names.
3
votes
2answers
1k views

Convert a typescript file to a list of commands (history)

I wanted to record a linux session so I could use it as documentation for a "how to install" guide. I found something on the internet that suggested that the script command would be good for this, and ...
2
votes
2answers
436 views

Why does “$i | sed” not work?

I have this code: if [ $i | sed -e "s/^.*\(.\)$/\1/" = "/" ] then echo "folder" else echo "file" fi where $i is something like this app4/ The code above should get the last char of the ...
2
votes
1answer
3k views

Diff the output of two `awk` commands

I'm trying to compute the difference between the output of two awk commands but my simple attempts at it seem to be failing. Here is what I'm trying: diff $(awk '{print $3}' f1.txt | sort -u) $(awk ...
37
votes
9answers
70k views

How can I run a cron command with existing environmental variables?

How can I run a cron command with existing environmental variables? If I am at a shell prompt I can type echo $ORACLE_HOME and get a path. This is one of my environmental variables that gets set in ...
5
votes
2answers
3k views

Is it possible to get the error message from previous command which failed when the conditional command runs using ||

I have a helper function: function error_exit { /opt/aws/bin/cfn-signal ... exit 1 } This helper function is used to signal an error. Here is an example of usage: /opt/aws/bin/cfn-init -s ...
2
votes
1answer
1k views

How to plot the output of a command

How can I plot the output of this command line with GNUPlot? What should the diagram script look like? I want a histogram. wget -O - -o /dev/null http://www.stackoverflow.com/ | cat | cat | sed ...
6
votes
5answers
3k views

How to avoid a useless use of cat when parsing a file?

I have a file containing a list of directories. For instance /foo/bar/dir1 /foo/bar/dir2 /foo/bar/dir3 I want to create all these directories. Here's what I did: for dir in $(cat myfile); do ...
6
votes
2answers
2k views

Giving some users only SSH and shell access with limited resource usage

I'm trying to make a user that can access my server through SSH and allow it to have a shell, limited to using only, say screen and irssi. And it shouldn't it be able to see other directories except ...
3
votes
1answer
171 views

Testing equivalence for exit status

Are the following two command lists portably equivalent? $foo; echo $? #(1) and $foo && echo 0 || echo $? #(2) Postscript Consider the command exit-status defined so: #!/bin/sh exit ...
3
votes
2answers
172 views

Executables show with character * next to their name in output of ls

I noticed that when I list my executables with ls on my Z shell they show up with a character * next to their name (e.g. see the file in red .test_color_scheme)     What is causing ...
0
votes
1answer
905 views

POSIX and Bash, sh shorthand, for compound if statement

I prefer to do my sh commands in shorthand, And I prefer to be in POSIX. Truthfully, if the script can run on Dash, that is good enough. Which means using the test command [, not the extended [[. I ...
16
votes
11answers
2k views

“Bookmarks” for bash

Navigating several layers of nested directories is often a pain. On Firefox, it is easy because they have bookmarks. So what I'd like to do to bookmarks a file is to type: $ go --add classes ...
11
votes
8answers
27k views

Using sed to convert newlines into spaces

Say I have a shell variable $string that holds some text with several newlines, e.g.: string="this is a test" I would like to convert this string into a new string new_string where all line breaks ...
31
votes
4answers
27k views

Understanding IFS

The following few threads on this site and StackOverflow were helpful for understanding how IFS works: What is IFS in context of for looping? How to loop over the lines of a file Bash, read line by ...
11
votes
1answer
2k views

Readable comments on separate lines in a multi-line bash command with pipelines?

When creating shell scripts using pipelines, and using the backslash to continue lines, I want to insert comments on separate lines, in a robust, readable and portable fashion. For example, given ...
47
votes
2answers
16k views

Prepending a timestamp to each line of output from a command

I wish to prepend a timestamp to each line of output from a command. For example: foo bar baz would become [2011-12-13 12:20:38] foo [2011-12-13 12:21:32] bar [2011-12-13 12:22:20] baz ...where ...
26
votes
3answers
41k views

How can I communicate with a Unix domain socket via the shell on Debian Squeeze?

I’m running a Debian Squeeze web server. I’ve installed memcached on it, and configured memcached to listen on a Unix domain socket (at /tmp/memcached.sock), as it only needs to receive messages from ...
4
votes
5answers
3k views

Difference between 'man ls' and 'ls --help'?

I use both man and --help in Bash programming to get help. For example, to get information about usage of ls command, I may use man ls Or ls --help Both give some what similar output. What is ...
65
votes
9answers
29k views

How to check if a shell is login/interactive/batch

I think I understand the differences between an interactive, a login and a batch shell. See the following links for more help: What is the difference between a 'Login' and an 'Interactive' bash ...