User Tools

Site Tools


tutorials:linux_essential_commands

Linux Essential Commands

  • man: manual page.
    • Explains how to use a shell command.
    • man <COMMAND>: For example, to find out how to use man, type man man
  • ls: list directory content
  • cd: change directory
  • pwd: print working directory
  • wc: count word, line, character, and byte
  • head: display the first part of a file
    • default = 10 lines, change by -n
    • example: head -n 20 filename (display the first 20 lines of filename)
  • tail: display the last part of a file
  • cat: concatenate and print the file
  • more: display output one screen at a time
  • cp: copy file
    • cp <SOURCE> <DESTINATION>
  • mv: move file (can be use as changing file name)
    • mv <SOURCE> <DESTINATION>
  • rm: remove file (like delete)
    • rm -r: remove directory (like rmdir)
  • chmod: change file modes or Access Control Lists
    • (u,g,o): user, group, other
    • (r,w,x): read, write, execute
  • chown: change file owner or group
  • mkdir: make directories
  • rmdir: remove directories
  • find: search for files
    • examples:
      • find /PATH -type f -name “*.bam”: find all files (-type f) in /PATH with the name *.bam.
      • find /PATH -type d -name “flash”: find all directories (-type d) in /PATH with the name flash.
      • These examples are useful for calculating file sizes or clean up.
      • To calculate all file sizes, pipe the file names to xargs and du; find /PATH -type f -name “*.bam” | xargs du -csh
      • To remove all files found by the command, pipe the file names to xargs and rm; find ./ -type f -name “*.bam” | xargs rm
      • To remove all directories found by the command, pipe the directory names to xargs and rm -r; find ./ -type d -name “bwa_*” | xargs rm -r
  • ssh: OpenSSH SSH client (remote login program)
    • ssh usrname@ip_adress
  • scp: secure copy (remote file copy program)
    • scp <SOURCE> USRNAME@IP:<DESTINATION>
    • scp USRNAME@IP:<SOURCE> <DESTINATION>
    • -p: 保留原始檔案權限&修改日期等, -r: 複製整個資料夾
  • 2>&1: send STDERR to STDOUT (0:STDIN, 1:STDOUT, 2:STDERR)
  • &: running job in background (終端機背景執行)
    • example: <COMMAND> &
    • the job may be terminated if you log out
  • nohup: run a command in background; immune to hangups 系統背景執行
    • nohup <COMMAND> &
    • This is different from <COMMAND> &; logging out would not affect the job
  • kill: kill job
    • kill PID: kill a job by the process id (PID)
    • ps -u USER | grep blast | cut -d ' ' -f 2 | xargs kill: generate a list of all processes by USER, use grep to find blast jobs, cut out the PID, send to xargs to kill the jobs.
  • free: display amount of free and used memory in the system
    • free -g: Display the amount of memory in gibibytes
  • grep: find keywords in file
    • grep <KEYWORD> <FILENAME>
  • nice and renice: run a program with modified priority. If the server is under heavy load and you need to start a non-urgent large job, please use these.'
  • diff:
  • wget: download files
    • example: download all '*gz' files in the link; use the '-e' command to force ignore the robot file (use with care)
tutorials/linux_essential_commands.txt · Last modified: 2023/10/03 13:03 by chkuo