Tagged Questions
19
votes
3answers
7k views
What does it mean to have a $“dollarsign-prefixed string” in a script?
I just saw this in an init script:
echo $"Stopping Apache"
What is that dollar-sign for?
My research so far:
I found this in the bash manual:
extquote
If set, $'string' and ...
18
votes
4answers
7k views
How do I exit a script in a conditional statement?
I'm writing a bash script where I want to exit if the user is not root. The conditional works fine, but the script does not exit.
[[ `id -u` == 0 ]] || (echo "Must be root to run script"; exit)
...
12
votes
3answers
351 views
When to use redirection to stderr in shell scripts
I know that well-behaved utilities like grep output "normal" messages to stdout, and error messages to stderr.
$ grep '^foo' file1 file2
file1:foo
grep: file2: No such file or directory
When I'm ...
11
votes
4answers
11k views
How can I use bash's if test and find commands together?
I have a directory with crash logs, and I'd like to use a conditional statement in a bash script based on a find command.
The log files are stored in this format:
/var/log/crashes/app-2012-08-28.log
...
10
votes
2answers
3k views
Regular expression in bash script
This is my first time bash scripting so I'm probably making an easy mistake.
Basically, I'm trying to write a script that gets the groups of a user, and if they are in a certain group, it will log ...
9
votes
3answers
14k views
File extensions for unix shell scripts
On wikipedia, the article for .sh says:
For the .sh file extension type, see Bourne shell.
How about other unix shells?
I know that the shebang is used inside the file to indicate an ...
9
votes
6answers
826 views
Text Manipulation Across multiple lines
I Have a file that has text like this:
AAAA
BBBB
CCCC
DDDD
1234
5678
9012
3456
EEEE
7890
etc...
And i want to match up the Alphabetic lines with the Numeric lines so they are like this:
...
9
votes
1answer
2k views
How do I make a shell script that sends output to a process
I'm currently running a server console program in a screen because I need to both read it and occasionally send commands.
I'd like to run the app as a deamon in the background (start/stop it with ...
8
votes
3answers
3k views
How to “send” variable to sub-shell?
I run the following script:
VAR="Test"
sh -c 'echo "Hello $VAR"'
But I get :
# ./test.sh
Hello
How can I "send" the variable VAR of my script to the shell created with sh -c?
8
votes
4answers
302 views
Do you prefer bash scripts or aliases for shortcuts?
I have a ~/bin directory (which is on my PATH) where I store a lot of little 1 or 2 line scripts. Some of them just cd into a directory and run a command on a file, like vim or something. But I also ...
7
votes
2answers
423 views
Check bash/shell script dependencies
Is there a method/command to check for the dependencies of a bash script?
In other words, a response to this question :
Which libraries should a user install to run the script?
I can do this ...
7
votes
1answer
227 views
Parallel execution of bash script
I have a table URL_Experiment in my database (mySQL database). I have 2 million URL links in this table.
For each URL, I am checking if some particular text is present in the URL and updating the ...
7
votes
4answers
12k views
printing colored text using echo
I know that for printing a colored text using echo, for example red color, the code is: echo -e "\e[1;31m This is red text \e[0m"
and I know that in this example, 31 is code of red color and the ...
6
votes
3answers
3k views
How to run a script from another path, and know the script's path?
I need to run a script that access a file in the same path it is located.
For example: I have the script in /home/me/folder/script.sh, and this script will access the file /home/me/folder/myfile. As ...
6
votes
2answers
2k views
bash: Piping for loop output prevents local variable modification
First off, sorry for the title. I'm not sure of the correct terminology so if anyone can improve upon it that would be good.
I am trying to write a simple bash function that takes, as it's arguments, ...
6
votes
1answer
1k views
Reason for ksh obsoleting -eq
The latest version of ksh obsoletes using -eq within [[ ]] blocks, prefering (( )) instead. Why is this? I can't find any documentation on the advantages of (( )) over [[ ]] anywhere, and I find that ...
6
votes
4answers
4k views
Parallel execution of a program on multiple files
I have a small script that loops through all files of a folder and executes a (usually long lasting) command. Basically it's
for file in ./folder/*;
do
./bin/myProgram $file > ./done/$file
...
6
votes
2answers
581 views
How does this find command using “find … -exec sh -c '…' sh {} +” work?
@StephaneChazelas posted the following solution to this Q&A: Having some trouble using “find -exec {} +”.
$ find . -iname "*.extension" -exec sh -c '
exec <command> "$@" <additional ...
6
votes
2answers
75 views
Passing arguments from a file to a bash script
I' ve got this situation:
./
./myscript.sh
./arguments.txt
./test.sh
Inside myscript.sh, i have to run the file test.sh, passing to it the arguments contained inside arguments.txt.
myscript.sh is:
...
5
votes
4answers
8k views
Processing bash variable with sed
Been banging my head off a wall on this
bash variable LATLNG contains a latitude & longitude value in brackets like so
(53.3096,-6.28396)
I want to parse these into a variable called LAT and ...
5
votes
3answers
6k views
Storing output of command in shell variable
I have an operation using cut that I would like to assign result to a variable
var4=echo ztemp.xml |cut -f1 -d '.'
I get the error:
ztemp.xml is not a command
The value of var4 never gets ...
5
votes
3answers
564 views
Walking through files in directory randomly
How to change for track in *.mp3; do so that all .mp3 files in the current directory are walked through but in a random way?
5
votes
3answers
187 views
${#array} vs ${#array[@]}
As far as I can tell both ${#array[@]} and ${#array} evaluate to the number of elements in $array. Is there any reason for preferring the longer form (${#array[@]})?
5
votes
3answers
1k views
Keep running a script via ssh
ssh can use to run remote commands.
ssh [email protected] 'long-script.sh'
I run a long script that will take a lot of time, but I want to close my computer and keep running the script in the remote ...
5
votes
3answers
190 views
How to iterate through a list of files with spaces that is sorted (case insensitive)?
I am doing this in OSX which uses bash but obviously, not all bash conventions are used so hopefully your suggestion is available to me :)
I have the following files
fun bar1.txt
Foo bar2.tXT ...
5
votes
2answers
115 views
Is there a less convoluted way to set the $path array locally within function?
Is there a less laborious way for setting a local version of the $path array than what's shown in the following snippet?
foo () {
local holdpath
holdpath=($path)
local path
...
5
votes
2answers
2k views
assign shortcut key to run a script
I've written a script to change the brightness of my screen.
It's useful when I am working on text mode and shortcut keys of my keyboard to change brightness doesn't work.
Is it possible to run this ...
5
votes
4answers
2k views
How to perform a sed in-place substitution that only creates backups of files that were changed?
I ran the following to replace a term used in all files in the current working directory:
$ find . -type f -print0 | xargs -0 sed -i'.bup' -e's/Ms. Johnson/Mrs. Melbin/g'
This performed the word ...
4
votes
3answers
1k views
Summing up an array inside of awk?
I have the following piece of code:
sum1=
sum2=
declare -a a
echo $temp | awk '{split($0,a,","); name=a[1] ; for(i=2;i<=4;i++) sum1+=a[i] ; for(i=5;i<=7;i++) sum2+=a[i] }'
This code is ...
4
votes
4answers
4k views
Check for Process if Same is Running
Is there a script or a way in linux that when I try to execute a shell script/process, if the same is running, it will prompt that same is running and will exit otherwise it will continue.
4
votes
4answers
2k views
How do you colorize only some keywords for a bash script?
I am running some unit test code. The unit test code outputs regular text. There is a lot of the text so I want to highlight for the user important keywords.
In this case the keywords are "PASS" and ...
4
votes
4answers
2k views
How can I suppress output from grep, so that it only returns the exit status?
I have the grep command. I'm searching for a keyword from a file, but I don't want to display the match. I just want to know the exit status of the grep.
4
votes
2answers
2k views
Iterate over multiple parameters with spaces in bash script
I have a bash script for my RaspberryPi (running Raspbian) that is supposed to take multiple file names as parameter(s) and play one after the other (using omxplayer). The basic structure is this:
...
4
votes
5answers
8k views
Match regex in ksh
I am looking to do something like this in KSH:
if (( $var = (foo|bar)[0-9]*$ )); then
print "variable matched regex"
fi
Is it possible at all?
For the record I'm using Ksh Version M-11/16/88i ...
4
votes
1answer
1k views
Bash script IDE
Is there a bash/ksh/any shell script IDE.
Don't you get annoyed when you forget the space inside if or I don't know, some minor syntax mistakes you do from time to time, but takes you a long time to ...
4
votes
3answers
157 views
shell script problem with using the operators
I am comparing two strings using the levenshtein distance algorithm. I got the PHP implementation of the algorithm from here. I am calling this php implementation from my shell script as below.
...
4
votes
2answers
183 views
Create sub-directories and organize files by date from file name
I have been using the following script to organize my photos into "Date' Directories:
for x in *.JPG; do
d=$(date -r "$x" +%Y-%m-%d)
mkdir -p "$d"
mv -- "$x" "$d/"
done
This script works ...
4
votes
2answers
467 views
Shell script printing the most visited directories
Is there a way to write a bash script with the following functionalities?
Be launched when I press some key or key combination. (not so important requirement)
Identify the 7 most visited directories ...
4
votes
3answers
247 views
Best way to work through / display a tree of images sorted by size
I've got a deep directory tree containing .PNG files. I'd like to find all the .PNG files in the directory, sort them in order of size from smallest to largest, and then display every 50th image.
...
4
votes
2answers
154 views
Dealing with script interruption
I need to iterate over between 120k and 500k files. find handles this well.
find $PWD -type f -path "fragments/*.pdbqt"
For some reason I want to list the same set of files again, in the same ...
4
votes
1answer
90 views
Transform directory structure
I have the following folder structure
root folder
|-al2
|- GER.zip
|- ENG.zip
|-ww
|- GER.zip
|- ENG.zip
and so on. The folder names are random strings.
I want to sort the files in ...
4
votes
1answer
39 views
Memory consumption of a script
Is there way to check the memory (physical & virtual) consumption of a script, of course in the moment of its execution.
Calculating the used memory minus the used memory before and after the ...
4
votes
1answer
169 views
How Can I Automate the Change between a Python Script and a Nohup Python Script?
I have a Raspberry Pi connected to a digital temperature probe, which measures my fermenting beer. A python script reads the temperature every second and prints it to the console, and stores it in a ...
3
votes
5answers
216 views
How can I force a script to use more resources?
I'm running a very time-consuming script which takes many hours to end. Watching top I see that it's only taking 5% of the CPU at best, usually around 3%.
Is there any way to force the script to use ...
3
votes
5answers
124 views
Look if a folder has some files of certain extention
Lets say I have a file structure:
$ cd /home/Desktop
$ ls -d */
Abc/ Qwe/ Zxc/ Rty/
$
Now I want to iterate through every directory and look if they have any .pdf files.
Could some one please ...
3
votes
2answers
122 views
Running commands after event based outputs
there are commands like
iwevent
or
tcpdump -n src host x.x.x.x
that send to the stdout some lines when something happens. Is there any form of running some command inmmediatly after a ...
3
votes
3answers
2k views
Shell Script to Execute Shell Script to All Subdirectories
I am making a script to simplify my daily tasks. Everyday, I have to grep for a few things inside a company server. It was okay, however, now, they have segregated each object into sub directories. I ...
3
votes
2answers
139 views
bash equivalent of zsh's $@[2,$#]
(NB: the motivation for this question is only to improve my bash programming know-how.)
I want to know the bash equivalent of zsh expressions such as $@[2,$#], which directly address a range of a ...
3
votes
2answers
4k views
How can I trim the carriage return from text that is being piped in bash?
I'm using this command to get my last typed command:
history | cut -c 8- | tail -n 2 | head -n 1
It works very well in bash, removing the line numbers, but there is one problem I have with it, (er, ...
3
votes
2answers
392 views
How can I determine if HTML5 player is running in browser?
I would like to find a command-line or a script that will show me if HTML5 player is running or not in a browser (firefox or chromium).
For example, to determine if Flash player is running in a ...