Command line tools Manfred G. Grabherr. Overview -How do web-based tools work? -What is source code? -How to run things locally? -What is UNIX/Linux?

Slides:



Advertisements
Similar presentations
Linux, it's not Windows A short introduction to the sub-department's computer systems Gareth Thomas.
Advertisements

Learning Unix/Linux Bioinformatics Orientation 2008 Eric Bishop.
Linux+ Guide to Linux Certification, Second Edition
CS 110 Intro to Computer Science I Sami Rollins Fall 2006.
Guide To UNIX Using Linux Third Edition
1 Basics of Linux On linux machine: Login at your home directory Open a “shell” or “terminal” or “xterm” workspace (4) On windows machine Intall linux.
Unix Basics. Systems Programming: Unix Basics 2 Unix Basics  Unix directories  Important Unix file commands  File and Directory Access Rights through.
Basic Unix Dr Tim Cutts Team Leader Systems Support Group Infrastructure Management Team.
UNIX By Darcy Tatlock. 1. Successful Log Into Unix To actively manipulate your website you need to be logged in. Without being logged in you cannot enter.
1 SEEM3460 Tutorial Unix Introduction. 2 Introduction What is Unix? An operation system (OS), similar to Windows, MacOS X Why learn Unix? Greatest Software.
A crash course in njit’s Afs
CS 141 Labs are mandatory. Attendance will be taken in each lab. Make account on moodle. Projects will be submitted via moodle.
Systems Programming Concepts
MCB Lecture #3 Sept 2/14 Intro to UNIX terminal.
1 Day 3 Directories Files Moving & Copying. 2 Case Sensitive First thing to learn about UNIX is that everything is case sensitive. Thus the files: –enda.
Help session: Unix basics Keith 9/9/2011. Login in Unix lab  User name: ug0xx Password: ece321 (initial)  The password will not be displayed on the.
Lesson 7-Creating and Changing Directories. Overview Using directories to create order. Managing files in directories. Using pathnames to manage files.
Linux Directory Navigation. File & Directory Commands This is a minimal list of Unix commands that you must know for file management: ls (list) mkdir.
Linux environment ● Graphical interface – X-window + window manager ● Text interface – terminal + shell.
Essential Unix at ACEnet Joey Bernard, Computational Research Consultant.
COSC513 Project Linux Features Instructor: Prof. Mort Anvari Student: Yingfeng Luo ID: #
Dedan Githae, BecA-ILRI Hub Introduction to Linux / UNIX OS MARI eBioKit Workshop; Nov , 2014.
Computer Programming for Biologists Oct 30 th – Dec 11 th, 2014 Karsten Hokamp  Fill out.
Unix Tutorial for FreeSurfer Users. Helpful To Know FreeSurfer Tutorial Wiki:
FTP Server and FTP Commands By Nanda Ganesan, Ph.D. © Nanda Ganesan, All Rights Reserved.
Unix Tutorial for FreeSurfer Users. Helpful To Know FreeSurfer Tutorial Wiki:
UNIX Commands. Why UNIX Commands Are Noninteractive Command may take input from the output of another command (filters). May be scheduled to run at specific.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
1 Operating Systems and Using Linux Topics What is an Operating System? Linux Overview Frequently Used Linux Commands Some content in this lecture added.
Operating Systems and Using Linux CMSC 104, Lecture 3 John Y. Park 1.
1 Operating Systems and Using Linux Topics What is an Operating System? Linux Overview Frequently Used Linux Commands Reading None.
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
BIF713 Basic Unix/Linux Commands Getting Help with Commands.
November 5, 2015CIS 118 Intro to UNIX What’s a Unix? Unix is an Operating System Designed for high-traffic usage Many variants –Linux, BSD: free versions.
Welcome to CS323 Operating System lab 1 TA: Nouf Al-Harbi NoufNaief.net.
A Genomics View of Unix. General Unix Tips To use the command line start X11 and type commands into the “xterm” window A few things about unix commands:
Getting the most out of the workshop Ask questions!!! Don’t sit next to someone you already know Work with someone with a different skillset and different.
40 Years and Still Rocking the Terminal!
More Unix Naomi Altman. Directories Directory = folder mkdir - makes a new directory rmdir - removes an empty directory cd mydirectory - moves you into.
Linux+ Guide to Linux Certification, Second Edition Chapter 4 Exploring Linux Filesystems.
A Brief Overview of Unix Brandon Bohrer. Topics What is Unix? – Quick introduction Documentation – Where to get it, how to use it Text Editors – Know.
Unix Fundamentals CS 127. File navigation cd - change directory cd /var/log cd /etc/apache2 cd ~/Desktop ~ is a shortcut for the home directory.
Learning basic Unix command It 325 operating system.
Operating Systems and Using Linux Courtesy of John Y. Park 1.
Linux Tutorial Lesson Two *Getting Help in Linux *Data movement and manipulation *Relative and Absolute path *Processes Note: see chapter 1,2,3 from Linux.
+ Introduction to Unix Joey Azofeifa Dowell Lab Short Read Class Day 2 (Slides inspired by David Knox)
Learning Unix/Linux Based on slides from: Eric Bishop.
Intro to GNU/Linux See, Stallman? I said GNU. Are you happy now?
INTRODUCTION TO SHELL SCRIPTING By Byamukama Frank
CMSC 104, Version 9/011 Operating Systems and Using Linux Topics What is an Operating System? Linux Overview Frequently Used Linux Commands Reading None.
Review Why do we use protection levels? Why do we use constructors?
Introduction to Unix for FreeSurfer Users
Exceptional Control Flow
UNIX To do work for the class, you will be using the Unix operating system. Once connected to the system, you will be presented with a login screen. Once.
Development Environment Basics
Some Linux Commands.
Guide To UNIX Using Linux Third Edition
The Linux Operating System
UNIX Basics Internet Technology.
Tutorial of Unix Command & shell scriptS 5027
Tutorial of Unix Command & shell scriptS 5027
Operating Systems and Using Linux
Operating Systems and Using Linux
Operating Systems and Using Linux
Tutorial of Unix Command & shell scriptS 5027
Introduction Paul Flynn
Operating Systems and Using Linux
Operating Systems and Using Linux
Operating Systems and Using Linux
Operating Systems and Using Linux
Presentation transcript:

