初识linux以及bash的部分使用及技巧

Linux的基本原则:
1.由目的单一的小程序组成,组合小程序完成复杂任务;
2.一切皆文件;
3.尽量避免捕获用户接口:尽量减少与用户交互;
4.配置文件保存为纯文本格式;


bash及其特性:
shell: 外壳程序
   GUI: Gnome,KDE,Xfce
   CLI: sh,csh,ksn,bash,tcsh,zsh
      命令提示符,orimpt,bash(shell)
         #: root
         $: 普通用户

命令类型:
    内置命令(shell 内置)
    外部命令 : 在文件系统的某个路径下有一个与命令名称相应的可执行文件
    type: 显示指定命令属于哪种类型

    命令格式: command [option] [paremeter]
         option:
         短选项: -
     长选项: --

命令的查询:
  which [-a] command
    -a 列出所有查找到的命令

 

bash shell的使用:
   命令行编辑:
  光标跳转:
     ctrl+a: 跳到命令行首
     ctrl+e: 跳到命令行尾
     ctrl+u: 删除光标至命令行首的内容
     ctrl+k: 删除光标至命令行尾的内容
     ctrl+ -> <- : 单词间跳转
     ctrl+l: 清屏

   命令历史:
  history:
     -c: 清空命令历史
     -d: 删除指定的命令历史,offset [n]
     -w: 将缓冲区的命令历史保存至历史文件 /home/username/.bash_history

     !n: 执行命令历史中的第n条命令
     !-n: 执行命令历史中的倒数第n条命令
     !!: 执行上一条命令
     !string: 执行命令历史中最近一个以指定字符串开头的命令
     !$: 引用上一个命令的最后一个参数
        Esc -> .

   命令别名:
  alias --查看当前的命令别名
     alias command='command [option]...' --创建命令别名
     unalias command --撤销命令别名
        --在shell中定义的别名仅在当前shell生命周期中有效:别名的有效范围仅为当前shell进程;

bash支持的引号:
  ``: 命令替换
  "": 弱引用,可以实现变量替换
  '': 强引用,不完成变量替换

   命令替换:
  $(command)
  `command`
     --把命令中某个子命令替换为其执行结果的过程
     touch ./file-$(date +%F-%H-%M-%S)
     touch ./file-`date +%F-%H-%M-%S`


   文件通配符:
  man 7 glob

  *: 任意长度的任意字符
  ?: 任意单个字符
  []: 匹配任意范围内的任意单个字符
  [^]: 排除指定范围的单个字符
  [[:space:]]: 空白字符
  [[:punct:]]: 标点符号
  [[:lower:]]: 小写字母
  [[:upper:]]: 大写字母
  [[:alpha:]]: 大小写字母
  [[:digit:]]: 数字
  [[:alnum:]]: 数字和大小写字母

 

 

几个常用的小命令:
  w
  who :查看当前主机登录的用户有哪些
  whoami :查看自己当前登录用户是什么

  sleep : 睡眠

  last : 显示 /var/log/wtmp 文件,显示用户登录历史以及系统重启历史
       -n # : 显示最近#次的相关信息
 
  lastb : 显示 /var/log/btmp 文件,显示用户错误的登录尝试
       -n # :

  lastlog : 显示每一个用户最近一次的成功登录信息
       -u username :显示指定用户最近的登录信息

 
  basename : 取得文件名,路径的基名
       $0 : 执行脚本时的脚本路径及脚本名称

posted @ 2016-01-03 14:58  Mr.hale  阅读(149)  评论(0编辑  收藏  举报