各个 shell 的功能都差不多, Linux 默认使用 bash ,所以我们主要学习bash的使用。

1bash命令格式

命令 [-options] [参数],如:tar  zxvf  demo.tar.gz

查看帮助:命令 --help

2bash常见命令

pwd (Print Working Directory) 查看当前目录

cd (Change Directory) 切换目录,如 cd /etc

ls (List) 查看当前目录下内容,如 ls -al

mkdir (Make Directory) 创建目录,如 mkdir blog

touch 创建文件,如 touch index.html

wc (Word Count) 字数信息统计,如 wc index.html

cat 查看文件全部内容,如 cat index.html

more less 查看文件,如more /etc/passwd、less /etc/passwd

rm (remove) 删除文件,如 rm index.html、rm -rf  blog

rmdir (Remove Directory) 删除文件夹,只能删除空文件夹,不常用

mv (move) 移动文件或重命名,如 mv index.html ./demo/index.html

cp (copy) 复制文件,cp index.html ./demo/index.html

head 查看文件前几行,如 head -5 index.html

tail 查看文件后几行 –n –f,如 tail index.html、tail -5 index.html

tab 自动补全,连按两次会将所有匹配内容显示出来

history 查看操作历史

ssh 远程登录,如ssh root@gitlab.study.com

> 和 >>重定向,如echo hello world! > README.md,>覆盖 >>追加

wget 下载,如wget https://nodejs.org/dist/v4.4.0/node-v4.4.0.tar.gz

tar 解压缩,如tar zxvf node-v4.4.0.tar.gz

curl 网络请求,如curl http://www.baidu.com

who am i 查看当前用户

| 管道符

grep 匹配内容,一般结合管道符使用

vi编辑器

如同Windows下的记事本,vi编辑器是Linux下的标配,通过它我们可以创建、编辑文件。它是一个随系统一起安装的文本编辑软件。

1、三种模式

vi编辑器提供了3种模式,分别是命令模式、插入模式、底行模式,每种模式下用户所能进行的操作是不一样的。

3种模式的切换如下图所示:

通过上图我们发现,输入模式是不能直接切换到末行模式的,必须要先切回到命令模式(按ESC键)

2、使用vi编辑器

a) 打开/创建文件, vi 文件路径

b) 底行模式 :w保存,:w filenme另存为

c) 底行模式 :q退出

d) 底行模式 :wq保存并退出

e) 底行模式 :e! 撤销更改,返回到上一次保存的状态

f) 底行模式 :q! 不保存强制退出

g) 底行模式 :set nu 设置行号

h) 命令模式 ZZ(大写)保存并退出

i) 命令模式 u辙销操作,可多次使用

j) 命令模式 dd删除当前行

k) 命令模式 yy复制当前行

l) 命令模式 p 粘贴内容

m) 命令模式 ctrl+f向前翻页

n) 命令模式 ctrl+b向后翻页

o) 命令模式 i进入编辑模式,当前光标处插入

p) 命令模式 a进入编辑模式,当前光标后插入

q) 命令模式 A进入编辑模式,光标移动到行尾

r) 命令模式 o进入编辑模式,当前行下面插入新行

s) 命令模式 O进入编辑模式,当前行上面插入新行

当我们处在编辑模式的情况下,和我们在Windows编辑器的使用相似。

SSH

SSH是一种网络协议,用于计算机之间的加密登录。

SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。本文针对的实现是OpenSSH,它是自由软件,应用非常广泛。

如果要在Windows系统中使用SSH,会用到另一种软件PuTTY,我们后面用到的Git客户内置集成了SSH

ssh user@host

非对称加密技术

公钥、私钥 免密码登录

