Linux常用命令集合(二)
2017-08-15 17:25
204 查看
vim 编辑器的命令模式中常用的快捷键
dd 删除(剪切)光标所在整行
5dd 删除(剪切)冲光标处开始的5行
yy 复制光标所在整行
5yy 复制从光标处开始的5行
p 将之前删除(dd)或复制(yy)过的数据粘贴到光标后
/字符串 在文本中从上至下搜索该字符串
?字符串 在文本中从下至上搜素该字符串
n 显示搜索命令定位到的下一个字符串
N 显示搜索命令定位到的上一个字符串
u 撤销上一步操作
vim编辑器的末行模式中的常用命令
:w 保存
:q 退出
:q! 强制退出(放弃对文本的修改内容)
:wq! 强制保存退出
:set nu 显示行号
:set nonu 不显示行号
:命令 执行该命令
:整数 跳转到该行
shell 脚本是将各种命令通过逻辑语句组合而成的程序
查看系统中所有可用的shell解释器:
[root@localhost~]# cat /etc/shells
查看当前的shell解释器
[root@localhost~]#echo $SHELL
编写简单的shell脚本
一个完整的shell脚本包括脚本声明、注视信息、和可执行语句
脚本声明(#!):告知系统用何种shell来解释
注释信息(#):对可执行语句或程序功能做介绍,可以不写
可执行语句:执行的具体命令
简单的脚本编写。功能是显示当前工作的路径并列出当前目录下的所有文件属性
[root@localhost~]#vim example.sh
#!/bin/bash
#For example by localhost
pwd
ls -al
shell脚本执行有三种方式
脚本文件路径:./example.sh
sh脚本文件路径:sh example.sh
source脚本文件路径:source example.sh
直接访问脚本会出现权限不足的问题
解决办法:
[root@localhost~]# chmod u+x example.sh
[root@localhost~]# ./example.sh
接受用户输入的参数定义脚本的方法
$0 当前执行shell脚本的程序名
$1-9,${10},${11}....参数的位置变量
$# 一共有多少个参数
$* 所有位置变量的值
$? 判断上一条命令是否执行成功,0为成功,非0为失败
判断用户的参数
shell脚本有时还要判断用户输入的参数,例如像mkdir命令一样,当目录不存在则创建,若已经存在则报错,条件测试语句能够测试特定的表达式是否成立,当条件成立时返回值为0,否则返回其他数值。
测试语句格式: [条件表达式] 两边均应有一个空格
细分测试语句有:文件测试,逻辑测试,整数值比较,字符串比较。
文件测试:[操作符 文件或目录名]
-d 测试是否为目录
-e 测试文件或目录是否存在
-f 判断是否为文件
-r 测试当前用户是否有权限读取
-w 测试当前用户是否有权限写入
-x 测试当前用户是否有权限执行
逻辑测试:[表达式1] 操作符 [表达式2]
&& 逻辑的与,“而且”的意思
|| 逻辑的或,“或者”的意思
! 逻辑的否。
整数值比较:[整数1 操作符 整数2]
-eq 判断是否等于
-ne 判断是否不等于
-gt 判断是否大于
-it 判读是否小于
-le 判断是否等于或小于
-ge 判断是否大于或等于
字符串比较:[字符串1 操作符 字符串2]
= 比较字符串内容是否相同
!= 比较字符串内容是否不同
-z 判断字符串内容是否为空
条件测试语句能够让shell脚本根据实际共组灵活调整工作内容,例如判断系统的状态后执行指定的工作,或创建指定数量的用户,批量修改用户密码,这些都可以让shell脚本通过条件测试语句完成
if 条件语句
if条件语句分为单分支结构,双分支结构, 多分支结构,复杂度逐渐上升,但却可以让shell脚本更加的灵活
单分支结构,仅用if、then、fi关键词组成,只在条件成立后执行
if 条件测试操作
then 命令序列
fi
单分支if语句:判断目录是否存在,若不存在则自动创建。
双分支结构是由if、then、else、fi关键字组成,做条件成立或条件不成立的判断
if条件测试操作
then 命令序列1
else 命令序列2
fi
read命令用于将用户的输入参数赋值给指定变量,格式为:read-p [提示语句] 变量名
for条件语句会先读取多个不同的变量值,然后逐一执行同一组命令
for 变量名 in 取值列表
do
命令序列
done
while条件语句用于重复测试某个软件,当条件成立时则继续重复执行
while 条件测试操作
do
命令序列
done
case条件语句可以依据变量的不同取值,分别执行不同的命令动作
case 变量值 in
模式1)
命令序列1
模式2)
命令序列2
*)
默认命令序列
esac
dd 删除(剪切)光标所在整行
5dd 删除(剪切)冲光标处开始的5行
yy 复制光标所在整行
5yy 复制从光标处开始的5行
p 将之前删除(dd)或复制(yy)过的数据粘贴到光标后
/字符串 在文本中从上至下搜索该字符串
?字符串 在文本中从下至上搜素该字符串
n 显示搜索命令定位到的下一个字符串
N 显示搜索命令定位到的上一个字符串
u 撤销上一步操作
vim编辑器的末行模式中的常用命令
:w 保存
:q 退出
:q! 强制退出(放弃对文本的修改内容)
:wq! 强制保存退出
:set nu 显示行号
:set nonu 不显示行号
:命令 执行该命令
:整数 跳转到该行
shell 脚本是将各种命令通过逻辑语句组合而成的程序
查看系统中所有可用的shell解释器:
[root@localhost~]# cat /etc/shells
查看当前的shell解释器
[root@localhost~]#echo $SHELL
编写简单的shell脚本
一个完整的shell脚本包括脚本声明、注视信息、和可执行语句
脚本声明(#!):告知系统用何种shell来解释
注释信息(#):对可执行语句或程序功能做介绍,可以不写
可执行语句:执行的具体命令
简单的脚本编写。功能是显示当前工作的路径并列出当前目录下的所有文件属性
[root@localhost~]#vim example.sh
#!/bin/bash
#For example by localhost
pwd
ls -al
shell脚本执行有三种方式
脚本文件路径:./example.sh
sh脚本文件路径:sh example.sh
source脚本文件路径:source example.sh
直接访问脚本会出现权限不足的问题
解决办法:
[root@localhost~]# chmod u+x example.sh
[root@localhost~]# ./example.sh
接受用户输入的参数定义脚本的方法
$0 当前执行shell脚本的程序名
$1-9,${10},${11}....参数的位置变量
$# 一共有多少个参数
$* 所有位置变量的值
$? 判断上一条命令是否执行成功,0为成功,非0为失败
判断用户的参数
shell脚本有时还要判断用户输入的参数,例如像mkdir命令一样,当目录不存在则创建,若已经存在则报错,条件测试语句能够测试特定的表达式是否成立,当条件成立时返回值为0,否则返回其他数值。
测试语句格式: [条件表达式] 两边均应有一个空格
细分测试语句有:文件测试,逻辑测试,整数值比较,字符串比较。
文件测试:[操作符 文件或目录名]
-d 测试是否为目录
-e 测试文件或目录是否存在
-f 判断是否为文件
-r 测试当前用户是否有权限读取
-w 测试当前用户是否有权限写入
-x 测试当前用户是否有权限执行
逻辑测试:[表达式1] 操作符 [表达式2]
&& 逻辑的与,“而且”的意思
|| 逻辑的或,“或者”的意思
! 逻辑的否。
整数值比较:[整数1 操作符 整数2]
-eq 判断是否等于
-ne 判断是否不等于
-gt 判断是否大于
-it 判读是否小于
-le 判断是否等于或小于
-ge 判断是否大于或等于
字符串比较:[字符串1 操作符 字符串2]
= 比较字符串内容是否相同
!= 比较字符串内容是否不同
-z 判断字符串内容是否为空
条件测试语句能够让shell脚本根据实际共组灵活调整工作内容,例如判断系统的状态后执行指定的工作,或创建指定数量的用户,批量修改用户密码,这些都可以让shell脚本通过条件测试语句完成
if 条件语句
if条件语句分为单分支结构,双分支结构, 多分支结构,复杂度逐渐上升,但却可以让shell脚本更加的灵活
单分支结构,仅用if、then、fi关键词组成,只在条件成立后执行
if 条件测试操作
then 命令序列
fi
单分支if语句:判断目录是否存在,若不存在则自动创建。
双分支结构是由if、then、else、fi关键字组成,做条件成立或条件不成立的判断
if条件测试操作
then 命令序列1
else 命令序列2
fi
read命令用于将用户的输入参数赋值给指定变量,格式为:read-p [提示语句] 变量名
for条件语句会先读取多个不同的变量值,然后逐一执行同一组命令
for 变量名 in 取值列表
do
命令序列
done
while条件语句用于重复测试某个软件,当条件成立时则继续重复执行
while 条件测试操作
do
命令序列
done
case条件语句可以依据变量的不同取值,分别执行不同的命令动作
case 变量值 in
模式1)
命令序列1
模式2)
命令序列2
*)
默认命令序列
esac
相关文章推荐
- 转【Linux】CentOS7 常用命令集合
- Linux常用命令集合
- Linux常用命令集合
- LINUX 常用命令集合
- LINUX 常用命令集合
- linux 常用命令集合
- Linux的常用命令集合
- 【Linux】CentOS 7 常用命令集合
- Linux常用命令集合
- Linux常用命令集合——来自朱老师
- Linux常用命令集合
- Linux —— 常用命令集合
- 常用Linux日志查看命令集合
- Linux常用文件命令集合
- linux常用命令集合
- LINUX 常用命令集合
- linux常用命令集合
- Linux日常维护常用命令集合整理
- 《鸟哥的linux私房菜:服务器篇》linux常用网络命令集合
- [置顶] 【linux bash】常用命令集合