Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Introduction to Linux

1 274 vues

Publié le

Slides for my course: "Introduction to linux"

Publié dans : Technologie
  • Soyez le premier à commenter

Introduction to Linux

  1. 1. Introduction to Linux @yokofakun http://plindenbaum.blogspot.com UMR 1087 - Institut du Thorax. Nantes. France June 25, 2015 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  2. 2. Windows Linux SORT UNIQ JOIN CUT PASTE AWK GREP @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  3. 3. The terminal @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  4. 4. The shell: BASH is running @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  5. 5. Unix keeps files arranged in a hierarchical structure @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  6. 6. home me / dir1 dir2 dir3 other dir1/dir2/file2 /home/me/dir1/dir2/file2 file2 dir1/dir2 /home/me/dir1/dir2 dir1 /home/me/dir1 . /home/me dir3 /home/me/dir3 .. /home ../.. / file4../other /home/other ../other/file4 /home/other/file4 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  7. 7. PROGRAM @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  8. 8. $ programname ( options ) ( f i l e s ) @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  9. 9. Navigation where am I ? $ pwd Go to directory dir1 $ cd d i r 1 Go to directory dir1/dir2 $ cd d i r 1 / d i r 2 Go upper directory $ cd . . Go upper directory and then go to dir4 $ cd . . / d i r 4 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  10. 10. Navigation Go to the root $ cd / Go to my home $ cd ˜ Go to my previous directory $ cd / @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  11. 11. Completion @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  12. 12. CASE matters $ cd d i r 1 $ cd DIR1 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  13. 13. Regular Expression. ’?’ : The question mark indicates there is zero or one of the preceding element. For example, colou?r matches both ”color” and ”colour”. ’*’ : The asterisk indicates there is zero or more of the preceding element. For example, ab*c matches ”ac”, ”abc”, ”abbc”, ”abbbc”, and so on. ’+’ : The plus sign indicates there is one or more of the preceding element. For example, ab+c matches ”abc”, ”abbc”, ”abbbc”, and so on, but not ”ac”. (a—b)* denotes the set of all strings. : A bracket expression. Matches a single character that is contained within the brackets. ˆMatches the starting position within the string. $ Matches the ending position of the string or the position just before a string-ending newline. @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  14. 14. Escape characters. Cariage Return. n Tabulation. t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  15. 15. Shell shortcuts. Arrow-up/down: prev/next in history. Ctr-R : Search history. Ctr-A : Begin line. Ctr-E : End line. Ctr-K : Cut line. Ctr-D and tab : insert tabulation. Ctr-D and tab : insert tabulation. Ctr-D (in pipeline): EOF (End Of File). @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  16. 16. whitespaces matter $ cd my r e s u l t s bash : cd : my: No such f i l e or d i r e c t o r y $ cd ”my r e s u l t s ” $ cd my r e s u l t s @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  17. 17. man $ man man MAN(1) NAME man − an i n t e r f a c e to the on−l i n e r e f e r e n c e SYNOPSIS man [−C f i l e ] [−d ] [−D] [−− warnings[=wa [−−names−only ] [−a ] [−u ] [−−no−subpages ] [−P [−X[ dpi ] ] [−Z] [ [ s e c t i o n ] page . . . ] . . . man −k [ apropos options ] regexp . . . man −K [−w|−W] [−S l i s t ] [− i |− I ] [−− @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  18. 18. apropos $ apropos apropos apropos (1) − search the manual page names and $ apropos pdf pdfcrop (1) − crop pdf f i l e s to t h e i r minimal a2ping (1) − − convert between PS , EPS and PD d v i p d f (1) − Convert TeX DVI f i l e to PDF u s i n dvipdfm (1) − Produce PDF f i l e s d i r e c t l y from d v i p d f t (1) − c r e a t e thumbnail images for use e 2 p a l l (1) − convert a l l EPS f i l e s @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  19. 19. pwd $ pwd /home/ l i n d e n b / s r c / courses / about . l i n u x @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  20. 20. mkdir $ mkdir DIR1 $ mkdir DIR1/DIR2 $ mkdir −p DIR1/DIR3/DIR3 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  21. 21. ls $ l s $ l s −l $ l s −l a $ l s −l a /home/ @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  22. 22. stdin, stderr, stdout @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  23. 23. Redirection $ echo ” Hello ” > f i l e 1 . t x t $ echo ” Hello ” > f i l e 1 . t x t $ echo ” Hello ” > f i l e 1 . t x t $ cat f i l e 1 . t x t Hello $ echo ” Hello ” >> f i l e 2 . t x t $ echo ” Hello ” >> f i l e 2 . t x t $ echo ” Hello ” >> f i l e 2 . t x t $ cat f i l e 2 . t x t Hello Hello Hello @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  24. 24. Reading $ grep Hello << BARBAPAPA > Hello > Hello > world > BARBAPAPA Hello Hello @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  25. 25. Pipe $ gunzip −c input . vcf . gz | grep −v ’#’ | cut − f 1 ,2 ,3 | t r ” t ” ”.” | sed ’ s / chr // ’ | s o r t −t ’ . ’ −k2 ,2 rn | uniq | cat −n 1 1.871334. rs4072383 2 1.870903. rs13303094 3 1.866511. rs71576583 4 1.866319. rs9988021 5 1.861630. rs2879816 6 1.861008. rs28521172 7 1.762273. rs3115849 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  26. 26. echo $ echo ”ABCD” $ echo −n ”ABCD” $ echo −e ”AtBnCD” @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  27. 27. ’file’ Determine what type of data is within a file. $ f i l e ˜/ j e t e r . vcf . gz ˜/Documents/2011028. odp /home/ l i n d e n b / j e t e r . vcf . gz : gzip compressed data , e x t r a f i e l d /home/ l i n d e n b /Documents /2011028. odp : OpenDocument P r e s e n t a t i on @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  28. 28. ’tr’ translate or delete characters. $ echo ”AAAAAAABCD” | t r ”A” ”a” aaaaaaaBCD $ echo ”AAAAAAABCD” | t r −s ”A” ABCD $ echo ”AAAAAAABCD” | t r −d ”A” BCD @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  29. 29. rm $ rm f i l e 1 . t x t f i l e 2 . t x t $ rm −r DIR1/ f i l e 1 . t x t $ rm −i DIR1/ f i l e 1 . t x t $ rm −f DIR1/ f i l e 1 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  30. 30. rmdir $ rmdir DIR1 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  31. 31. mv $ mv DIR1/ f i l e 1 . t x t DIR2/ $ mv olname . t x t newname . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  32. 32. cp $ cp olname . t x t newname . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  33. 33. more $ more f i l e 1 . t x t f i l e 2 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  34. 34. cat $ cat f i l e 1 . t x t f i l e 2 . t x t $ cat −n f i l e 1 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  35. 35. head output the first part of files. $ head f i l e 1 . t x t $ head −n 100 f i l e 1 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  36. 36. tail output the last part of files. $ head f i l e 1 . t x t $ head −n 100 f i l e 1 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  37. 37. grep $ grep Gene1 genes . t x t $ grep −v Gene1 genes . t x t $ grep −i Gene1 genes . t x t $ grep −E ’( Gene1 | Protein1 ) ’ genes . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  38. 38. cut $ cut −d ’ ’ −f1 ,2 ,4 −10 f i l e 1 $ cut −c1−10 f i l e 1 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  39. 39. sort $ s o r t f i l e @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  40. 40. nano @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  41. 41. uniq $ s o r t f i l e | uniq $ s o r t f i l e | uniq −u $ s o r t f i l e | uniq −d @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  42. 42. wc $ wc f i l e @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  43. 43. awk for filtering awk −F ’ ’ ’( $1==” chr1 ” && i n t ( $2 )>10 && i n t ( $2 ) <100) ’ f i l e . vcf @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  44. 44. awk for printing $ echo −e ” chr1 t20 t30 nchr1 t10 t20 ” | awk −F ’ t ’ ’{ p r i n t f ( ”%s:%s−%dn” , $1 , $2 −1 , $3 + 4) ; } ’ chr1 :19−34 chr1 :9−24 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  45. 45. join $ j o i n −t ’ ’ −1 1 −2 1 f i l e 1 . t x t f i l e 2 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  46. 46. comm $ comm f i l e 1 . t x t f i l e 2 . t x t $ comm −12 f i l e 1 . t x t f i l e 2 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  47. 47. gzip , gunzip $ gzip f i l e 1 . t x t $ gunzip −c f i l e 1 . t x t . gz $ gunzip f i l e 1 . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  48. 48. sed Usage: sed ’ s /PATTERN/REPLACEBY/MODIFIER ’ Examples: $ echo ” chr1 chr2 chr3 ” | sed ’ s / chr /CHROM / ’ CHROM 1 chr2 chr3 $ echo ” chr1 chr2 chr3 ” | sed ’ s / chr /CHROM /g ’ CHROM 1 CHROM 2 CHROM 3 $ echo ” chr1 chr2 chr3 ” | sed ’ s /Chr/CHROM / gi ’ CHROM 1 CHROM 2 CHROM 3 $ echo ” chr1 chr2 chr3 ” | sed ’ s / chr /CHROM /2 ’ chr1 CHROM 2 chr3 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  49. 49. cmp $ cmp f i l e 1 f i l e 2 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  50. 50. diff $ d i f f f i l e 1 f i l e 2 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  51. 51. find $ f i n d /path1 / path2 / d i r 2 −name ” ∗. vcf . gz” @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  52. 52. paste $ paste f i l e 1 f i l e 2 f i l e 3 f i l e 4 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  53. 53. curl $ c u r l ” f t p :// f t p .1000 genomes . e b i . ac . uk/ vol1 / f t p / r e l e a s e /20110521/ ALL . wgs . p h a s e 1 r e l e a s e v 3 .20101123. s n p s i n d e l s s v . s i t e s . vcf . gz” | gunzip −c | head ##f i l e f o r m a t=VCFv4 .1 ##INFO=<ID=LDAF, Number=1,Type=Float , D e s c r i p t i on =”MLE A l l e l e Frequency Accounting f o r LD”> ##INFO=<ID=AVGPOST, Number=1,Type=Float , D e s c r i p t i on =”Average p o s t e r i o r p r o b a b i l i t y from MaCH/Thunder”> ##INFO=<ID=RSQ, Number=1,Type=Float , D e s c r i p t i on =”Genotype imputation q u a l i t y from MaCH/ Thunder”> @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  54. 54. curl + NCBI $ c u r l −sg ’ http ://www. ncbi . nlm . nih . gov/ e n t r e z / e u t i l s / esearch . f c g i ?db=pubmed&term=watson [ AU]+ c r i c k [AU]+1953[ Date+−+P u b l i c a t i on ] ’ <?xml v e r s i o n=” 1.0 ” encoding=”UTF−8”?> <eSearchResult > <Count>3</Count> <RetMax>3</RetMax> <RetStart >0</RetStart > <I d L i s t > <Id >13063483</Id> <Id >13054692</Id> <Id >13168976</Id> </I d L i s t > @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  55. 55. curl + NCBI $ c u r l −sg ’ http ://www. ncbi . nlm . nih . gov/ e n t r e z / e u t i l s / e f e t c h . f c g i ?db=pubmed&id =13063483 ,13054692 ,13168976& retmode=xml ’ | grep A r t i c l e T i t l e <A r t i c l e T i t l e >G e n e t i c a l i m p l i c a t i o n s of the s t r u c t u r e of d e o x y r i b o n u c l e i c acid .</ A r t i c l e T i t l e > <A r t i c l e T i t l e >Molecular s t r u c t u r e of n u c l e i c a c i d s ; a s t r u c t u r e for d e ox y r i b os e n u c l e i c acid .</ A r t i c l e T i t l e > <A r t i c l e T i t l e >The s t r u c t u r e of DNA.</ A r t i c l e T i t l e > @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  56. 56. script $ s c r i p t m y f i l e . t x t S c r i p t started , f i l e i s m y f i l e . t x t $ echo ” Hello ” Hello $ exit S c r i p t done , f i l e i s m y f i l e . t x t $ cat m y f i l e . t x t > S c r i p t s t a r t e d on Thu 25 Jun 2015 11:50:43 AM CEST > $ echo ” Hello ” > Hello > $ exit > S c r i p t done on Thu 25 Jun 2015 11:50:52 AM CEST @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  57. 57. bc $ echo ” (13.3∗2) /2.3 ” | bc 11 $ echo ” (13.3∗2) /2.3 ” | bc −l 11.56521739130434782608 @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  58. 58. chown/chmod/chgrp chown p i e r r e f i l e . t x t chgrp b i o i n f o r m a t i c s f i l e . t x t chmod u+rw f i l e . t x t chmod g+r f i l e . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  59. 59. sqlite3 $ s q l i t e 3 test . s q l i t e 3 SQLite v e r s i o n 3. 7. 9 2011−11−01 00:52:41 Enter ” . help ” for i n s t r u c t i o n s Enter SQL statements terminated with a ” ; ” s q l i t e > c r e a t e t a b l e Person (name t e x t ) ; s q l i t e > i n s e r t i n t o Person (name) v a l u e s ( ’ Pierre ’ ) ; s q l i t e > i n s e r t i n t o Person (name) v a l u e s ( ’ Paul ’ ) ; s q l i t e > i n s e r t i n t o Person (name) v a l u e s ( ’ Jacques ’ ) ; s q l i t e > select name from Person ; P i e r r e Paul Jacques @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  60. 60. mysql $ mysql −−user=genome −−host=genome−mysql . cse . ucsc . edu −D hg19 −e ’ select chrom , chromStart , chromEnd , Observed from snp141 where name=” rs25 ” ’ +−−−−−−−+−−−−−−−−−−−−+−−−−−−−−−−+−−−−−−−−−−+ | chrom | chromStart | chromEnd | Observed | +−−−−−−−+−−−−−−−−−−−−+−−−−−−−−−−+−−−−−−−−−−+ | chr7 | 11584141 | 11584142 | A/G | +−−−−−−−+−−−−−−−−−−−−+−−−−−−−−−−+−−−−−−−−−−+ @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  61. 61. R SampleID Dye C on c e n t r a t i on 1l Concentration2 rapp Qt AS Vol E1−4 Cy5 3 ,52 203 ,79 2 ,25 6 ,1 17 ,3 4 ,05 E1−5 Cy3 3 ,14 174 ,16 2 ,22 5 ,2 18 4 ,74 E2−4 Cy3 1 ,64 101 ,18 2 ,25 3 16 ,2 8 ,15 E2−5 Cy3 3 ,41 213 ,74 2 ,26 6 ,4 16 3 ,86 E3−4 Cy3 3 ,11 184 ,15 2 ,22 5 ,5 16 ,9 4 ,48 E3−5 Cy5 3 ,58 189 ,31 2 ,24 5 ,7 18 ,9 4 ,36 mean( samples$Concentration2 ) samples <− read . table ( ” samples2 . t x t ” , dec=” , ” , header=TRUE) mean( samples$ Concentration2 ) @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  62. 62. ’git’ mkdir t e s t cd t e s t g i t i n i t I n i t i a l i z e d empty Git r e p o s i t o r y i n t e s t /. g i t / $ g i t add f i l e . t x t $ g i t commit −m ”Added one f i l e ” [ master ( root−commit) 4954 d33 ] Added one f i l e $ echo ”World ” >> f i l e . t x t $ g i t d i f f d i f f −−g i t a/ f i l e . t x t b/ f i l e . t x t @@ −1 +1,2 @@ H e l l o +World $ g i t add f i l e . t x t $ g i t commit −m ” added h e l l o ” $ g i t log f i l e . t x t ( . . . ) $ g i t rm f i l e . t x t $ g i t checkout f i l e . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  63. 63. ’LaTeX’ documentclass{article} title{My Thesis} author{Pierre} date{September 2015} begin{document} maketitle Hello world! end{document} p d f l a t e x input . tex @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  64. 64. Install a program c u r l −kL −o bwa −0.7.12. z i p −L ” https :// github . com/ lh3 /bwa/ a r c h i v e / 0 . 7 . 1 2 . z i p ” unzip bwa −0.7.12. z i p make −C bwa −0.7.12/ @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  65. 65. bash Scripting @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  66. 66. chmod+x and shebang @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  67. 67. bash script #!/ bin /bash echo ” Hello ” > h e l l o . t x t echo ”World” > world . t x t cat h e l l o . t x t world . t x t > h e l l od w or l d . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  68. 68. make #!/ bin /bash function q u i t { exit } function e { echo $1 } e Hello e World q u i t echo foo @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  69. 69. Simple math echo $((1+1) ) @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  70. 70. Simple loop #!/ bin /bash for i in 1 2 3 4 5 6; do echo item : $i done @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  71. 71. While read #!/ bin /bash cat f i l e . t x t | while read L ; do echo $L done @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  72. 72. Make Scripting @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  73. 73. make a l l : h e l l od w or l d . t x t cat $< h e l l od w or l d . t x t : h e l l o . t x t world . t x t cat $ˆ > $@ h e l l o . t x t : echo ” Hello ” > $@ world . t x t : echo ”World” > $@ clean : rm −f h e l l od w or l d . t x t h e l l o . t x t world . t x t @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux
  74. 74. See also: http://korflab.ucdavis.edu/Unix_and_Perl/current.html http://unix.stackexchange.com/ http://stackoverflow.com/ https://www.biostars.org/ @yokofakunhttp://plindenbaum.blogspot.comUMR 1087 - Institut du Thorax. Nantes. FranceIntroduction to Linux

×