Line 1: |
Line 1: |
| = Introduction = | | = Introduction = |
| | | |
− | GNU Make is often thought of as a tool for managing the compilation of large C programs. This is true, but it's potential is not limited to this! | + | GNU Make is often thought of as a tool for managing the compilation of large C programs. This is true, but its potential is not limited to this! |
| | | |
| At its core, it is a generic pipelining framework that is aware of dependencies and can run steps in parallel. | | At its core, it is a generic pipelining framework that is aware of dependencies and can run steps in parallel. |
| | | |
− | Statistical genetics analyses often requires multitudinous steps to prepare the data, run computationally expensive analyses and then collating the data. | + | Statistical genetics analyses (or any big data analyses in general) often requires multiple steps to prepare the data, running computationally expensive analyses, and then collating the data. |
| | | |
− | Make can potentially save you lots of time and hair pulling especially when your supervisor asks for ALL the analyses again but this time only with rare variants. | + | Make can instead of simply compiling codes, may also execute the steps in your analyses. |
| + | |
| + | Make allows you to redo part of your analyses and rerun only the parts which are affected by the change. |
| + | |
| + | Using Make potentially save you lots of time and hair pulling especially when your supervisor asks for ALL the analyses again but this time only with rare variants. |
| + | |
| + | Using a script to generate a make file allows you to document the steps required in the analysis too and makes it easier in the future when the analysis is revisited. |
| + | |
| + | = Basic Idea = |
| + | |
| + | The general format of a make file is as follows: |
| + | |
| + | <target> : <dependency> ... |
| + | <command 1> |
| + | <command 2> |
| + | |
| + | |
| + | The target is usually a small file that is created using "touch <target>". |
| + | It can be considered as a text and in this case, it is referred via "make <target>" |
| + | |
| + | The dependency(ies) are files. |
| + | |
| + | The commands are single line commands in linux. |
| + | The last command is the touch command usually. |
| + | This allows the creation of a file to signify that the prior commands were executed successfully. |
| + | |
| + | |
| + | A perl script is written to generate the make file, in this script, you may document the analyses and |
| + | allow options to customize the variables in your analyses. |
| + | |
| + | Once the make file is generated, you can run it with make using the -j option for parallelization. |
| + | |
| + | If a part of the analyses has to be re performed, simply delete the relevant target file, make will |
| + | rerun the analyses and redo steps that occur after that particular step. |
| + | |
| + | Some other useful options in Make are -k for running the analyses as far as possible without |
| + | terminating the entire pipeline and -t for generating all the target files chronologically. |
| + | |
| + | For commands that involves a series of pipes, you can use "set pipefail" in a bash environment |
| + | to ensure that the an error is returned if any stage of the pipe fails. If this is not done, the return |
| + | code of the last process in the pipe will be returned and Make will think that this series of commands |
| + | has completed successfully. |
| | | |
| = Example = | | = Example = |
Line 236: |
Line 277: |
| </source> | | </source> |
| | | |
− | = Solution =
| |
| | | |
− | Makefiles are more than just tools for compiling programs. The dependency structure of a makefile
| + | = Generated Makefile = |
− | allows one to run and rerun an analysis pipeline in a convenient fashion.
| + | |
| + | <source lang=css> |
| + | .DELETE_ON_ERROR: |
| + | |
| + | all: /net/fantasia/home/atks/makefile_tutorial/1.OK /net/fantasia/home/atks/makefile_tutorial/2.OK /net/fantasia/home/atks/makefile_tutorial/3.OK /net/fantasia/home/atks/makefile_tutorial/4.OK /net/fantasia/home/atks/makefile_tutorial/5.OK /net/fantasia/home/atks/makefile_tutorial/6.OK /net/fantasia/home/atks/makefile_tutorial/7.OK /net/fantasia/home/atks/makefile_tutorial/8.OK /net/fantasia/home/atks/makefile_tutorial/9.OK /net/fantasia/home/atks/makefile_tutorial/10.OK /net/fantasia/home/atks/makefile_tutorial/11.OK /net/fantasia/home/atks/makefile_tutorial/12.OK /net/fantasia/home/atks/makefile_tutorial/13.OK /net/fantasia/home/atks/makefile_tutorial/14.OK /net/fantasia/home/atks/makefile_tutorial/15.OK /net/fantasia/home/atks/makefile_tutorial/16.OK /net/fantasia/home/atks/makefile_tutorial/17.OK /net/fantasia/home/atks/makefile_tutorial/18.OK /net/fantasia/home/atks/makefile_tutorial/19.OK /net/fantasia/home/atks/makefile_tutorial/20.OK /net/fantasia/home/atks/makefile_tutorial/21.OK /net/fantasia/home/atks/makefile_tutorial/22.OK /net/fantasia/home/atks/makefile_tutorial/23.OK /net/fantasia/home/atks/makefile_tutorial/24.OK /net/fantasia/home/atks/makefile_tutorial/25.OK /net/fantasia/home/atks/makefile_tutorial/26.OK /net/fantasia/home/atks/makefile_tutorial/27.OK /net/fantasia/home/atks/makefile_tutorial/28.OK /net/fantasia/home/atks/makefile_tutorial/29.OK /net/fantasia/home/atks/makefile_tutorial/30.OK /net/fantasia/home/atks/makefile_tutorial/31.OK /net/fantasia/home/atks/makefile_tutorial/32.OK /net/fantasia/home/atks/makefile_tutorial/33.OK /net/fantasia/home/atks/makefile_tutorial/34.OK /net/fantasia/home/atks/makefile_tutorial/35.OK /net/fantasia/home/atks/makefile_tutorial/36.OK /net/fantasia/home/atks/makefile_tutorial/37.OK /net/fantasia/home/atks/makefile_tutorial/38.OK /net/fantasia/home/atks/makefile_tutorial/39.OK /net/fantasia/home/atks/makefile_tutorial/40.OK /net/fantasia/home/atks/makefile_tutorial/41.OK /net/fantasia/home/atks/makefile_tutorial/42.OK /net/fantasia/home/atks/makefile_tutorial/43.OK /net/fantasia/home/atks/makefile_tutorial/44.OK /net/fantasia/home/atks/makefile_tutorial/45.OK /net/fantasia/home/atks/makefile_tutorial/46.OK /net/fantasia/home/atks/makefile_tutorial/47.OK /net/fantasia/home/atks/makefile_tutorial/48.OK /net/fantasia/home/atks/makefile_tutorial/49.OK /net/fantasia/home/atks/makefile_tutorial/50.OK /net/fantasia/home/atks/makefile_tutorial/51.OK /net/fantasia/home/atks/makefile_tutorial/52.OK /net/fantasia/home/atks/makefile_tutorial/53.OK /net/fantasia/home/atks/makefile_tutorial/54.OK /net/fantasia/home/atks/makefile_tutorial/55.OK /net/fantasia/home/atks/makefile_tutorial/56.OK /net/fantasia/home/atks/makefile_tutorial/57.OK /net/fantasia/home/atks/makefile_tutorial/58.OK /net/fantasia/home/atks/makefile_tutorial/59.OK /net/fantasia/home/atks/makefile_tutorial/60.OK /net/fantasia/home/atks/makefile_tutorial/61.OK /net/fantasia/home/atks/makefile_tutorial/62.OK /net/fantasia/home/atks/makefile_tutorial/63.OK /net/fantasia/home/atks/makefile_tutorial/64.OK /net/fantasia/home/atks/makefile_tutorial/65.OK /net/fantasia/home/atks/makefile_tutorial/66.OK /net/fantasia/home/atks/makefile_tutorial/67.OK /net/fantasia/home/atks/makefile_tutorial/68.OK /net/fantasia/home/atks/makefile_tutorial/69.OK /net/fantasia/home/atks/makefile_tutorial/70.OK /net/fantasia/home/atks/makefile_tutorial/71.OK /net/fantasia/home/atks/makefile_tutorial/72.OK /net/fantasia/home/atks/makefile_tutorial/73.OK /net/fantasia/home/atks/makefile_tutorial/74.OK /net/fantasia/home/atks/makefile_tutorial/75.OK /net/fantasia/home/atks/makefile_tutorial/76.OK /net/fantasia/home/atks/makefile_tutorial/77.OK /net/fantasia/home/atks/makefile_tutorial/78.OK /net/fantasia/home/atks/makefile_tutorial/79.OK /net/fantasia/home/atks/makefile_tutorial/80.OK /net/fantasia/home/atks/makefile_tutorial/81.OK /net/fantasia/home/atks/makefile_tutorial/82.OK /net/fantasia/home/atks/makefile_tutorial/83.OK /net/fantasia/home/atks/makefile_tutorial/84.OK /net/fantasia/home/atks/makefile_tutorial/85.OK /net/fantasia/home/atks/makefile_tutorial/86.OK /net/fantasia/home/atks/makefile_tutorial/87.OK /net/fantasia/home/atks/makefile_tutorial/88.OK /net/fantasia/home/atks/makefile_tutorial/89.OK /net/fantasia/home/atks/makefile_tutorial/90.OK /net/fantasia/home/atks/makefile_tutorial/91.OK /net/fantasia/home/atks/makefile_tutorial/92.OK /net/fantasia/home/atks/makefile_tutorial/93.OK /net/fantasia/home/atks/makefile_tutorial/94.OK /net/fantasia/home/atks/makefile_tutorial/95.OK /net/fantasia/home/atks/makefile_tutorial/96.OK /net/fantasia/home/atks/makefile_tutorial/97.OK /net/fantasia/home/atks/makefile_tutorial/98.OK /net/fantasia/home/atks/makefile_tutorial/99.OK /net/fantasia/home/atks/makefile_tutorial/100.OK /net/fantasia/home/atks/makefile_tutorial/all.log.OK /net/fantasia/home/atks/makefile_tutorial/cleaned.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/1.OK: |
| + | srun echo 1 > /net/fantasia/home/atks/makefile_tutorial/1.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/1.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/2.OK: |
| + | srun echo 2 > /net/fantasia/home/atks/makefile_tutorial/2.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/2.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/3.OK: |
| + | srun echo 3 > /net/fantasia/home/atks/makefile_tutorial/3.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/3.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/4.OK: |
| + | srun echo 4 > /net/fantasia/home/atks/makefile_tutorial/4.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/4.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/5.OK: |
| + | srun echo 5 > /net/fantasia/home/atks/makefile_tutorial/5.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/5.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/6.OK: |
| + | srun echo 6 > /net/fantasia/home/atks/makefile_tutorial/6.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/6.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/7.OK: |
| + | srun echo 7 > /net/fantasia/home/atks/makefile_tutorial/7.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/7.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/8.OK: |
| + | srun echo 8 > /net/fantasia/home/atks/makefile_tutorial/8.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/8.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/9.OK: |
| + | srun echo 9 > /net/fantasia/home/atks/makefile_tutorial/9.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/9.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/10.OK: |
| + | srun echo 10 > /net/fantasia/home/atks/makefile_tutorial/10.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/10.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/11.OK: |
| + | srun echo 11 > /net/fantasia/home/atks/makefile_tutorial/11.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/11.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/12.OK: |
| + | srun echo 12 > /net/fantasia/home/atks/makefile_tutorial/12.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/12.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/13.OK: |
| + | srun echo 13 > /net/fantasia/home/atks/makefile_tutorial/13.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/13.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/14.OK: |
| + | srun echo 14 > /net/fantasia/home/atks/makefile_tutorial/14.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/14.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/15.OK: |
| + | srun echo 15 > /net/fantasia/home/atks/makefile_tutorial/15.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/15.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/16.OK: |
| + | srun echo 16 > /net/fantasia/home/atks/makefile_tutorial/16.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/16.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/17.OK: |
| + | srun echo 17 > /net/fantasia/home/atks/makefile_tutorial/17.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/17.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/18.OK: |
| + | srun echo 18 > /net/fantasia/home/atks/makefile_tutorial/18.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/18.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/19.OK: |
| + | srun echo 19 > /net/fantasia/home/atks/makefile_tutorial/19.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/19.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/20.OK: |
| + | srun echo 20 > /net/fantasia/home/atks/makefile_tutorial/20.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/20.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/21.OK: |
| + | srun echo 21 > /net/fantasia/home/atks/makefile_tutorial/21.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/21.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/22.OK: |
| + | srun echo 22 > /net/fantasia/home/atks/makefile_tutorial/22.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/22.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/23.OK: |
| + | srun echo 23 > /net/fantasia/home/atks/makefile_tutorial/23.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/23.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/24.OK: |
| + | srun echo 24 > /net/fantasia/home/atks/makefile_tutorial/24.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/24.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/25.OK: |
| + | srun echo 25 > /net/fantasia/home/atks/makefile_tutorial/25.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/25.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/26.OK: |
| + | srun echo 26 > /net/fantasia/home/atks/makefile_tutorial/26.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/26.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/27.OK: |
| + | srun echo 27 > /net/fantasia/home/atks/makefile_tutorial/27.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/27.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/28.OK: |
| + | srun echo 28 > /net/fantasia/home/atks/makefile_tutorial/28.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/28.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/29.OK: |
| + | srun echo 29 > /net/fantasia/home/atks/makefile_tutorial/29.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/29.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/30.OK: |
| + | srun echo 30 > /net/fantasia/home/atks/makefile_tutorial/30.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/30.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/31.OK: |
| + | srun echo 31 > /net/fantasia/home/atks/makefile_tutorial/31.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/31.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/32.OK: |
| + | srun echo 32 > /net/fantasia/home/atks/makefile_tutorial/32.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/32.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/33.OK: |
| + | srun echo 33 > /net/fantasia/home/atks/makefile_tutorial/33.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/33.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/34.OK: |
| + | srun echo 34 > /net/fantasia/home/atks/makefile_tutorial/34.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/34.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/35.OK: |
| + | srun echo 35 > /net/fantasia/home/atks/makefile_tutorial/35.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/35.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/36.OK: |
| + | srun echo 36 > /net/fantasia/home/atks/makefile_tutorial/36.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/36.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/37.OK: |
| + | srun echo 37 > /net/fantasia/home/atks/makefile_tutorial/37.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/37.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/38.OK: |
| + | srun echo 38 > /net/fantasia/home/atks/makefile_tutorial/38.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/38.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/39.OK: |
| + | srun echo 39 > /net/fantasia/home/atks/makefile_tutorial/39.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/39.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/40.OK: |
| + | srun echo 40 > /net/fantasia/home/atks/makefile_tutorial/40.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/40.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/41.OK: |
| + | srun echo 41 > /net/fantasia/home/atks/makefile_tutorial/41.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/41.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/42.OK: |
| + | srun echo 42 > /net/fantasia/home/atks/makefile_tutorial/42.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/42.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/43.OK: |
| + | srun echo 43 > /net/fantasia/home/atks/makefile_tutorial/43.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/43.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/44.OK: |
| + | srun echo 44 > /net/fantasia/home/atks/makefile_tutorial/44.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/44.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/45.OK: |
| + | srun echo 45 > /net/fantasia/home/atks/makefile_tutorial/45.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/45.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/46.OK: |
| + | srun echo 46 > /net/fantasia/home/atks/makefile_tutorial/46.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/46.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/47.OK: |
| + | srun echo 47 > /net/fantasia/home/atks/makefile_tutorial/47.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/47.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/48.OK: |
| + | srun echo 48 > /net/fantasia/home/atks/makefile_tutorial/48.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/48.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/49.OK: |
| + | srun echo 49 > /net/fantasia/home/atks/makefile_tutorial/49.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/49.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/50.OK: |
| + | srun echo 50 > /net/fantasia/home/atks/makefile_tutorial/50.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/50.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/51.OK: |
| + | srun echo 51 > /net/fantasia/home/atks/makefile_tutorial/51.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/51.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/52.OK: |
| + | srun echo 52 > /net/fantasia/home/atks/makefile_tutorial/52.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/52.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/53.OK: |
| + | srun echo 53 > /net/fantasia/home/atks/makefile_tutorial/53.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/53.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/54.OK: |
| + | srun echo 54 > /net/fantasia/home/atks/makefile_tutorial/54.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/54.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/55.OK: |
| + | srun echo 55 > /net/fantasia/home/atks/makefile_tutorial/55.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/55.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/56.OK: |
| + | srun echo 56 > /net/fantasia/home/atks/makefile_tutorial/56.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/56.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/57.OK: |
| + | srun echo 57 > /net/fantasia/home/atks/makefile_tutorial/57.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/57.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/58.OK: |
| + | srun echo 58 > /net/fantasia/home/atks/makefile_tutorial/58.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/58.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/59.OK: |
| + | srun echo 59 > /net/fantasia/home/atks/makefile_tutorial/59.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/59.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/60.OK: |
| + | srun echo 60 > /net/fantasia/home/atks/makefile_tutorial/60.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/60.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/61.OK: |
| + | srun echo 61 > /net/fantasia/home/atks/makefile_tutorial/61.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/61.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/62.OK: |
| + | srun echo 62 > /net/fantasia/home/atks/makefile_tutorial/62.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/62.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/63.OK: |
| + | srun echo 63 > /net/fantasia/home/atks/makefile_tutorial/63.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/63.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/64.OK: |
| + | srun echo 64 > /net/fantasia/home/atks/makefile_tutorial/64.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/64.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/65.OK: |
| + | srun echo 65 > /net/fantasia/home/atks/makefile_tutorial/65.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/65.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/66.OK: |
| + | srun echo 66 > /net/fantasia/home/atks/makefile_tutorial/66.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/66.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/67.OK: |
| + | srun echo 67 > /net/fantasia/home/atks/makefile_tutorial/67.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/67.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/68.OK: |
| + | srun echo 68 > /net/fantasia/home/atks/makefile_tutorial/68.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/68.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/69.OK: |
| + | srun echo 69 > /net/fantasia/home/atks/makefile_tutorial/69.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/69.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/70.OK: |
| + | srun echo 70 > /net/fantasia/home/atks/makefile_tutorial/70.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/70.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/71.OK: |
| + | srun echo 71 > /net/fantasia/home/atks/makefile_tutorial/71.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/71.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/72.OK: |
| + | srun echo 72 > /net/fantasia/home/atks/makefile_tutorial/72.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/72.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/73.OK: |
| + | srun echo 73 > /net/fantasia/home/atks/makefile_tutorial/73.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/73.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/74.OK: |
| + | srun echo 74 > /net/fantasia/home/atks/makefile_tutorial/74.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/74.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/75.OK: |
| + | srun echo 75 > /net/fantasia/home/atks/makefile_tutorial/75.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/75.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/76.OK: |
| + | srun echo 76 > /net/fantasia/home/atks/makefile_tutorial/76.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/76.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/77.OK: |
| + | srun echo 77 > /net/fantasia/home/atks/makefile_tutorial/77.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/77.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/78.OK: |
| + | srun echo 78 > /net/fantasia/home/atks/makefile_tutorial/78.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/78.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/79.OK: |
| + | srun echo 79 > /net/fantasia/home/atks/makefile_tutorial/79.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/79.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/80.OK: |
| + | srun echo 80 > /net/fantasia/home/atks/makefile_tutorial/80.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/80.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/81.OK: |
| + | srun echo 81 > /net/fantasia/home/atks/makefile_tutorial/81.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/81.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/82.OK: |
| + | srun echo 82 > /net/fantasia/home/atks/makefile_tutorial/82.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/82.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/83.OK: |
| + | srun echo 83 > /net/fantasia/home/atks/makefile_tutorial/83.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/83.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/84.OK: |
| + | srun echo 84 > /net/fantasia/home/atks/makefile_tutorial/84.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/84.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/85.OK: |
| + | srun echo 85 > /net/fantasia/home/atks/makefile_tutorial/85.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/85.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/86.OK: |
| + | srun echo 86 > /net/fantasia/home/atks/makefile_tutorial/86.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/86.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/87.OK: |
| + | srun echo 87 > /net/fantasia/home/atks/makefile_tutorial/87.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/87.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/88.OK: |
| + | srun echo 88 > /net/fantasia/home/atks/makefile_tutorial/88.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/88.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/89.OK: |
| + | srun echo 89 > /net/fantasia/home/atks/makefile_tutorial/89.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/89.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/90.OK: |
| + | srun echo 90 > /net/fantasia/home/atks/makefile_tutorial/90.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/90.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/91.OK: |
| + | srun echo 91 > /net/fantasia/home/atks/makefile_tutorial/91.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/91.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/92.OK: |
| + | srun echo 92 > /net/fantasia/home/atks/makefile_tutorial/92.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/92.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/93.OK: |
| + | srun echo 93 > /net/fantasia/home/atks/makefile_tutorial/93.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/93.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/94.OK: |
| + | srun echo 94 > /net/fantasia/home/atks/makefile_tutorial/94.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/94.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/95.OK: |
| + | srun echo 95 > /net/fantasia/home/atks/makefile_tutorial/95.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/95.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/96.OK: |
| + | srun echo 96 > /net/fantasia/home/atks/makefile_tutorial/96.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/96.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/97.OK: |
| + | srun echo 97 > /net/fantasia/home/atks/makefile_tutorial/97.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/97.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/98.OK: |
| + | srun echo 98 > /net/fantasia/home/atks/makefile_tutorial/98.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/98.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/99.OK: |
| + | srun echo 99 > /net/fantasia/home/atks/makefile_tutorial/99.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/99.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/100.OK: |
| + | srun echo 100 > /net/fantasia/home/atks/makefile_tutorial/100.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/100.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/all.log.OK: /net/fantasia/home/atks/makefile_tutorial/1.OK /net/fantasia/home/atks/makefile_tutorial/2.OK /net/fantasia/home/atks/makefile_tutorial/3.OK /net/fantasia/home/atks/makefile_tutorial/4.OK /net/fantasia/home/atks/makefile_tutorial/5.OK /net/fantasia/home/atks/makefile_tutorial/6.OK /net/fantasia/home/atks/makefile_tutorial/7.OK /net/fantasia/home/atks/makefile_tutorial/8.OK /net/fantasia/home/atks/makefile_tutorial/9.OK /net/fantasia/home/atks/makefile_tutorial/10.OK /net/fantasia/home/atks/makefile_tutorial/11.OK /net/fantasia/home/atks/makefile_tutorial/12.OK /net/fantasia/home/atks/makefile_tutorial/13.OK /net/fantasia/home/atks/makefile_tutorial/14.OK /net/fantasia/home/atks/makefile_tutorial/15.OK /net/fantasia/home/atks/makefile_tutorial/16.OK /net/fantasia/home/atks/makefile_tutorial/17.OK /net/fantasia/home/atks/makefile_tutorial/18.OK /net/fantasia/home/atks/makefile_tutorial/19.OK /net/fantasia/home/atks/makefile_tutorial/20.OK /net/fantasia/home/atks/makefile_tutorial/21.OK /net/fantasia/home/atks/makefile_tutorial/22.OK /net/fantasia/home/atks/makefile_tutorial/23.OK /net/fantasia/home/atks/makefile_tutorial/24.OK /net/fantasia/home/atks/makefile_tutorial/25.OK /net/fantasia/home/atks/makefile_tutorial/26.OK /net/fantasia/home/atks/makefile_tutorial/27.OK /net/fantasia/home/atks/makefile_tutorial/28.OK /net/fantasia/home/atks/makefile_tutorial/29.OK /net/fantasia/home/atks/makefile_tutorial/30.OK /net/fantasia/home/atks/makefile_tutorial/31.OK /net/fantasia/home/atks/makefile_tutorial/32.OK /net/fantasia/home/atks/makefile_tutorial/33.OK /net/fantasia/home/atks/makefile_tutorial/34.OK /net/fantasia/home/atks/makefile_tutorial/35.OK /net/fantasia/home/atks/makefile_tutorial/36.OK /net/fantasia/home/atks/makefile_tutorial/37.OK /net/fantasia/home/atks/makefile_tutorial/38.OK /net/fantasia/home/atks/makefile_tutorial/39.OK /net/fantasia/home/atks/makefile_tutorial/40.OK /net/fantasia/home/atks/makefile_tutorial/41.OK /net/fantasia/home/atks/makefile_tutorial/42.OK /net/fantasia/home/atks/makefile_tutorial/43.OK /net/fantasia/home/atks/makefile_tutorial/44.OK /net/fantasia/home/atks/makefile_tutorial/45.OK /net/fantasia/home/atks/makefile_tutorial/46.OK /net/fantasia/home/atks/makefile_tutorial/47.OK /net/fantasia/home/atks/makefile_tutorial/48.OK /net/fantasia/home/atks/makefile_tutorial/49.OK /net/fantasia/home/atks/makefile_tutorial/50.OK /net/fantasia/home/atks/makefile_tutorial/51.OK /net/fantasia/home/atks/makefile_tutorial/52.OK /net/fantasia/home/atks/makefile_tutorial/53.OK /net/fantasia/home/atks/makefile_tutorial/54.OK /net/fantasia/home/atks/makefile_tutorial/55.OK /net/fantasia/home/atks/makefile_tutorial/56.OK /net/fantasia/home/atks/makefile_tutorial/57.OK /net/fantasia/home/atks/makefile_tutorial/58.OK /net/fantasia/home/atks/makefile_tutorial/59.OK /net/fantasia/home/atks/makefile_tutorial/60.OK /net/fantasia/home/atks/makefile_tutorial/61.OK /net/fantasia/home/atks/makefile_tutorial/62.OK /net/fantasia/home/atks/makefile_tutorial/63.OK /net/fantasia/home/atks/makefile_tutorial/64.OK /net/fantasia/home/atks/makefile_tutorial/65.OK /net/fantasia/home/atks/makefile_tutorial/66.OK /net/fantasia/home/atks/makefile_tutorial/67.OK /net/fantasia/home/atks/makefile_tutorial/68.OK /net/fantasia/home/atks/makefile_tutorial/69.OK /net/fantasia/home/atks/makefile_tutorial/70.OK /net/fantasia/home/atks/makefile_tutorial/71.OK /net/fantasia/home/atks/makefile_tutorial/72.OK /net/fantasia/home/atks/makefile_tutorial/73.OK /net/fantasia/home/atks/makefile_tutorial/74.OK /net/fantasia/home/atks/makefile_tutorial/75.OK /net/fantasia/home/atks/makefile_tutorial/76.OK /net/fantasia/home/atks/makefile_tutorial/77.OK /net/fantasia/home/atks/makefile_tutorial/78.OK /net/fantasia/home/atks/makefile_tutorial/79.OK /net/fantasia/home/atks/makefile_tutorial/80.OK /net/fantasia/home/atks/makefile_tutorial/81.OK /net/fantasia/home/atks/makefile_tutorial/82.OK /net/fantasia/home/atks/makefile_tutorial/83.OK /net/fantasia/home/atks/makefile_tutorial/84.OK /net/fantasia/home/atks/makefile_tutorial/85.OK /net/fantasia/home/atks/makefile_tutorial/86.OK /net/fantasia/home/atks/makefile_tutorial/87.OK /net/fantasia/home/atks/makefile_tutorial/88.OK /net/fantasia/home/atks/makefile_tutorial/89.OK /net/fantasia/home/atks/makefile_tutorial/90.OK /net/fantasia/home/atks/makefile_tutorial/91.OK /net/fantasia/home/atks/makefile_tutorial/92.OK /net/fantasia/home/atks/makefile_tutorial/93.OK /net/fantasia/home/atks/makefile_tutorial/94.OK /net/fantasia/home/atks/makefile_tutorial/95.OK /net/fantasia/home/atks/makefile_tutorial/96.OK /net/fantasia/home/atks/makefile_tutorial/97.OK /net/fantasia/home/atks/makefile_tutorial/98.OK /net/fantasia/home/atks/makefile_tutorial/99.OK /net/fantasia/home/atks/makefile_tutorial/100.OK |
| + | srun cat /net/fantasia/home/atks/makefile_tutorial/1.log /net/fantasia/home/atks/makefile_tutorial/2.log /net/fantasia/home/atks/makefile_tutorial/3.log /net/fantasia/home/atks/makefile_tutorial/4.log /net/fantasia/home/atks/makefile_tutorial/5.log /net/fantasia/home/atks/makefile_tutorial/6.log /net/fantasia/home/atks/makefile_tutorial/7.log /net/fantasia/home/atks/makefile_tutorial/8.log /net/fantasia/home/atks/makefile_tutorial/9.log /net/fantasia/home/atks/makefile_tutorial/10.log /net/fantasia/home/atks/makefile_tutorial/11.log /net/fantasia/home/atks/makefile_tutorial/12.log /net/fantasia/home/atks/makefile_tutorial/13.log /net/fantasia/home/atks/makefile_tutorial/14.log /net/fantasia/home/atks/makefile_tutorial/15.log /net/fantasia/home/atks/makefile_tutorial/16.log /net/fantasia/home/atks/makefile_tutorial/17.log /net/fantasia/home/atks/makefile_tutorial/18.log /net/fantasia/home/atks/makefile_tutorial/19.log /net/fantasia/home/atks/makefile_tutorial/20.log /net/fantasia/home/atks/makefile_tutorial/21.log /net/fantasia/home/atks/makefile_tutorial/22.log /net/fantasia/home/atks/makefile_tutorial/23.log /net/fantasia/home/atks/makefile_tutorial/24.log /net/fantasia/home/atks/makefile_tutorial/25.log /net/fantasia/home/atks/makefile_tutorial/26.log /net/fantasia/home/atks/makefile_tutorial/27.log /net/fantasia/home/atks/makefile_tutorial/28.log /net/fantasia/home/atks/makefile_tutorial/29.log /net/fantasia/home/atks/makefile_tutorial/30.log /net/fantasia/home/atks/makefile_tutorial/31.log /net/fantasia/home/atks/makefile_tutorial/32.log /net/fantasia/home/atks/makefile_tutorial/33.log /net/fantasia/home/atks/makefile_tutorial/34.log /net/fantasia/home/atks/makefile_tutorial/35.log /net/fantasia/home/atks/makefile_tutorial/36.log /net/fantasia/home/atks/makefile_tutorial/37.log /net/fantasia/home/atks/makefile_tutorial/38.log /net/fantasia/home/atks/makefile_tutorial/39.log /net/fantasia/home/atks/makefile_tutorial/40.log /net/fantasia/home/atks/makefile_tutorial/41.log /net/fantasia/home/atks/makefile_tutorial/42.log /net/fantasia/home/atks/makefile_tutorial/43.log /net/fantasia/home/atks/makefile_tutorial/44.log /net/fantasia/home/atks/makefile_tutorial/45.log /net/fantasia/home/atks/makefile_tutorial/46.log /net/fantasia/home/atks/makefile_tutorial/47.log /net/fantasia/home/atks/makefile_tutorial/48.log /net/fantasia/home/atks/makefile_tutorial/49.log /net/fantasia/home/atks/makefile_tutorial/50.log /net/fantasia/home/atks/makefile_tutorial/51.log /net/fantasia/home/atks/makefile_tutorial/52.log /net/fantasia/home/atks/makefile_tutorial/53.log /net/fantasia/home/atks/makefile_tutorial/54.log /net/fantasia/home/atks/makefile_tutorial/55.log /net/fantasia/home/atks/makefile_tutorial/56.log /net/fantasia/home/atks/makefile_tutorial/57.log /net/fantasia/home/atks/makefile_tutorial/58.log /net/fantasia/home/atks/makefile_tutorial/59.log /net/fantasia/home/atks/makefile_tutorial/60.log /net/fantasia/home/atks/makefile_tutorial/61.log /net/fantasia/home/atks/makefile_tutorial/62.log /net/fantasia/home/atks/makefile_tutorial/63.log /net/fantasia/home/atks/makefile_tutorial/64.log /net/fantasia/home/atks/makefile_tutorial/65.log /net/fantasia/home/atks/makefile_tutorial/66.log /net/fantasia/home/atks/makefile_tutorial/67.log /net/fantasia/home/atks/makefile_tutorial/68.log /net/fantasia/home/atks/makefile_tutorial/69.log /net/fantasia/home/atks/makefile_tutorial/70.log /net/fantasia/home/atks/makefile_tutorial/71.log /net/fantasia/home/atks/makefile_tutorial/72.log /net/fantasia/home/atks/makefile_tutorial/73.log /net/fantasia/home/atks/makefile_tutorial/74.log /net/fantasia/home/atks/makefile_tutorial/75.log /net/fantasia/home/atks/makefile_tutorial/76.log /net/fantasia/home/atks/makefile_tutorial/77.log /net/fantasia/home/atks/makefile_tutorial/78.log /net/fantasia/home/atks/makefile_tutorial/79.log /net/fantasia/home/atks/makefile_tutorial/80.log /net/fantasia/home/atks/makefile_tutorial/81.log /net/fantasia/home/atks/makefile_tutorial/82.log /net/fantasia/home/atks/makefile_tutorial/83.log /net/fantasia/home/atks/makefile_tutorial/84.log /net/fantasia/home/atks/makefile_tutorial/85.log /net/fantasia/home/atks/makefile_tutorial/86.log /net/fantasia/home/atks/makefile_tutorial/87.log /net/fantasia/home/atks/makefile_tutorial/88.log /net/fantasia/home/atks/makefile_tutorial/89.log /net/fantasia/home/atks/makefile_tutorial/90.log /net/fantasia/home/atks/makefile_tutorial/91.log /net/fantasia/home/atks/makefile_tutorial/92.log /net/fantasia/home/atks/makefile_tutorial/93.log /net/fantasia/home/atks/makefile_tutorial/94.log /net/fantasia/home/atks/makefile_tutorial/95.log /net/fantasia/home/atks/makefile_tutorial/96.log /net/fantasia/home/atks/makefile_tutorial/97.log /net/fantasia/home/atks/makefile_tutorial/98.log /net/fantasia/home/atks/makefile_tutorial/99.log /net/fantasia/home/atks/makefile_tutorial/100.log > /net/fantasia/home/atks/makefile_tutorial/all.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/all.log.OK |
| + | |
| + | /net/fantasia/home/atks/makefile_tutorial/cleaned.OK: /net/fantasia/home/atks/makefile_tutorial/all.log.OK |
| + | srun rm /net/fantasia/home/atks/makefile_tutorial/1.log /net/fantasia/home/atks/makefile_tutorial/2.log /net/fantasia/home/atks/makefile_tutorial/3.log /net/fantasia/home/atks/makefile_tutorial/4.log /net/fantasia/home/atks/makefile_tutorial/5.log /net/fantasia/home/atks/makefile_tutorial/6.log /net/fantasia/home/atks/makefile_tutorial/7.log /net/fantasia/home/atks/makefile_tutorial/8.log /net/fantasia/home/atks/makefile_tutorial/9.log /net/fantasia/home/atks/makefile_tutorial/10.log /net/fantasia/home/atks/makefile_tutorial/11.log /net/fantasia/home/atks/makefile_tutorial/12.log /net/fantasia/home/atks/makefile_tutorial/13.log /net/fantasia/home/atks/makefile_tutorial/14.log /net/fantasia/home/atks/makefile_tutorial/15.log /net/fantasia/home/atks/makefile_tutorial/16.log /net/fantasia/home/atks/makefile_tutorial/17.log /net/fantasia/home/atks/makefile_tutorial/18.log /net/fantasia/home/atks/makefile_tutorial/19.log /net/fantasia/home/atks/makefile_tutorial/20.log /net/fantasia/home/atks/makefile_tutorial/21.log /net/fantasia/home/atks/makefile_tutorial/22.log /net/fantasia/home/atks/makefile_tutorial/23.log /net/fantasia/home/atks/makefile_tutorial/24.log /net/fantasia/home/atks/makefile_tutorial/25.log /net/fantasia/home/atks/makefile_tutorial/26.log /net/fantasia/home/atks/makefile_tutorial/27.log /net/fantasia/home/atks/makefile_tutorial/28.log /net/fantasia/home/atks/makefile_tutorial/29.log /net/fantasia/home/atks/makefile_tutorial/30.log /net/fantasia/home/atks/makefile_tutorial/31.log /net/fantasia/home/atks/makefile_tutorial/32.log /net/fantasia/home/atks/makefile_tutorial/33.log /net/fantasia/home/atks/makefile_tutorial/34.log /net/fantasia/home/atks/makefile_tutorial/35.log /net/fantasia/home/atks/makefile_tutorial/36.log /net/fantasia/home/atks/makefile_tutorial/37.log /net/fantasia/home/atks/makefile_tutorial/38.log /net/fantasia/home/atks/makefile_tutorial/39.log /net/fantasia/home/atks/makefile_tutorial/40.log /net/fantasia/home/atks/makefile_tutorial/41.log /net/fantasia/home/atks/makefile_tutorial/42.log /net/fantasia/home/atks/makefile_tutorial/43.log /net/fantasia/home/atks/makefile_tutorial/44.log /net/fantasia/home/atks/makefile_tutorial/45.log /net/fantasia/home/atks/makefile_tutorial/46.log /net/fantasia/home/atks/makefile_tutorial/47.log /net/fantasia/home/atks/makefile_tutorial/48.log /net/fantasia/home/atks/makefile_tutorial/49.log /net/fantasia/home/atks/makefile_tutorial/50.log /net/fantasia/home/atks/makefile_tutorial/51.log /net/fantasia/home/atks/makefile_tutorial/52.log /net/fantasia/home/atks/makefile_tutorial/53.log /net/fantasia/home/atks/makefile_tutorial/54.log /net/fantasia/home/atks/makefile_tutorial/55.log /net/fantasia/home/atks/makefile_tutorial/56.log /net/fantasia/home/atks/makefile_tutorial/57.log /net/fantasia/home/atks/makefile_tutorial/58.log /net/fantasia/home/atks/makefile_tutorial/59.log /net/fantasia/home/atks/makefile_tutorial/60.log /net/fantasia/home/atks/makefile_tutorial/61.log /net/fantasia/home/atks/makefile_tutorial/62.log /net/fantasia/home/atks/makefile_tutorial/63.log /net/fantasia/home/atks/makefile_tutorial/64.log /net/fantasia/home/atks/makefile_tutorial/65.log /net/fantasia/home/atks/makefile_tutorial/66.log /net/fantasia/home/atks/makefile_tutorial/67.log /net/fantasia/home/atks/makefile_tutorial/68.log /net/fantasia/home/atks/makefile_tutorial/69.log /net/fantasia/home/atks/makefile_tutorial/70.log /net/fantasia/home/atks/makefile_tutorial/71.log /net/fantasia/home/atks/makefile_tutorial/72.log /net/fantasia/home/atks/makefile_tutorial/73.log /net/fantasia/home/atks/makefile_tutorial/74.log /net/fantasia/home/atks/makefile_tutorial/75.log /net/fantasia/home/atks/makefile_tutorial/76.log /net/fantasia/home/atks/makefile_tutorial/77.log /net/fantasia/home/atks/makefile_tutorial/78.log /net/fantasia/home/atks/makefile_tutorial/79.log /net/fantasia/home/atks/makefile_tutorial/80.log /net/fantasia/home/atks/makefile_tutorial/81.log /net/fantasia/home/atks/makefile_tutorial/82.log /net/fantasia/home/atks/makefile_tutorial/83.log /net/fantasia/home/atks/makefile_tutorial/84.log /net/fantasia/home/atks/makefile_tutorial/85.log /net/fantasia/home/atks/makefile_tutorial/86.log /net/fantasia/home/atks/makefile_tutorial/87.log /net/fantasia/home/atks/makefile_tutorial/88.log /net/fantasia/home/atks/makefile_tutorial/89.log /net/fantasia/home/atks/makefile_tutorial/90.log /net/fantasia/home/atks/makefile_tutorial/91.log /net/fantasia/home/atks/makefile_tutorial/92.log /net/fantasia/home/atks/makefile_tutorial/93.log /net/fantasia/home/atks/makefile_tutorial/94.log /net/fantasia/home/atks/makefile_tutorial/95.log /net/fantasia/home/atks/makefile_tutorial/96.log /net/fantasia/home/atks/makefile_tutorial/97.log /net/fantasia/home/atks/makefile_tutorial/98.log /net/fantasia/home/atks/makefile_tutorial/99.log /net/fantasia/home/atks/makefile_tutorial/100.log |
| + | touch /net/fantasia/home/atks/makefile_tutorial/cleaned.OK |
| + | |
| + | clean: |
| + | -rm -rf /net/fantasia/home/atks/makefile_tutorial/*.OK /net/fantasia/home/atks/makefile_tutorial/*.log |
| + | </source> |
| + | |
| + | = Similar articles = |
| + | |
| + | [http://kbroman.org/Tools4RR/pages/schedule.html Tools for reproducible research] <br> |
| + | [http://bost.ocks.org/mike/make/ Why use make?] <br> |
| + | [http://stackoverflow.com/questions/395234/any-interesting-uses-of-makefiles-to-share Any interesting uses of makefiles to share?] <br> |
| + | [https://www.biostars.org/p/79/ How To Organize A Pipeline Of Small Scripts Together?] |
| + | |
| + | = Acknowledgement = |
| + | |
| + | Thanks to Hyun for introducing this trick. |
| + | |
| + | = Maintained by = |
| | | |
− | Makefiles themselves are not that readable if there are many dependencies. We can use a script
| + | This page is maintained by [mailto:atks@umich.edu Adrian]. |
− | where we can express the analysis pipeline more easily and use it to generate a Makefile.
| |