vim编辑器

vim编辑器三种模式转换

clipboard

G跳到尾行

gg:跳到首行
H:跳到当前页的首行
L: 跳到当前页的尾行
M: 跳到当前而的中间行
dd: 删除光标所在的行
#dd:多行删除
yy:复制行
#yy: 复制多行 
Y: 复制整行
cc:删除当前行并输入新内容
#cc:删除多行
C:删除当前光标到行尾,并切换成插入模式
修改配置文件
全局: /etc/vimrc
用户:~/.vimrc
set nu 显示行号
set nonu取消显示行号
set ai 启用自动缩进功能
set noai 取消自动缩进功能
set ic忽略字符大小写
set noic 不忽略字符的大小写
set sm括号匹配
set nosm 取消括号匹配
syntax on|of语法高亮
搜索高亮
set hlsearch
set nohlsearch

clipboard

编写脚本

本地变量:仅对当前SHELL有效,对子SHELL也无效

环境变量:对当前SHELL及其子SHELL均有效。
查询变量
set 即显示本地变量也显示环境变量
env 显示环境变量
引用变量时
$varname
“$varname”
${varname}
当变量值当中包含换行符,如果希望引用出的值同样包含换行符,只能使用”$varname”
删除变量
unset varname
位置变量:在脚本代码中调用通过命令行传递给脚本的参数
$1, $2, …:对应第1、第2等参数,shift [n]换位置
$0: 命令本身
$*: 传递给脚本的所有参数,全部参数合为一个字符串
$@: 传递给脚本的所有参数,每个参数为独立字符串
$#: 传递给脚本的参数的个数
$@ $* 只在被双引号包起来的时候才会有差异
shift 将位置化参数向左移。默认为shift 1 即$1被删除,原$2变为$1,即$n+1 变为$n
set — 清空所有位置变量
转译:
\ 完全转译
“”部分转译 \ ` ! $ 注:变量引用会被替换为变量的值
” 完全转译
&&前一条命令执行成功才执行下一步
||前一条命令执行失败才执行下一步
1.写一个脚本名为jiaozuoyexx.sh 当执行该脚本时如jiaozuoyeXX.sh testXX.sh,就会自动将该testXX.sh传给教师机,路径是

scp testXX.sh mage26@172.17.252.213:~/scripts 密码为mage26

2.写一个能够创建新脚本的Shell script,如名为createshXX.sh 当执行时createsh /root/bin/test1.sh
则会自动创建并打开/root/bin/test1.sh,且其中包含以下内容。
#!/bin/bash
# ——————————————
# Filename:
# Revision:
# Date:
# Author:
# Email:
# Website:
# Description:
# ——————————————

clipboard

应该再加个chmod+x $test1加执行权限

clipboard

变量命名规则,字母数字下划线,且不能以数字开头,之前命名为test1.sh因为包含不合法字符一直出错还有不能使用导出符>,要使用追加>>
作业:
1、编写脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第20用户的ID之和

clipboard

其他的算术运算方法
(1)let var=算术表达式
(2) var=$[算术表达式]
(3) var=$((算术表达式))
(4) var=$(expr arg1 arg2 arg3 …) 乘法时要转译* ,即\*
(5) declare –i var = 数值
2、编写脚本/root/bin/sumspace.sh,传递两个文件路径作为参数给脚本,计算这两个文件中所有空白行之和

clipboard

纠正:file1=`cat $first_filename|grep ^[[:space:]]*$|wc -l`
         file2=`cat $second_filename|grep ^[[:space:]]*$|wc -l`
         echo “sum=$[$file1+$file2]”

要考虑空格行和table键组成的空白行

3、编写脚本/root/bin/sumfile.sh,统计/etc, /var, /usr目录中共有多少个一级子目录和文 件

clipboard

1.编写脚本/bin/per.sh,判断当前用户对指定的参数文件,是否不可读并且不可写

clipboard

clipboard

[ expression1 -a expression2 ] 并且

[ expression1 -o expression2 ] 或者

注意空格规范

2.编写脚本/root/bin/excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执行权限,否则提示用户非脚本文件

clipboard

3.编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统

clipboard

不知道这次截图清晰吗,我尽力了也不知道为什么不清晰,允悲

原创文章,作者:jieran,如若转载,请注明出处:http://www.178linux.com/83961

(0)
jieranjieran
上一篇 2017-08-05 20:45
下一篇 2017-08-05 22:13

相关推荐

  • 进程管理

    Process Manager 工作管理  jobs ctrl+z,& bg,fg nohup 进程,资源管理  查看:pstree,ps,top,vmstat,pmap 查询:pgrep,pidof,fuser,lsof 管理:kill,nice,renice 管理软件or命令  htop glances dstat …

    Linux干货 2016-04-11
  • 马哥教育网络班22期+第02周课程练习

    一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp:复制命令,copy的简称 复制选项详解: 1、交互式复制:root用户默认添加-i参数,普通用户默认使用命令本身,root用户也想使用命令本身需在命令前增加"\" [root@bogon ~]# ls /tmp/ newfil…

    Linux干货 2016-09-02
  • grub.config文件加密

    作用 在开机启动临时进入1模式的时候,系统先调用/etc/grub.conf。 /etc/grub.conf其实是/boot/grub/grub.conf的软连接。 加密改文件就有效的防止其他用户直接绕过口令登陆1模式,从而进入到root中做一些破坏。 我们可以看一下如何进入1模式。   我们可以看一下临时进入init1模式的窗口 这里的内容与gr…

    2017-07-22
  • grep,egrp,fgrep 命令与正则表达式

    一 简介     grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 Unix的grep家族包括grep、egrep和fgrep…

    Linux干货 2016-01-19
  • 几个有意思的小脚本

    ①.用脚本画一个圣诞树 效果 ②.用脚本画一个类似国际象棋的棋盘 半成品效果 再像这样在下面多写几个循环,就可以了,我这个方法太笨,全写完要截图的太多,就放一部分意思下 ③.编写一个脚本,打印出九九乘法表 效果 ④.编写一个脚本,可接收一个 1-7 的数字作为参数,用 if 和 case 两种方法实现根据输入的数字输出对应星期的英文 用if的方法 用case…

    2017-05-11
  • 编译安装httpd2.4-centos6

    centos6编译安装httpd2.4 默认是不支持,需自己动手进行编译 apr-1.4+ apr-util-1.4+ :需提前进行编译安装这两个软件 编辑安装httpd2.4实例 1、#安装开发包 [root@www ~]# yum groupinstall “Development Tools” “Server Pla…

    Linux干货 2017-05-17