Man can conquer nature.

  "人定胜天"

一、基本操作
   1、重要快捷键

Tab 补全命令、目录、参数、文件名等
Ctrl+c 强制终止当前的程序
Ctrl+d 键盘输入结束或退出终端
Ctrl+z 将当前程序放到后台运行,恢复为前台使用fg
Ctrl+a 将光标移至输入行首,相当于Home键
Ctrl+e 将光标移至输入行末,相当于End键
Ctrl+k 删除从光标所在位置到行末
Alt+Backspace 向前删除一个单词
Shift+PgUp 将终端显示向上滚动
Shift+PgDn 将终端显示向下滚动
方向键"上"键

恢复之前输入过的命令

2、通配符

* 匹配0各或多个字符
? 匹配任意一个字符
[list] 匹配list中的任意单一字符
[!list] 匹配除list中字符外的任意单一字符
[c1-c2] 匹配c1-c2中任意单一字符 如:[0-9][a-z]
[str1,str2,...] 匹配str1或str2(或更多)其一字符串
{c1..c2} 匹配c1-c2中全部字符 如{1..10},注意是每个字符匹配一次

3、man

  1. man <name> #查看name指定内容的详细说明,可以是命令,C库函数等,具体见man man

二、用户及文件权限管理
   1、用户管理

  1. who [选项]... [ 文件 | 参数1 参数2 ] #显示当前已登录的用户信息
  2. sudo adduser <name> #添加新用户
  3. sudo passwd <name> #为用户设置密码,不加<name>则设置当前用户的密码
  4. su <name> #切换登录用户
  5. groups <name> #查看用户属于哪些用户组
  6. sudo usermod -G <g-name> <u-name> #为用户添加用户组
  7. sudo deluser <u-name> --remove-home #删除用户并删除该用户的Home目录

2、文件权限

  1. ls [选项]... [文件]... #列出文件的信息
  2. chown [选项]... [所有者] 文件名 #修改文件的所有者
  3. chgrp [选项]... 用户组 文件... #修改文件所属的用户组
  4. chmod [选项]... 模式... 文件... #修改文件的读写执行权限

三、文件和目录操作
   1、目录操作

  1. tree <name> #以树形结构显示目录的结构,注意tree工具需要自行安装
  2. cd <name> #切换到指定目录
  3. pwd #获取当前目录的绝对路径
  4. mkdir <name> #创建新目录

2、文件操作

  1. touch <name> #创建空白文件
  2. cp <name> <p-name> #复制文件到指定目录
  3. rm [选项]... <name> #删除文件或空目录,加上-r参数可以删除非空目录
  4. mv <name> <p-name> #移动文件到指定目录,或者修改文件名
  5. cat [选项] <name> #正序打印文件内容
  6. tac [选项] <name> #倒序打印文件内容
  7. nl [选项] <name> #添加行号并打印文件内容
  8. more <name> #分页查看文件内容
  9. less <name> #类似于more
  10. head <name> #查看文件开头的内容
  11. tail <name> #类似于head但是是从末尾开始
  12. file <name> #查看文件类型

四、环境变量与文件查找
   1、变量

  1. declare var #声明变量
  2. var=XXX #给变量赋值
  3. echo $var #打印变量内容
  4. unset var #删除一个环境变量

2、环境变量

  1. set #显示当前shell所有环境变量
  2. env #显示与当前用户相关的环境变量
  3. export #显示从shell中导出成环境变量的变量

3、命令的查找路径与顺序

  1. echo $PATH #输出的内容为系统查找命令的各个路径,按照排列的顺序查找并调用找到的第一个命令

4、添加自定义路径到PATH

  1. PATH=$PATH:path-name #临时修改当前shell的PATH变量

5、文件查找

  1. whereis <name> #搜索二进制文件、man帮助文件或者源代码文件
  2. locate <name> #查找指定目录下不同类型的文件
  3. which <name> #用来确定是否安装了某个指定的软件
  4. find [path] [opt] [act] #在指定目录下搜索满足指定条件的文件

五、文件打包与解压缩
   常用的文件压缩打包/解压缩工具:

  1. zip / unzip
  2. rar
  3. tar

具体参见man手册

六、文件系统操作与磁盘管理
   1、查看磁盘和目录容量

  1. df #查看磁盘容量,常加上 -h 参数以易读的方式打印

2、磁盘操作

  1. dd #用于转换和复制文件
  2. mount [opt] [sour] [dir] #挂在磁盘到指定目录
  3. umount [dir] #卸载已挂载的磁盘
  4. sudo fdisk [opt] #查看硬盘分区表信息

七、命令执行顺序控制与管道
   1、命令执行顺序

  1. cmd1;cmd2;cmd3;... #按顺序执行cmd1,cmd2,...
  2. cmd1 && cmd2 #只有cmd1执行成功才执行cmd2
  3. cmd1 || cmd2 #只有cmd1执行失败才执行cmd2
  4. cmd1 | cmd2 #将cmd1的输出作为cmd2的输入

2、常用到管道的命令

  1. cut #打印每一行的某一字段
  2. grep #在文本中或标准输入中查找匹配字符串
  3. wc #统计并输出一个文件中行、单词和字节的数目
  4. sort #将输入按照一定方式排序后输出
  5. uniq #用于过滤或者输出重复行

