Zsh is a shell with many advanced command-line and scripting features.

learn more… | top users | synonyms (1)

2
votes
1answer
184 views

Zsh completion of hadoop commands

Hadoop has a range of commands and subcommands to specify different operations on MapReduce, HFS etc. (e.g. hadoop dfs can be followed by any command from this list). Is there any way to enable ...
18
votes
4answers
6k views

How can I detect if the shell is controlled from SSH?

I want to detect from a shell script (more specifically .zshrc) if it is controlled through SSH. I tried the HOST variable but it's always the name of the computer which is running the shell. Can I ...
3
votes
4answers
1k views

Searching a pattern in file names with number

I have a large number of files in a folder each with the date as the filename. For example 20130101 20130102 20130103 . . . 20130131 similarly for other months 20130201 to 20130230, the pattern is ...
3
votes
1answer
62 views

zsh completion and unknow bzr commands

ZSH's Bazaar completion does not offer any expansion/completion when it does not know the bzr subcommand I am using. In my case, I use bzr qlog but ZSH's /usr/share/zsh/5.0.2/functions/_bzr does not ...
5
votes
3answers
201 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[@]})?
6
votes
3answers
502 views

Remove all but one ( or more ) kind of filetype

I've been trying to find a command to remove all files in a folder but not a kind of filetype. But I seems to not have any luck. What I've tried so far : set extended_glob rm !(*.dmg) # this returns ...
4
votes
1answer
2k views

How to display the name of the current Virtualenv?

I'm using virtualenv, virtualenvwrapper, zsh, oh-my-zsh, terminator, on Crunchbang. I'm trying to display the name of the current virtualenv like so workon example (example)... I've tried many ...
3
votes
2answers
147 views

Is there a hook-like system for shell?

I noticed I like to execute certain actions in a specific order. A hook, as I see it, is basically "do something after event", where event, could be any command with parameters, such as git clone, ...
4
votes
1answer
70 views

How do I copy/yank a multi-line expression I typed at the ZSH prompt?

For example, supposed I'm browsing through my history, and reach this multi-line command I'd typed earlier: ~ >> for f in *; do echo $f done I've enabled vim bindings in the ZLE (bindkey -v), ...
4
votes
1answer
271 views

Oh-My-Zsh overriding my function?

I use ZSH with Oh My Zsh and I am trying to define a function called git, as such: function git() { echo "I'm happy because I am executed!" } I have placed the function definition in ...
4
votes
1answer
307 views

Why doesn't the process substitution <() work with ssh -F

I have some vagrant virtual machines. To log into them I issue the vagrant ssh command. I want to log into them using regular ssh command. The vagrant ssh-config outputs the suitable config file $ ...
7
votes
2answers
2k views

Force title on GNU screen

By default, the title of a screen session is the name of the last command entered, which is fine for me, but in some cases I'd like to change it. I know the command Ctrl-A A, but it only changes the ...
2
votes
2answers
434 views

scp does not display output when used with gnu parallel

