わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

.zshrc更新

 夏期休暇中に,Windows Subsystem for Linux (WSL/WSL2)やLinuxサーバで使用しているシェル・Zsh用の設定ファイルを更新しました.
 ファイル名は.zshrc,と言いたいところですが細分化しています.
 WSL2用には,cd $CでCドライブに,cd $Tでデスクトップに移動できるようにするための環境変数の記述箇所を近くに移動させ,長年使用していないaliasやfunctionを除去しました.
 1つのaliasに,目が留まりました.

alias cpa='cp -a'

 cp nanka_file dokkano_dirというコマンドを実行したとき,nanka_fileがdokkano_dirにコピーされますが,コピー先のファイルのパーミッションは,コピー元のnanka_fileと同一であるとは限りません.同一にするには,cp -a nanka_file dokkano_dirというコマンドになる*1のですが,上のaliasにより,cpa nanka_file dokkano_dirでよいというわけです.
 逆に,パーミッションをコピーしないことを明示するオプションはないのか…ありました.--no-preserveです.

 JM Projectcpにも,このオプションの記載があることを把握し,あれこれ動作確認をしてから,.zshrcに以下の行を追加しました.

alias cpnp='cp --no-preserve=all'

*1:cpコマンドの-aオプションを使用することで,(オプションを除いた)最初の引数をディレクトリとし,ディレクトリのコピーも行えます.