各个 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. Maven安装以及环境配置(Windows)

    Maven是什么? Maven是一个项目管理和综合工具.Maven提供了开发人员构建一个完整的生命周期框架.开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期. 在 ...

  2. 集群中使用chronyc同步时间

    在集群之中,有些服务器之间的时间需要同步,但并不是所有机器可以直接连外网,这时可以用Chrony工具解决. 解决方法是将其中一台设为时间服务器,然后其它服务器和这台时间服务器同步即可.具体步骤如下: ...

  3. HTML5和CSS3的一些学习记录

    1.引述块级文本的标签(blockquote): <blockquote cite="http://www.marktwainbooks.edu/"> <p> ...

  4. Mybatis实现in查询(注解形式和xml形式)

    1. @Select注解中使用in @Select({"<script> " + " select * "+ " from busines ...

  5. w3cschool脚本算法编程实战课程

    部分源码==>https://github.com/calamus0427/commonJS 翻转字符串算法挑战 function reverseString(str) { str = str. ...

  6. Python下的opencv小问题大智慧

    1.今晚日了狗了,图像显示不按照预期出现,然后突然就好了...... 2.根据第一个问题举一个例子,另一个我没保存... 是不是分不清楚????   plt.imshow(wjy2, cmap='gr ...

  7. Python中__new__的作用

    __new__ 的作用 依照Python官方文档的说法,__new__方法主要是当你继承一些不可变的class时(比如int, str, tuple), 提供给你一个自定义这些类的实例化过程的途径.还 ...

  8. JAVA 操作mysql 存储 调用

    HashMap map = new HashMap(); map.put("a", 9); map.put("b", ""); List&l ...

  9. wgrib读grib数据

    该文章来自博客:http://windforestwing.blog.163.c ... 412007103084743804/如有错误 ,大家及时指出啊!ps:meteoinfo可以直接处理grib ...

  10. 8.Appium的基本使用-2(安装node.js)

    node.js 下载地址:https://nodejs.org/en/download/下载 64-bit 下载包下载完成双击安装: