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)

10
votes
8answers
20k 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 ...
28
votes
4answers
20k 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 ...
10
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 ...
40
votes
2answers
12k 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 ...
23
votes
3answers
33k 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 ...
54
votes
7answers
22k 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 ...
7
votes
2answers
1k views

What is word splitting? Why is it important in shell programming?

I'm getting confused about the role word splitting plays in zsh. I have not been exposed to this concept when programming in C, Python or MATLAB, and this has triggered my interest of why word ...
6
votes
1answer
7k views

Changing the default shell without chsh or administrator priviledges

I saw the following snippet in this thread: How to change from csh to bash as default shell sleep 2 if (-x /usr/local/bin/bash) then exec /bin/sh -c '. ~/.profile; exec /usr/local/bin/bash' endif ...
2
votes
1answer
134 views

In terminal, I can search to end of log faster than the data gets there

[The Question] Is there some way to have the pipe/tee/write combo write lines immediately? ... if it can be done, what is the trade-off? [The Backdrop] My script sends a keypress to the terminal, ...
7
votes
2answers
380 views

Send task to background in an “if”

Why is this? if true; then sleep 3 &; fi bash: syntax error near unexpected token `;' I want to run sleep 3 in the background so that the command ["sleep 3" is just an example] would run ...
1
vote
1answer
169 views

How to add methods to rush (Ruby shell)?

I am starting to learn the basics of rush (ruby shell), and I know it is possible to invoke methods such as home['foobar.c'].vi. However, say I wanted to edit it with GNU Emacs, how do I add a new ...
2
votes
4answers
1k views

Access the last file (alphabetically) in a directory

I'm trying to open a file with vim from the command line, the file is in a directory filled with automatically generated files that are prepended with a time stamp. Since I don't know the time stamps ...
2
votes
0answers
83 views

How to get environment variables to persist across login? [duplicate]

Possible Duplicate: How do I set a user environment variable? (permanently, not session) For a project I'm working on, I have a service that runs at startup which calls a script to set ...
31
votes
12answers
2k views

How to quickly store and access often used commands?

I have a lot of commands I routinely need to execute, often with the slightest variation. Right now I'm storing them all in .bash_history and use CTRL-R to access them, but I wonder if there's a ...
4
votes
3answers
800 views

How to create a bounded queue for shell tasks?

I have 1000 gzipped files which I want to sort. Doing this sequentially, the procedure looks pretty straightforward: find . -name *.gz -exec zcat {} | sort > {}.txt \; Not sure that the code ...
2
votes
3answers
4k views

/etc/crontab what does “test -x” stand for

In my /etc/crontab file I have: # m h dom mon dow user command 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / ...
15
votes
2answers
11k views

How are parenthesis interpreted at the command line?

While reading up on how to set up grub, one article mentioned that I need to use a syntax like echo \(hd0,0\) >> /boot/grub/grub.conf or echo '(hd0,0)' >> /boot/grub/grub.conf ...
6
votes
2answers
3k views

Is there a unix command line tool that can analyze font files?

Given a directory of font files (TTF and OTF) I'd like to inspect each font and determine what style (regular, italic, bold, bold-italic) it is. Is there a command line tool for unix flavored ...
4
votes
1answer
1k views

How to produce a file encoded in Mac OS Roman

Inside a bash script I have a line that creates and then inside a loop, append strings to a text file, something like echo $myTextString >> file.txt I need this final file to be formatted ...
22
votes
2answers
33k views

How to check if there are no parameters provided to a command?

How do you check if $* is empty? In other words, how to check if there were no arguments provided to a command?
0
votes
2answers
5k views

clear tmpfs in my case

I am on a Ubuntu machine. I have make a directory under root directory, by: $ sudo mkdir /hello $ sudo mkdir /hello/bye Then I mount tmpfs with size 1024M to /hello/bye by: $ sudo echo "tmpfs ...
1
vote
3answers
151 views

Transferring access privileges from root to regular user

I log in to Ubuntu with the username student. There are some directories only the root user is allowed to access, for example /var/lib/mysql, (I know I can use sudo to access it but it is not what I ...
1
vote
3answers
481 views

Is there a way to beep when tail -F stops to fetch new results?

A few days ago I asked Is there a way to make tail -F beep? Now I want to know if there is any way to use *nix utilities, to beep when a tail -F stops returning new lines for a while! I know, I ...
6
votes
2answers
2k views

Pasting from clipboard to vi-enabled zsh or bash shell

I'd like to be able to paste from the system clipboard (or text selection) into my "vi-like" shell prompt using the keyboard. I normally use zsh and sometimes bash. In both cases, I have the shell set ...
2
votes
2answers
4k views

How to execute this particular shell command from Python?

OK, so, I have this non-functional shell script, which I am rewriting piece by piece in python, except I am getting an "unexpected "|" error" from the shell (see below): #/bin/sh LINES=`cat $@ | wc ...
2
votes
3answers
3k views

shell commands to check & create dir

I am writing a Ruby script inside which I would like to invoke/execute some shell commands. The shell commands I would like to run should check if a directory named 'tmp' under /var/lib/mysql/ exists ...
0
votes
1answer
262 views

Is there more, less, or equal overhead for elisp, as for a bash script, to call awk, ps, etc?

Hopefully the question explains itself well enough. I'm referring to exta time and system resources involved for one vs. the other... I tend to think it would be the same, but I want to go beyond just ...
4
votes
2answers
1k views

mv on a glob pattern does not work without sudo

I am using MySQL database on Ubuntu machine. My MySQL data directory is /var/lib/mysql/ , since I have a database named "db_test" , so, I have a directory named db_test/ under /var/lib/mysql/ . And ...
3
votes
1answer
683 views

How to save the results from ls to a command?

I want the results from an ls to be saved in a var inside a makefile the command is simply the following: ls text* and the result suppose to be something like : text1.txt What i put in my script ...
8
votes
3answers
4k views

What does : ${param:=value} mean?

I read the following in A User's Guide to the Z-Shell: A synonym for ‘true’ is ‘:’; it’s often used in this form to give arguments which have side effects but which shouldn’t be used — ...
3
votes
2answers
4k views

How to reinstall /bin/sh

I have accidentally deleted /bin/sh, and I am trying to to re-install it. If I type sh in the terminal, It says The program 'sh' can be found in the following packages: * bash * dash If I try to ...
1
vote
2answers
1k views

Running any kind of login script when sh is linked to bash

My problem: My web host offers ssh to their shared server. I want to set up a couple of aliases and such, so I'm trying to get a login script of any flavor to run. If my shell was plain bash, I would ...
3
votes
2answers
952 views

Simple shell script needed to move database files

I am using MySQL on Ubuntu machine. I need to physically move around the database files under /var/lib/mysql/ (this is where all the databases directories are located). Say I have two databases, ...
2
votes
3answers
2k views

Trouble getting awk output in for loop

I'm trying to create a script that will check a website for a word. I have a few to check so I'm trying to input them via another file. The file is called "testurls". In the file I list the keyword ...
7
votes
2answers
358 views

Why does 'for anytext; do' loop four times?

Is this a bug or a feature? It seems to happen for unquoted alphanumerics. Running GNU bash, version 4.1.5 for alpha01234; do echo $((++i)); done output: 1 2 3 4
4
votes
1answer
800 views

Fetching user input while running in the background

I am writing a script that prompts the user for input and does some processing afterwards. I was using read to get the data, but then I noticed that when the script is ran with a keyboard shortcut (I ...
28
votes
5answers
49k views

Script to monitor folder for new files?

How do I detect new files in a folder with a bash script? I would like to process the files as soon as they are created in the folder. Is this possible to do so or do I have to schedule a script with ...
3
votes
3answers
2k views

Where do background jobs go?

From gnome-terminal I know the ability to suspend a job with C-z, and then send it to the background. When I close the terminal the process does not end. Where is the job being managed from, or is it ...
1
vote
1answer
213 views

Delete zsh auto completion suggestion

When I use tab-completion in zsh, the shell suggests me files and I discover that I'm in the wrong directory. How can I just delete the suggestion instead of backspace'ing it?
2
votes
2answers
1k views

How do I echo a command and include line returns?

I am writing a bash script, and on a condition I'd like to output ps aux --sort -rss However, when I write : echo `ps aux --sort -rss` everything is on one huge line. How do I run it so it outputs ...
3
votes
2answers
3k views

How to fix bash looking for a program in the wrong dir (Issues setting up NPM on Ubuntu 11.10)

This time I ran the "trusting" install script curl http://npmjs.org/install.sh | sudo sh from the dir /. $ which npm /usr/local/bin/npm $ npm bash: /home/steven/local/bin/npm: No such file or ...
1
vote
2answers
232 views

How to timestamp a transcripted talk?

I'm trying to mark each paragraph of transcripted text with timestamps of when/where it occurs in the audio. mplayer and emacs are getting me close. mplayer, in the terminal, outputs a stream of ...
1
vote
3answers
469 views

Returning a portion of a line matching a pattern

I have a file (file_name) which contains exactly one occurrance of the string "Result: " at the start of a line. I want to print all the characters after the string "Result: " in that line until I ...
15
votes
8answers
20k views

How to compare to floating point number in a shell script

I want to compare two floating point numbers in a shell script. The following code is not working: #!/bin/bash min=12.45 val=10.35 if (( $val < $min )) ; then min=$val fi echo $min
15
votes
3answers
24k views

Confusing use of && and || operators

I was skimming through an /etc/rc.d/init.d/sendmail file (I know this is hardly ever used, but I'm studying for an exam), and I've become a bit confused about the && and the || operators. ...
9
votes
4answers
23k views

Why is echo ignoring my quote characters?

The echo command isn't including the complete text that I give it. For example, if I do: $ echo ' echo PARAM=` grep $ARG /var/tmp/setfile | awk '{print $2}' ` ' It outputs: echo PARAM=` ...
2
votes
1answer
1k views

find command with -execdir not reading flags?

I am trying to locate all .jpg picture files in my current directory and sub-directories and move them to another directory. I want the source files to overwrite the destination files, but that is ...
2
votes
4answers
313 views

Generate lists of page numbers for 2-up duplex printing: 2,3,… and 1,4,…

How can I generate the following increments? 2,3,6,7,10,11,14,15,18,19,22,23,26,27,30,31,34,35,38,39,42,43,46,47,...,135 and ...
2
votes
3answers
2k views

cp launched from code results in cannot stat '/tmp/somedir' works in shell

I'm working on making some scripts more elegant by implementing them in a real x application etc... At some point in the scripts we basically want to take everything from a mounted removable storage ...