Command line tools Manfred G. Grabherr

Overview -How do web-based tools work? -What is source code? -How to run things locally? -What is UNIX/Linux? -What is a command line? -What is UPPMAX? -How to run tools? -Where can I learn how to… -Assemble -Annotate -Quantify expression -Etc., etc., etc.

How do web-based tools work?

Browser Compute server Hyper-Text Transfer Protocol (HTTP)

How do web-based tools work? Browser Compute server Hyper-Text Transfer Protocol (HTTP)

The client-server model: limitations -Processing power (everything done on server) -Response time -Number of users -Number of queries -Small tasks  Alternative: run things locally

What is source code? -A computer only understands machine language ; 64-bit "Hello World!" in Linux NASM global _start ; global entry point export for ld section.text _start: ; sys_write(stdout, message, length) mov rax, 1 ; sys_write mov rdi, 1 ; stdout mov rsi, message ; message address mov rdx, length ; message string length syscall ; sys_exit(return_code) mov rax, 60 ; sys_exit mov rdi, 0 ; return 0 (success) syscall section.data message: db 'Hello, world!',0x0A ; message and newline length: equ $-message ; NASM definition pseudo-instruction -Software developers us high-level programming languages #include int main() { cout << “Hello world!” << endl; return 0; }  Compiler or interpreter required

How to run programs locally

-Different execution models, different platform requirements -Java, perl, python: -interpreted, platform independent -Memory and runtime issues -C/C++ -compiled, platform issues -Memory and runtime efficient  Make sure you have the right platform and enough resources!