认识bash和shell的更多相关文章

  1. 单行bash、shell、perl命令

    主题:单行经典bash.shell.perl命令 作者:luomg 摘要: 会陆陆续的写自己工作中的常用有意思的命令,争取你能看完后就能搞定常见操作, 且尽量自少提供基本shell.perl的实现方式 ...

  2. 什么是shell? bash和shell有什么关系?

    什么是shell? bash和shell有什么关系? 博客分类: Linux   什么是Shell?      shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序 ...

  3. bash和shell的关系

    bash是borne again shell的缩写,它是shell的一种,Linux上默认采用的是bash. shell脚本中的方法带不带function的区别,例如: function foo () ...

  4. bash反弹shell检测

    1.进程 file descriptor 异常检测 检测 file descriptor 是否指向一个socket 以重定向+/dev/tcp Bash反弹Shell攻击方式为例,这类反弹shell的 ...

  5. shell 编程 && bash 简介(shell 变量、shell操作环境、数据流重导向、管线命令、shell script)

    如何学习一门编程语言 数据类型 运算符 关键字 1 认识BASH 这个shell linux是操作系统核心,用户通过shell与核心进行沟通,达到我们想要的目的.硬件.核心.用户之间的关系: 原理:所 ...

  6. 用bash反弹shell

    用bash反弹shell 受害主机:linux系统 攻击机:需要安装netcat(nc) 受害主机执行:ifconfig  ## 查看受害主机ip 攻击机执行:nc -lvp 19999 ## 在攻击 ...

  7. 修改shell 将当前shell(默认是bash B SHELL )改为csh C SHELL

     在修改当前shell时,用命令: usermod -s  /bin/csh   home     home 为 你所想要改变的用户地址     此处home 为家目录,一般自己创建的用户都会在家目录 ...

  8. 认识bash这个shell

    我们通过shell将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误地工作bash是我们Linux默认的shell 用户界面(Shell,application)--------核心(Kern ...

  9. Linux 学习记录 四(Bash 和 Shell scirpt)

    一.什么是 Shell? 狭义的shell指的是指令列方面的软件,包括基本的Linux操作窗口Bash等,广义的shell则包括 图形接口的软件,因为图形接口其实也可以操作各种驱动程序来呼叫核心进行工 ...

  10. bash编程-Shell变量

    bash中,所有变量的值默认均为字符串. 1. 变量操作 调用变量 $变量 查看变量(所有类型) set 删除变量 unset 变量 2. 变量分类 2.1 自定义变量 自定义变量仅对当前Shell有 ...

随机推荐

  1. 【Eclipse】eclipse中格式化代码配置方法

    1.找到"Source",点击,在弹出的下拉框内,找到"Format",然后点击,或者快捷键ctrl+shift+F, 如果对单单一行的行首进行自动对齐,将鼠标 ...

  2. java 日期排序。。。。

    Collections.sort(list, new Comparator<Map<Object, Object>>() { public int compare(Map< ...

  3. spring配置和下载

    步骤一:下载 Spring 的开发包: 官网:http://spring.io/ 下 载 地 址 : http://repo.springsource.org/libs-release-local/o ...

  4. 【Excel】绘图案例_常见复合图:簇状图+堆积图+折线图

    前言 最近有朋友让我帮忙用excel画图,老实说我很讨厌用excel画图,点来点去,复杂一些还不能复用,非常繁琐.当然,入门也很简单.需求时不同城市.不同产品的2016和2017销量及环比数据,这应该 ...

  5. webDAV

    wiki webDAV client - java https://github.com/lookfirst/sardine https://www.cnblogs.com/xgjblog/p/383 ...

  6. linux配置防火墙,开启端口

    Centos7,配置防火墙,开启端口 1.查看已开放的端口(默认不开放任何端口) firewall-cmd --list-ports 2.开启80端口 firewall-cmd --zone=publ ...

  7. jupyter notebook 小笔记

    安装直接按这个步骤了: https://hub.mybinder.org/user/ipython-ipython-in-depth-xj8fraz8/notebooks/binder/Index.i ...

  8. .Net MVC 获取Response和Request对象

    通过  System.Web.HttpContext.Current  获取 public static string ConstractExportExcel(List<ERP_Contrac ...

  9. WebForm多页面传值跳转

    一.URL传值 URL传值是利用跳转地址直接加变量定义内容 格式:跳转地址?任意变量=传的值--?=之间不能有空格 多条数据传值 在地址栏继续拼接&key=value void Button1 ...

  10. Oracle 表复杂查询之多表合并查询

    转自:https://www.cnblogs.com/GreenLeaves/p/6635887.html 本文使用到的是oracle数据库scott方案所带的表,scott是oracle数据库自带的 ...