2011-04-08 12 views
0

「RMI」私はLinuxのエイリアス質問

rmi File.txt 

を実行している場合ように、それは実際には基本的に私は、引数の順序を変更したい

ls * | grep -v File.txt | xargs rm -rf 

を実行します。

+0

sh、csh、tcsh、bash、zsh、...のいずれのUNIXシェルについて言及していませんか? – Tilo

+0

私はtcshを使用しています – Jean

答えて

1

エイリアスではできません。スクリプトを書く必要があります。

+1

+1エイリアスを使用することは不可能ではないことに注意してください。これは、エイリアスが特定の意味を持っているというOPの部分での貧弱な用語である可能性があります。 – corsiKa

+0

あなたはスクリプトは必要ありません。エイリアスを書くのと同じくらい簡単なシェル関数を書くことができます。 – EdvardM

3

スクリプト:RMIとしてこの-Save

#!/usr/bin/env bash 
ls * | grep -v $1 | xargs rm -rf 

-do:chmod a+x rmi

はパスに追加-Then。

1

スクリプトは必要ありません。代わりにエイリアスを、あなたはシェル関数を記述することができます:〜/ .bashrcや〜/ .zshrc、または別のエイリアスファイル、例えば内

myfunc() { 
    ls * | grep -v $1 | xargs rm -rf 
} 

# usage: myfunc <filename> 

店も。このイディオムを使用してください

test -f ~/.zaliases && source ~/.zaliases 

あなたのdotrcファイルにあります。

1

ありがとうございます。 tcshのでは簡単です:

\! 

は、あなたもこれを行うには "検索" 使用することができます

"RMI" 以下のすべての引数を展開し

alias rmi 'ls * | grep -v \! | xargs rm -rf' 

、これはそれを行う必要があります... ..

find . -type f | grep -v \! | xargs rm -rf' 

...その斧には注意してください! (rm -rf)

関連する問題