From: Peng Li Date: Fri, 19 Aug 2016 14:05:31 +0000 (+0800) Subject: add study note file X-Git-Url: http://47.100.26.94:8080/?a=commitdiff_plain;h=5c411170a6aebdf4fd123ab90e679b5552620221;p=dotfiles.git add study note file --- diff --git a/.gitignore b/.gitignore index 55d6ad1..14e7a6c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -\#* \ No newline at end of file +\#* +temp/* \ No newline at end of file diff --git a/emacs.d/config.org b/emacs.d/config.org index 1e38901..8e6bbe7 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -988,7 +988,7 @@ extend org-mode's easy templates, refer to [[http://coldnew.github.io/coldnew-em (add-to-list 'org-structure-template-alist '("E" "#+BEGIN_SRC emacs-lisp :tangle yes :results silent\n?\n#+END_SRC")) (add-to-list 'org-structure-template-alist - '("S" "#+BEGIN_SRC sh\n?\n#+END_SRC")) + '("S" "#+BEGIN_SRC sh :results output replace\n?\n#+END_SRC")) (add-to-list 'org-structure-template-alist '("p" "#+BEGIN_SRC plantuml :file uml.png \n?\n#+END_SRC")) (add-to-list 'org-structure-template-alist diff --git a/study-note.org b/study-note.org new file mode 100644 index 0000000..4caf549 --- /dev/null +++ b/study-note.org @@ -0,0 +1,86 @@ +#+TITLE: Study Note +#+AUTHOR: Peng Li +#+EMAIL: seudut@gmail.com +#+DATE: 2016-08-18 + +* Programming Languages +** gnuplog + +1. normal +#+BEGIN_SRC gnuplot :exports code :file ./temp/sin.png + reset + plot sin(x)/x +#+END_SRC + +#+RESULTS: +[[file:./temp/sin.png]] + +2. plot with data file +#+BEGIN_SRC + +#+END_SRC + + +* Perl One Line Command +#+BEGIN_SRC sh :exports both :results output replace + perl --help +#+END_SRC + +#+RESULTS: +#+begin_example + +Usage: perl [switches] [--] [programfile] [arguments] + -0[octal] specify record separator (\0, if no argument) + -a autosplit mode with -n or -p (splits $_ into @F) + -C[number/list] enables the listed Unicode features + -c check syntax only (runs BEGIN and CHECK blocks) + -d[:debugger] run program under debugger + -D[number/list] set debugging flags (argument is a bit mask or alphabets) + -e program one line of program (several -e's allowed, omit programfile) + -E program like -e, but enables all optional features + -f don't do $sitelib/sitecustomize.pl at startup + -F/pattern/ split() pattern for -a switch (//'s are optional) + -i[extension] edit <> files in place (makes backup if extension supplied) + -Idirectory specify @INC/#include directory (several -I's allowed) + -l[octal] enable line ending processing, specifies line terminator + -[mM][-]module execute "use/no module..." before executing program + -n assume "while (<>) { ... }" loop around program + -p assume loop like -n but print line also, like sed + -s enable rudimentary parsing for switches after programfile + -S look for programfile using PATH environment variable + -t enable tainting warnings + -T enable tainting checks + -u dump core after parsing program + -U allow unsafe operations + -v print version, patchlevel and license + -V[:variable] print configuration summary (or a single Config.pm variable) + -w enable many useful warnings + -W enable all warnings + -x[directory] ignore text before #!perl line (optionally cd to directory) + -X disable all warnings + +Run 'perldoc perl' for more help with Perl. + +#+end_example + +1. Used as =grep= +#+BEGIN_SRC sh + perl -ne 'print if /expression/' xxx.log; +#+END_SRC + +Or +#+BEGIN_SRC sh + perl -wnl -e '/keyword/ and print;' xxx.log +#+END_SRC + + +2. Used as =awk= +#+BEGIN_SRC sh + perl -ne 'print "$1\n" if /aaa=(\d+)\s.*/' xxx.log; +#+END_SRC + +3. +#+BEGIN_SRC sh + perl -pe 'some code' < input.txt > output.txt +#+END_SRC +