bash基础命令
一、常见命令:
命令 [-options] [参数] |
---|
pwd (Print Working Directory) 查看当前目录 |
cd (Change Directory) 切换目录,如 cd /etc |
ls (List) 查看当前目录下内容,如 ls -al |
mkdir (Make Directory) 创建目录, 创建文件夹,如 mkdir blog |
touch 创建文件,如 touch index.html |
cat 查看文件全部内容,如 cat index.html |
rm (remove) 删除文件,如 rm index.html |
rm -rf 删除文件夹 rm -rf blog |
rmdir (Remove Directory) 删除文件夹,只能删除空文件夹,不常用 |
wc (Word Count) 字数信息统计 行数 , 单词数, 字节数,如 wc index.html |
wc -l filename 报告行数 |
wc -c filename 报告字节数 |
wc -m filename 报告字符数 |
wc -w filename 报告单词数 |
tab 自动补全,连按两次会将所有匹配内容显示出来 |
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 |
history 查看操作历史 |
> 和 >> 重定向,如echo hello world! > README.md,pwd > 123.txt |
-
命令: echo 输出字符串
> 覆盖
>> 追加
把原来输入的内容,自己指定到别的地方。
把原本输出到屏幕上的内容,写入到指定的文件当中。如果文件不存在,会自动帮你创建文件。 -
命令:curl 网络请求,如
curl http://www.baidu.com
curl http://www.baidu.com > baidu.html
-
命令:ssh 远程登录,如 ssh root@gitlab.study.com
-
命令:wget 下载,如
wget https://nodejs.org/dist/v4.4.0/node-v4.4.0.tar.gz
-
命令:tar 解压缩,如 tar zxvf node-v4.4.0.tar.gz
-
命令:who am i 查看当前用户, 要在真实Linux环境下使用
-
命令:| 管道符 把上一次的结果当做下一次的参数。
-
命令:grep 匹配内容,一般结合管道符使用
ls -l | grep a.txt 查找当前目录下的 a.txt文件
前面的输出当作后面的输入
-
补充:grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
grep详细可使用参考: http://man.linuxde.net/grep
二、vi编辑器
- 牛人使用记事本编程
1.vi编辑器
- vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但vi在系统和服务器管理中的功能是那些图形编辑器所无法比拟的。
- 想要学习Vi编辑器必须得要知道它的三种模式。
- 1.命令模式
- 2.插入模式
- 3.底行模式
- 它们每一种模式下,操作的命令都是不一样的。各个模式可以进行切换。
2.Vi编辑器三种模式

- 通过上图我们发现,输入模式是不能直接切换到末行模式的,必须要先切回到命令模式(按ESC键)
输入模式命令
- 直接输入i或者a进入输入模式,可以进行内容编辑,
- 退出输入模式,按下键盘Esc键
命令行模式命令
- ZZ(大写)保存并退出
- u 辙销操作,可多次使用
- dd 删除当前行
- yy 复制当前行
- p 粘贴内容
- ctrl+f 向前翻页
- ctrl+b 向后翻页
- i 进入编辑模式,当前光标处插入
- a 进入编辑模式,当前光标后插入
- A 进入编辑模式,光标移动到行尾
- o 进入编辑模式,当前行下面插入新行
- O 进入编辑模式,当前行上面插入新行
底行模式命令
- :w 保存,
- :w filenme另存为
- :q 退出
- :wq 保存并退出
- :e! 撤销更改,返回到上一次保存的状态
- :q! 不保存强制退出
- :set nu 设置行号
三、ssh登录
-
SSH是一种网络协议,用于计算机之间的加密登录。
-
利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
SSH和SSL区别
- 总而言之,SSL提供了握手和加密手段,不是一个独立的应用层协议,可以基于它修改现有的应用使之安全,而SSH是基于SSL之上的应用层协议,跟一般的通过SSL加密的应用层协议只是简单的修改socket接口替换为ssl接口的机制不同,SSH是一个完全替换telnet和ftp的应用,并且可以基于之上使用端口转发功能为其他应用层提供安全通道。
四、对称加密和非对称加密
- 对称加密
对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。
常见的对称加密算法:DES,AES,3DES等等。
- 对称加密
- 非对称加密
非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密。
常见的非对称加密算法:RSA,ECC
- 非对称加密
- 区别
对称加密算法相比非对称加密算法来说,加解密的效率要高得多。但是缺陷在于对于秘钥的管理上,以及在非安全信道中通讯时,密钥交换的安全性不能保障。所以在实际的网络环境中,会将两者混合使用.
- 区别
-
例如针对C/S模型,
- 服务端计算出一对秘钥pub/pri。将私钥保密,将公钥公开。
- 客户端请求服务端时,拿到服务端的公钥pub。
- 客户端通过AES计算出一个对称加密的秘钥X。 然后使用pub将X进行加密。
- 客户端将加密后的密文发送给服务端。服务端通过pri解密获得X。
- 然后两边的通讯内容就通过对称密钥X以对称加密算法来加解密。
网友评论