デフォルトでcp -iを使用してcpにエイリアスを設定する方法


8

コマンドcp file1 file2をエイリアスする良い方法はありcp -i file1 file2ますか?


3
cp、mv、rmなどの破壊的なコマンドのエイリアスを作成することは素晴らしいアイデアですが、それに依存しないでください。特にrootとしては使用しないでください。ある日、あなたは期待したエイリアスのないコンピュータで仕事をするでしょう。そして、あなたがエイリアスを使って間違いを見つけたなら、あなたは失礼な目覚めをするでしょう。
Baard Kopperud 2013年

回答:


12

あなたはあなたの起動スクリプトにエイリアスを入れるべきです:

alias cp='cp -i'

あなたはこれを直接に置くことができますが~/.bashrc、私は私の中に持ってい~/.bashrcます:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

そして~/.bash_aliases私は持っています:

alias realias='source ~/.bash_aliases'
alias cp='cp -i'
alias rm='rm -i'

そして、私がそのファイルに物事を追加/変更したとき、私はそうしますrealias(それはあなたが取り出した実行中のシェルからエイリアスを削除しません、その使用のためにunalias)。

あなたが行う場合man bashとエイリアスを検索あなたは例を見つけるではなくなります。

For almost every purpose, aliases are superseded by shell functions
The (`bash`) shell function alternative for the above alias is:

cp () { command cp -i "$@" ; }

シェル関数はより強力ですが、エイリアスで十分な単純なものに適しています。
私はまだそれらを使用する傾向があります。


2

bashを使用している場合は、Anthonとmichasの回答が適切に機能します。ただし、cshまたはtcshを使用している場合、追加するコマンドは次のようになります。

alias cp "cp -i"

.cshrcファイルに追加します。


1
Unixの初心者はbashのようなシェルを使用している可能性がありますが、完全を期すために+1します:)
CVn

マイケルに感謝します。しかし、初心者は与えられたもので動作します。そして、それは主にシステム管理者に依存します。興味深いことに、私たちのキャンパスでは、学生はSolarisで動作するデフォルトのシェルとしてcsh(tcshでさえも)を取得しています。そして、最初の投稿はUnix初心者だと言っていたので、少なくとも2セントの価値を追加するべきだと考えました。
unxnut 2013年

1
 alias cp="cp -i"

この行をシェル起動スクリプトに挿入します。(おそらく〜/ .bashrc)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.