The function tag has no wiki summary.
3
votes
1answer
163 views
for loop in bash function
I recently wrote the following bash function:
makeaudiobook () {
count=1
almbumartist=$2
for f in $1; do
preprocess $f > $f-preprocessed
text2wave $f-preprocessed -o $f.wav
...
1
vote
2answers
48 views
Best way to call command within a shell function having the same name [duplicate]
I like to encapsulate commands within shell-functions using the same name. But to avoid the shell-function calling itself recursively, I specify the complete path of the command as the following ...
4
votes
1answer
41 views
How can I create a function in zsh that calls an existing command with the same name?
How can I write a function in zsh that invokes an existing command with the same name as the function itself? For example, I've tried this to illustrate my question:
function ls
{
ls -l $1 $2 $3
...
2
votes
1answer
27 views
How to get functions propagated to subshell?
Solaris / sh
I have a few functions defined in a file which gets loaded via
. ./some_file.sh
When I start a subshell with
sh
All my function definitions are lost but when I do
env
I do ...
4
votes
2answers
71 views
How to define a Bash function that can be used by different scripts
I have defined a bash function in my ~/.bashrc file. This allows me to use it in shell terminals. However, it does not seem to exist when I call it from within a script.
How can I define a bash ...
2
votes
3answers
76 views
What are commands to find shell keywords, built in functions and user defined functions?
I was discussing with my friend on how the commands are parsed in the shell, and he told me that bash searches the command in following order
List of aliases
List of shell keywords
List of ...
8
votes
3answers
141 views
Running an executable in PATH with the same name as an existing function
Sometimes I define a function that shadows an executable and tweaks its arguments or output. So the function has the same name as the executable, and I need a way how to run the executable from the ...
4
votes
2answers
164 views
Bash function not working in Zsh
I have been slowly migrating from Bash to Zsh and have got to the point where everything I have moved across is working well, with one exception.
I have a couple of functions in my .bashrc that I use ...
3
votes
2answers
95 views
Display the function body in bash
I have setup several functions in my .bashrc file. I would like to just display the actual code of the function and not execute it, to quickly refer to something.
Is there any way, we could see the ...
4
votes
1answer
79 views
what is the zsh equivalent of bash's export -f
So I started using zsh. I like it all right. It seems very cool and slick, and the fact that the current working directory and actual command line are on different lines is nice, but at the same time, ...
1
vote
1answer
43 views
How to reference a script-local dictionary in a Vim mapping?
Somehow I'm not able to execute the following mapping:
function! s:MySurroundingFunctionIWantToKeep()
let s:Foobar={'foo': 'bar'}
map \42 :echo <sid>Foobar.foo<cr>
endfunction
call ...
2
votes
3answers
128 views
How to reverse-match a string in the Vim programming language?
I want to find the last index of any character in the [abc] set in the abcabc string but the search should start from the end of the string:
" Returns the 0th index but I want the 5th.
let ...
2
votes
2answers
117 views
Bash: passing braces as arguments to bash function
I love using the following pattern for searching in files:
grep --color=auto -iRnHr --include={*.js,*.html,} --exclude-dir={release,dev,} "span" .
I'd like, however, to have this one wrapped into a ...
4
votes
1answer
58 views
View shell function's current definition
So I am editing bashrc constantly, and I have a terminal open with a working function definition, although bashrc has been updated with a wrong function definition. (Because the definition do not ...
2
votes
2answers
107 views
How to set an alias on a per-directory basis?
Suppose you have an alias go, but want it to do different things in different directories?
In one directory it should run cmd1, but in another directory it should run cmd2
By the way, I have an ...
7
votes
4answers
567 views
Executing user defined function in a find -exec call
I'm on Solaris 10 and I have tested the following with ksh (88), bash (3.00) and zsh (4.2.1).
The following code doesn't yield any result:
function foo {
echo "Hello World"
}
find somedir -exec ...
3
votes
3answers
144 views
Function caller positional parameters
I need to read and write the positional parameters $@ of a function's caller. The Bash man page says that:
A shell function is an object that is called like a simple command and
executes a ...
2
votes
2answers
84 views
Is there any way I can fit this into my ~/.bashrc as a function?
I just discovered this useful bit of code on this useful-looking website.
#!/bin/sh
exec tclsh "$0" ${1+"$@"}
proc main {} {
set lines [lrange [split [read stdin] \n] 0 end-1]
set count ...
7
votes
1answer
299 views
How to get current buffer's filename in emacs?
One of the main features I miss about Vim, is that it always saves the filename of the current file in the % buffer (more info). That allows launching commands easily like:
;; compile current file
:! ...
2
votes
1answer
129 views
awk function with a number parameter for the column you want to print
I want to use my awk shortcut as a function, so that I can pass the column number which then prints me the output. My aliases are:
alias A="| awk '{print \$1}'
alias G="| grep -i'
Instad of typing:
...
2
votes
1answer
59 views
Restoring an option at the end of a function in zsh
I'm writing a zsh shell function (as opposed to a script) where I would really like the extended_glob option to be enabled. But since the function runs in the caller's context, I don't want to clobber ...
2
votes
3answers
310 views
Infinitely Nested Directories
Let me start off by saying this is a Mac Terminal I'm using. Not Linux, but I assumed I would get the best answers here as it has to do with Unix and the command line not really anything about Mac ...
1
vote
1answer
130 views
Switching source and destination (or undoing the mv, cp operation)
mv or cp commands both expect source and destination as arguments.
In case you want to undo the change you made, or just change the source and destination you supplied before, what is the quickest ...
-1
votes
1answer
115 views
Interactive commands in Bash functions [closed]
How can I make a function interactive when using commands like ssh and less inside of a function?
function spo{
ls | less
}
For example how can I interact with less?
2
votes
1answer
235 views
Why do Unix-like systems execute a new process when calling a new function?
Why do Unix-like systems execute a new process when calling a function rather than a dynamic library? Creating a new process is costly in terms of performance when compared to calling a dynamic ...
2
votes
0answers
223 views
How to enable `sudo` with custom functions?
Recently I learned you can enable sudo for custom aliases as follows:
alias sudo='sudo ' # note: the space is required!
The reason this works is the following:
If the last character of the ...
0
votes
1answer
171 views
How to understand the result returned by “nm” command
I used nm command to inspect the function names in a .so library.
And the result I got is like this:
00009634 T _Z24ICTCLAS_ParagraphProcessPKciPc9eCodeTypeb
00009764 T ...
4
votes
4answers
337 views
How can I pass a command line argument into a shell script?
I know that shell scripts just run commands as if they were executed in at the command prompt. I'd like to be able to run shell scripts as if they were functions... That is, taking an input value or ...
1
vote
2answers
365 views
Script to create files in a template
I just wrote a function in my ~/.bashrc that will let me create a folder for a new website with one command. The function looks like this:
function newsite() {
mkcd "$*" # mkdir and cd into it
...
76
votes
9answers
4k views
In Bash, when to alias, when to script, and when to write a function?
It's taken me almost 10 years of Linux usage to ask this question. It was all trial and error and random late-night internet surfing.
But people shouldn't need 10 years for this. If I were just ...
7
votes
7answers
411 views
Doing simple math on the command line using bash functions: $1 divided by $2 (using bc perhaps)
Sometimes I need to divide one number by another. It would be great if I could just define a bash function for this. So far, I am forced to use expressions like
echo 'scale=25;65320/670' | bc
but ...
7
votes
2answers
304 views
How do I redefine a bash function in terms of old definition?
Is there any way I can redefine a bash function in terms of its old definition? For example I would like to add the following block of code to the preamble of the function command_not_found_handle (),
...
1
vote
3answers
145 views
What does the “(8)” in fsck(8) mean?
*nix commands (and functions?) have a number with them, like fsck(8), killall(1), etc.
What does the number mean?
1
vote
3answers
1k views
Can I “export” functions in bash?
source some_file
some_file:
doit ()
{
echo doit $1
}
export TEST=true
If I source some_file the function "doit" and the variable TEST are available on the command line. But running this script:
...
3
votes
3answers
1k views
How to pass a string parameter on bash function?
I have this code that does work:
get_parameter ()
{
echo "$query" | sed -n 's/^.*name=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"
}
But I want to replace the "name" with the parameter that I pass ...
4
votes
2answers
187 views
Combine two commands in .bash_profile
In my .bash_profile file, I'd like to setup a single command alias that is two commands that execute one after another. The first command takes an argument from the command line and the second is ...
2
votes
2answers
533 views
creating simple command for sudo apt-get install?
I need to run these commands very often:
sudo apt-get install <package>
sudo apt-get remove <package>
Can I make it simple like:
install <package>
remove <package>
I ...
2
votes
3answers
206 views
Prefix every argument with -o in BASH
How do I prefix -p to every argument passed to my function?
Modifying the arguments themselves and creating a new array are both fine.
-1
votes
2answers
201 views
calling functions within a function
I need to fetch the results of different time ranges and email the results, but i am having trouble with the email part of the script,
how can i send an email with both results? (15min range and ...
4
votes
4answers
394 views
Is it possible to source a file in bash, but skipping specific functions?
Suppose I have bash_functions.sh:
function test(){
}
function test2(){
}
And in my ~/.bashrc I do:
source ~/bash_functions.sh
Is it possible to, when sourcing it, avoid sourcing a specific ...
1
vote
3answers
872 views
alias or bash function does not work
When I create
alias wd='ps -ef | grep java | awk {'print $2 " " $9'} | egrep "(A|B|C|D)"'
or
function wd () {
ps -ef | grep java | awk '{print $2}' ...
}
in my .bashrc file, I get errors. ...
1
vote
4answers
1k views
how can i use sudo within a function?
i have written a function which acts in a similar way to tee but also pre-pends a datestamp. everything works fine except when i want to output to a file which is only root writeable (in my case a ...
4
votes
4answers
429 views
How to make functions created in a bash script persist like those in .bashrc?
My .bashrc was getting a little long, so I decided to break it up into smaller files according to topic and then call these files from within .bashrc as so
#my long .bashrc file
bash .topic1rc
bash ...
2
votes
2answers
2k views
Passing a variable to a bash script when sourcing it in another bash script?
Suppose I have in main.sh:
NAME="$HOME"
if [ -f "$HOME/install.sh" ]
then
. "$HOME/install.sh" "$NAME"
fi
and in install.sh:
echo $1
This is supposed to echo /home/user/, but it echoes ...
9
votes
1answer
806 views
bash functions vs scripts
This site says, "Shell functions are faster [than aliases]. Aliases are looked up after functions and thus resolving is slower. While aliases are easier to understand, shell functions are preferred ...