この記事は約11分45秒で読むことができます。

1つのファイルを元にリネームしつつ複数ファイルにブレース展開

実行例

コード表示

[oracle@centos rr]$ grep ")\s*{" test/make/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'echo test/__test.sh test/@'
test/__test.sh test/_test_call_dynamic_cmd.sh
test/__test.sh test/_test_cmd_test_clean.sh
test/__test.sh test/_test_grp.sh
test/__test.sh test/_test_join.sh
test/__test.sh test/_test_split.sh
test/__test.sh test/_test_replica_cmd.sh
test/__test.sh test/_test_sort_cmd_with_str.sh
test/__test.sh test/_test_sort_cmd_with_numkey.sh
test/__test.sh test/_test_replace_cmd.sh
test/__test.sh test/_test_grp_rn.sh
test/__test.sh test/_test_mk_decopd_dynamic_cmd_non_tac.sh
test/__test.sh test/_test_mk_decopd_dynamic_cmd_tac.sh
test/__test.sh test/_test_mk_pd_dynamic_cmd_tac.sh
test/__test.sh test/_test_mk_pd_dynamic_cmd_non_tac.sh
test/__test.sh test/_test_mk_ascii_dynamic_cmd.sh
test/__test.sh test/_test_mk_ascii_code_non_lf.sh
test/__test.sh test/_test_mk_ascii_code.sh
test/__test.sh test/_test_mk_ascii_char_non_lf.sh
test/__test.sh test/_test_mk_ascii_char.sh
test/__test.sh test/_test_radical_replica_str.sh
test/__test.sh test/_test_gradual_non_tac_replica_str.sh
test/__test.sh test/_test_gradual_tac_replica_str.sh
test/__test.sh test/_test_mk_pd_tac_cmd.sh
[oracle@centos rr]$ grep ")\s*{" util/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'echo test/__test.sh test/@'
test/__test.sh test/_test_lpd.sh
test/__test.sh test/_test_rpd.sh
test/__test.sh test/_test_deco_ful_rev.sh
test/__test.sh test/_test_deco_ful.sh
test/__test.sh test/_test_deco_ful_pd.sh
test/__test.sh test/_test_deco_lft_lpd.sh
test/__test.sh test/_test_deco_lft.sh
test/__test.sh test/_test_deco_rgt_rpd.sh
test/__test.sh test/_test_deco_rgt.sh
[oracle@centos rr]$ grep ")\s*{" test/make/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'cp test/__test.sh test/@'
[oracle@centos rr]$ grep ")\s*{" util/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'cp test/__test.sh test/@'
[oracle@centos rr]$ tree
.
├── README.md
├── cnst
│   └── clr
│       ├── def_bgclr_cnst.sh
│       └── def_fgclr_cnst.sh
├── func
│   ├── clr
│   │   ├── def_bgclr_func.sh
│   │   └── def_fgclr_func.sh
│   └── exe
│       └── def_call_func.sh
├── iput
│   └── clr
├── main
│   ├── _main.sh
│   ├── make
│   │   ├── mk_call_func.sh
│   │   ├── mk_clr_cnst.sh
│   │   ├── mk_clr_func.sh
│   │   └── mk_exe_cmd.sh
│   ├── oput
│   │   └── mk_dynamic_cmd
│   └── tmp
├── test
│   ├── __test.sh
│   ├── _test_call_dynamic_cmd.sh
│   ├── _test_cmd_test_clean.sh
│   ├── _test_deco_ful.sh
│   ├── _test_deco_ful_pd.sh
│   ├── _test_deco_ful_rev.sh
│   ├── _test_deco_lft.sh
│   ├── _test_deco_lft_lpd.sh
│   ├── _test_deco_rgt.sh
│   ├── _test_deco_rgt_rpd.sh
│   ├── _test_gradual_non_tac_replica_str.sh
│   ├── _test_gradual_tac_replica_str.sh
│   ├── _test_grp.sh
│   ├── _test_grp_rn.sh
│   ├── _test_join.sh
│   ├── _test_lpd.sh
│   ├── _test_mk_ascii_char.sh
│   ├── _test_mk_ascii_char_non_lf.sh
│   ├── _test_mk_ascii_code.sh
│   ├── _test_mk_ascii_code_non_lf.sh
│   ├── _test_mk_ascii_dynamic_cmd.sh
│   ├── _test_mk_decopd_dynamic_cmd_non_tac.sh
│   ├── _test_mk_decopd_dynamic_cmd_tac.sh
│   ├── _test_mk_pd_dynamic_cmd_non_tac.sh
│   ├── _test_mk_pd_dynamic_cmd_tac.sh
│   ├── _test_mk_pd_tac_cmd.sh
│   ├── _test_radical_replica_str.sh
│   ├── _test_replace_cmd.sh
│   ├── _test_replica_cmd.sh
│   ├── _test_rpd.sh
│   ├── _test_sort_cmd_with_numkey.sh
│   ├── _test_sort_cmd_with_str.sh
│   ├── _test_split.sh
│   ├── make
│   │   └── mk_exe_cmd.sh
│   ├── oput
│   └── tmp
└── util
    └── def_deco_func.sh

15 directories, 48 files

[oracle@centos rr]$ grep ")\s*{" util/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'cp util/* test/@'

[oracle@centos rr]$ grep ")\s*{" test/make/*.sh | sed -e 's/(){//g' | xargs -I@ bash -c 'echo _test@.sh' | xargs -I@ bash -c 'cp test/make/* test/@'

Leave a Reply

Your email address will not be published. Required fields are marked *