八、简单文本处理
   1、文本处理命令

  1. tr #删除或替换一段文本信息中的某些文字
  2. col #将Tab换成对等数量的空格,或者反转这个操作
  3. join #将两个文件中包含相同内容的那一行合并在一起
  4. paste #将多个文件合并在一起,并以tab隔开

九、数据流重定向
   1、简单重定向

  1. cmd > name #将cmd1执行的结果重定向到指定文件或指定设备中,替换原来的内容
  2. cmd >> name #类似于 > ,但是这里是追加到文件末尾,而不是替换
  3. cmd < name #方向与 > 相反
  4. cmd << name #方向与 >> 相反

2、重定向到多个文件

  1. cmd | tee name1 name2 ... #将cmd1的执行结果重定向到标准输出和指定文件中

3、完全屏蔽命令输出

  1. cmd > /dev/null #将命令的执行结果导入"黑洞"文件中

十、软件安装
   1、在线安装

  1. sudo apt-get [工具] #用于安装、更新、卸载等操作的公共程序集
工具 说明
install 后面加上软件包名,用于安装一个软件包
update 更新本地软件
upgrade 升级本地可更新的全部软件包,但存在依赖关系时不会升级
remove 移除已安装的软件包,包括与被移除软件有依赖关系的软件包,但不包含配置文件
purge 移除软件包和配置文件
clean 移除下载到本地的已经安装好的软件包

:本文只是作为笔者学习过程中的一份学习笔记,更多更详细的内容请参见相关书籍或相关文档

Linux入门 (笔记)的更多相关文章

  1. Linux 入门笔记

    一开始对linux总有些抵触,黑黑的命令框不知道如何下手,这次因为工作交接的缘故需要负责之前同事的Node后端部分,node,redis这些都是部署在Linux上的,看了几次运维的同学噼里啪啦的敲命令 ...

  2. Linux入门笔记

    1.Linux常用快捷键 按键 作用 Ctrl+d 键盘输入结束或退出终端 Ctrl+s  暂停当前程序,暂停后按下任意键恢复运行 Ctrl+z 将当前程序放到后台运行,恢复到前台为命令fg Ctrl ...

  3. 【苏勇老师Linux 入门笔记】网络基础

    IP 地址 IP 编制时一个双层编制方案,一个 IP 地址标示一个主机 (或一个网卡接口). 一个 IP 地址分为两个部分:网络部分(所属区域)和主机部分(标示区域中的哪个主机).IPv4 共32位, ...

  4. Linux基础入门笔记

    今天带来Linux入门的一些基础的笔记,科班出身的同学们,Linux已经成为了必修课了,下面我带来关于Linux的相关入门知识以及Linux简单的介绍! Linux内核最初只是由芬兰人林纳斯·托瓦兹( ...

  5. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  6. MySQL入门笔记

    MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制 ...

  7. 20160127 linux 学习笔记

    Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于 ...

  8. Linux入门基础知识

    注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MI ...

  9. Docker入门笔记

    Docker入门笔记 随笔记录初学Docker遇到的问题, 以免下次再犯. 本机系统Ubuntu18.04 安装 Docker有2个版本 Community Edition (CE) 社区版(免费) ...

随机推荐

  1. 转:如何创建.htaccess文件

    方法1.开始-运行-键入cmd,打开cmd窗口 此时的cmd窗口路径是C:\Documents and Settings\username> 键入以下(不包括括号内信息): copy con . ...

  2. 在c++中使用Outlook Object Model发送邮件

    一.Outlook Object Model简介 Outlook Object Model(OOM)是outlook为开发者提供的一个COM组件,我们可以在程序中使用它来发送邮件.管理邮箱等.相关介绍 ...

  3. BZOJ 1032 [JSOI2007]祖码Zuma

    1032: [JSOI2007]祖码Zuma Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 637  Solved: 318[Submit][Stat ...

  4. POJ1163——The Triangle

    Description 73 88 1 02 7 4 44 5 2 6 5 (Figure 1) Figure 1 shows a number triangle. Write a program t ...

  5. 微信/易信公共平台开发(二):自定义菜单的PHP实现(提供源码)

    微信把公众号分成订阅号和服务号两种,服务号可以自定义菜单, 菜单大大方便了用户操作. 比如:公众服务号 "中国南方航空" 的自定义菜单如下图: 点菜单就可以直接进入操作了,方便! ...

  6. python Eve RESTFul 尝试笔记

    0.前言 最近重点研究了yeelink平台的原理和使用,yeelink平台和多数云平台设计一样应用了RESTFul框架.嵌入式侧(或者是客服端侧)的相关技术研究的比较充分(个人这么认为),是不是该弄弄 ...

  7. ZeroMQ(JAVA)中的数据流,SessionBase与SocketBase

    前面的文章中已经比较的清楚了ZeroMQ(java)中如何在底层处理IO, 通过StreamEngine对象来维护SelectableChannel对象以及IO的事件回调,然后通过Poller对象来维 ...

  8. 1000 A+B [ACM刷题]

    这一段时间一直都在刷OJ,这里建一个博客合集,用以记录和分享算法学习的进程. github传送门:https://github.com/haoyuanliu/Online_Judge/tree/mas ...

  9. Django 数据库查询

    #!/usr/bin/python #coding:utf-8 from django.shortcuts import render; from django.shortcuts import re ...

  10. Android Dialog 系统样式讲解及透明背景

      AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_TRADIT ...