I have a short script that uses scp to copy files to a number of remote hosts (yes, I know about rdist and rsync; they both fail to work for a few of the hosts - that's not the point here; I'm only ...
3
votes
1answer
335 views

bind key sequence to Escape, zsh

How would I map jj to Esc in zsh? I'm trying to recreate a key-mapping that I have setup in vim, where I have jj mapped to ESC so that whenever I double-press j, it sends the an <Esc> to ...
1
vote
2answers
67 views

Capturing the name of the file pointed by a symbolic link in a variable

Say I have a symbolic link: /path/to/foo->/path/to/some_file.txt Say I have a shell variable x=/path/to/foo, how can I get some_file.txt in a shell variable y?
2
votes
2answers
305 views

Pipe command to tail: when is the first command aborted?

In this example: $ for i in {1..3}; do sleep 1; echo $i; done | head -n 2 why is the first command (for loop) killed only just before the 3 is displayed ? I expected it to be killed right after ...
7
votes
3answers
3k views

ZSH: search history on up and down keys?

Currently, I have the following in my .zshrc: bindkey '^[[A' up-line-or-search bindkey '^[[B' down-line-or-search However, this only seems to match the content of my current input before a space ...
10
votes
2answers
2k views

Make zsh completion show the first guess on the same line (like fish's)

In Fish when you start typing, autocompletion automatically shows the first autocompleted guess on the line itself. In zsh you have to hit tab, and it shows the autocompletion below. Is there anyway ...
3
votes
2answers
54 views

Where is the function given by “which prompt” defined?

I am used to using "which stuff" do find the file that will be called when I use "stuff". I was quite surprised to see "which prompt" respond with prompt () { local prompt_opts ...
2
votes
0answers
48 views

ZSH and completion of files with newline characters

I am experimenting with ZSH on nasty file names, especially file names with the newline character in it. Here is how I create them: $ touch "filename<hit return here> 1" $ touch ...
3
votes
4answers
472 views

How to prepare files for rsync on a case insensitive filesystem?

I am transferring a large number of files on a HFS+ filesystem. The files are currently on ext2 partitions. I have conflicts due to case insensitivity of the target partition (HFS+). I want to ...
2
votes
1answer
16 views

zsh: how to get file expansion working in print statement

I have the following code which prints recursively all files inside /usr/local/include: % files=(/usr/local/include/**/*(^/)) % print -l $files Is it possible to get rid of the temporary variable? ...
1
vote
1answer
79 views

Making an alias which maps arguments to the middle of the command

I want to alias killapp X to pidof X | xargs kill or kill `pidof X`, but I can't think of a way to do this with just an alias on killapp. How could I do this so I don't have to do killapp X` ?
5
votes
3answers
2k 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
3answers
223 views

How can I search history with what is already entered at the prompt in zsh?

In zsh, I know that I can search history with Ctrl+r. However, oftentimes I start to type a command directly at the prompt, but then realize I should be searching history. When I hit Ctrl+r, it brings ...
0
votes
1answer
292 views

Start up commads in Lubuntu 2 [duplicate]

After posting my question here, Start up commads in LUBUNTU I got no answer so here it is. I have these 2 commands: xinput --set-prop "Razer Razer DeathAdder" "Device Accel Constant Deceleration" 4 ...
2
votes
2answers
94 views

Make zsh show autocomplete choices even when a possible match is entered

On my current system (openSUSE 12.3 with zsh 5.0.2) the autocomplete function does not give me a choice of possible completions if I have already entered a possible completion match. For example, if ...
3
votes
2answers
263 views

List all dotfiles current directory using zsh

How can I list all dotfiles in a directory using zsh.?
4
votes
1answer
85 views

Zsh completion that is insensitive between `_` and `-`

I don't like typing underscores, and would like to type a dash instead, and have zsh autocompletion treat it like it could be either a dash or an underscore. Is this possible with built-in zsh ...
2
votes
1answer
123 views

Zsh - Disable Tab Insert

I'm trying to configure zsh to closely fit how bash behaves before I fully switch, and one behavior I'm trying to modify in zsh is when it inserts a Tab character. I see how it could be helpful for ...
1
vote
1answer
131 views

zsh delete part of the prompt

When I use reverse history search, then it "eats" a part of my prompt. Sometimes when I type a long command which spans to multi lines, my prompt is also lost. Have anyone experience this situation? ...
11
votes
4answers
815 views

Search for a previous command with the same prefix when I press Up at a shell prompt

Coming from a FreeBSD world I wish to make the Linux terminal behave like FreeBSD one, especially the 9.1 version, basically when you type cd in the terminal and push the "up" arrow you can browse all ...
1
vote
0answers
23 views

How to prevent tmux from reading .profile/.zprofile/.bash_profile [duplicate]

The original question Is it possible to override tmux's default behaviour of executing .[z|bash_]profile files on every new session, window and pane? In other words, I'd like it to only execute ...
0
votes
0answers
157 views

gdb debugging in Terminal OS X (10.8.5) with zsh - zsh doesn't know gdb

For my studies I have to run a binary unix-program called bomb with gdb. Some time ago I followed the steps on ...
0
votes
2answers
515 views

zsh alias being overridden somehow

I'm on a system running OS X 10.8.5. I recently tried to alias ls to ls -G -la command. I opened up ~/.zshrc, put in the alias, relaunched the terminal, but the change didn't take effect. Upon ...
1
vote
1answer
393 views

Getting “zsh: command not found: time” when running `time` in subshell

I installed ZSH (and Oh-My-ZSH) on a Ubuntu 12.10 64 bit machine a few days ago. I just tried to do: time (time ls) and got this error: zsh: command not found: time ( time ls; ) 0.00s user 0.00s ...
2
votes
2answers
136 views

Zsh possibly adding quotes to variable value (works in bash though)

I'm fairly new to zsh (shifted yesterday from bash) I had a bash function in bash like vl() { cmd=`echo $1 | sed -r 's/(.+):([0-9]+).+/\1 +\2/g'`; vim $cmd } This basically converts a argument ...
5
votes
1answer
93 views

Do not set $? to non-zero on Control+C

My $PS1 in Zsh includes this expression: %(?. %?.) It means «if exit code of previous command ($?) is true, show $?, else show nothing». This is generally useful, but one thing annoys me: shells set ...
6
votes
3answers
120 views

Excluding . and .. from results in find and ls

Is there any way to prevent find and ls -l from listing . and .. in their results? I never care about seeing this result in the output, and it prevents me from effectively piping their output to wc -l ...
1
vote
1answer
83 views

How can I autocomplete each parameter in a different way?

I have a function called load_pg, which is defined like this: load_pg () { pg_restore --verbose --clean --no-acl --no-owner -h localhost -U $1 -d $2 $3 } And I'm trying to autocomplete each ...
7
votes
4answers
8k 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
3answers
103 views

Is there something like closures for zsh?

I just decided to try zsh (through oh-my-zsh), and am now playing with precmd to emulate a two-line prompt that has right prompts in more than just the last line. So I clone the default theme, and ...
11
votes
2answers
132 views

Cancel completion, but only completion, in zsh

When a completion function takes a long time, I can interrupt it by pressing Ctrl+C (terminal interrupt key, sends SIGINT) or Ctrl+G (bound to send-break). I am then left with the uncompleted word. ...
4
votes
2answers
154 views

Asynchronous RPROMPT?

A friend of mine posted this on StackOverflow, and I thought we might be more likely to get an answer here. His post refers to speed, but we now know that the python script we are using to parse git ...
4
votes
3answers
1k views

.ssh/config to start remote session in zsh

I would like to start a remote session without typing the following command ssh user@remoteserverip -t zsh I know that I can change the host names in the ~/.ssh/config to simply use something like ...
2
votes
1answer
359 views

zsh broke compose key and special chars

I thought I'd switch to zsh, so I did just that with chsh -s /usr/bin/zsh user, unfortunately, it broke my compose key (unresponsive both in the console and in an X terminal); also, when I read email ...
6
votes
1answer
672 views

First characters of the command repeated in the display when completing

The first two chars were repeated while I use Tab to do completion. In the screenshot below, cd is repeated. I have tried rxvt-unicdoe, xterm, terminator. All these terminal emulators have this ...
3
votes
2answers
58 views

Zsh completion for mounts (/run/media/DISK-LABEL)?

I am looking or zsh functionality to expand disk-labels into mountpoins: Example: I have disk with label DISK-LABEL1 mounted on /run/media/god/DISK-LABEL1. Is there a plugin which expands input ...
5
votes
1answer
2k views

Wrapping a command that includes single and double quotes for another command

I recently learned about watch, but am having trouble making it work with relatively sophisticated commands. For example, I would like to ask watch to run the following command on zsh every three ...
14
votes
4answers
3k views

How to edit command line in full screen editor in ZSH?

In bash, using vi mode, if I hit Esc,v, my current command line is opened in the editor specified by $EDITOR and I am able to edit it in full screen before 'saving' the command to be returned to the ...