What is source code? -Most scientific software is free -Source code is available: -GPL, LGPL, BSD, etc. -Preferred OS: GNU/Linux (GPL!)

What is GNU/Linux? -UNIX: Linux-based: Android -UNIX-based: Mac OS X -Open Source Operating System -Available on virtually all platforms -Many different distributions

The Tree of GNU/Linux?

What is a command line?

What is a command line? p

What is a command line? pw

What is a command line? pwd

What is a command line? pwd /home/mangr224/test/ryggrad

Commands Files ls --- lists your files ls -l --- lists your files in 'long format', which contains lots of useful information, e.g. the exact size of the file, who owns the file and who has the right to look at it, and when it was last modified. ls -a --- lists all files, including the ones whose filenames begin in a dot, which you do not always want to see. There are many more options, for example to list files by size, by date, recursively etc. more filename --- shows the first part of a file, just as much as will fit on one screen. Just hit the space bar to see more or q to quit. You can use /pattern to search for a pattern. emacs filename --- is an editor that lets you create and edit a file. See the emacs page.emacs page mv filename1 filename2 --- moves a file (i.e. gives it a different name, or moves it into a different directory (see below) cp filename1 filename2 --- copies a file rm filename --- removes a file. It is wise to use the option rm -i, which will ask you for confirmation before actually deleting anything. You can make this your default by making an alias in your.cshrc file.alias diff filename1 filename2 --- compares files, and shows where they differ wc filename --- tells you how many lines, words, and characters there are in a file chmod options filename --- lets you change the read, write, and execute permissions on your files. The default is that only you can look at them and change them, but you may sometimes want to change these permissions. For example, chmod o+r filename will make the file readable for everyone, and chmod o-r filename will make it unreadable for others again. Note that for someone to be able to actually look at the file the directories it is in need to be at least executable. See help protection for more details.help protection

Commands Directories Directories, like folders on a Macintosh, are used to group files together in a hierarchical structure. mkdir dirname --- make a new directory cd dirname --- change directory. You basically 'go' to another directory, and you will see the files in that directory when you do 'ls'. You always start out in your 'home directory', and you can get back there by typing 'cd' without arguments. 'cd..' will get you one level up from your current position. You don't have to walk along step by step - you can make big leaps or avoid walking around by specifying pathnames.pathnames pwd --- tells you where you currently are. Finding things ff --- find files anywhere on the system. This can be extremely useful if you've forgotten in which directory you put a file, but do remember the name. In fact, if you use ff -p you don't even need the full name, just the beginning. This can also be useful for finding other things on the system, e.g. documentation. grep string filename(s) --- looks for the string in the files. This can be useful a lot of purposes, e.g. finding the right file among many, figuring out which is the right version of something, and even doing serious corpus work. grep comes in several varieties (grep, egrep, and fgrep) and has a lot of very flexible options. Check out the man pages if this sounds good to you.

What is UPPMAX - A BIG computer! Two clusters: Kalkyl Tintin Storage space CPU hours Batch interface: SLURM  Cut up problem into smaller problems, if possible

How to run tools? -Many bioinformatics tools are already installed on UPPMAX -If not, you can ask them to install -Or: build them yourself!  Follow the instructions

How do I learn how to… -Assemble genomes -Annotate genomes -Assemble transcriptomes -Map reads to a reference -Call variants -Process ChIP-Seq data -Compare genomes -Align sequences -Find selective sweeps -Find signatures of adaptive evolution -Find differentially expressed genes -Build gene trees -Associate SNPs with disease or phenotype -And, and, and…

How do I learn how to… -Assemble genomes -Annotate genomes -Assemble transcriptomes -Map reads to a reference -Call variants -Process ChIP-Seq data -Compare genomes -Align sequences -Find selective sweeps -Find signatures of adaptive evolution -Find differentially expressed genes -Build gene trees -Associate SNPs with disease or phenotype -And, and, and…  Take a course ( SciLifeLab, etc.)

Questions?