Linux学习
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习相关的知识,希望对你有一定的参考价值。
前言:接着Linux学习(二)vim文本编辑器说
vim 文本编辑器
u 撤销最近的更改
/* 撤销之前多次更改
U? 撤消光标落在这行后所有此行的更改
按ctrl?+ r 重做最后的“撤消”更改
. 重复前一个操作
n. 重复前一个操作n次
退出模式下
e! 直接还原到文件最初打开状态
v 面向字符选中
V 面向行选中
ctrl + v 面向块选中
配置文件:永久有效
全局: /etc/vimrc
个人: ~/.vimrc
扩展模式:当前vim进程有效
set nu 显示行号
set ic 忽略大小写
四,shell脚本编程基础
1.shell脚本基础
格式要求:首行shabang机制
"#!/bin/bash"
"#!/usr/bin/python"
"#!/usr/bin/perl"
2.创建shell脚本
使用文本编辑器(例如vim)创建文本文件
第一行必须包括shell声明序列: "#!"
例如:"#!/bin/bash"
添加注释
注释以 "#" 开头
shell脚本示例
脚本调试
检测脚本中的语法错误
bash -n
调试执行
bash -x
3.本地变量
变量赋值: name=‘value’
可以使用引用value:
(1) 可以是直接字串:name= "root"
(2) 变量引用: name="$USER"
(3) 命令引用: name=`COMMAND` name=$(COMMAND)
变量引用: ${name} $name
"":弱引用,其中的变量引用会被替换为变量值
‘‘:强引用,其中的变量引用不会被替换为变量值,而保持原字符串
4.退出状态
进程使用退出状态来报告成功或失败
0 代表成功, 1-255代表失败
$? 变量保存最近的命令退出状态 (echo执行)
5.算数运算
实现算数运算
var=$[ 算术表达式 ]
var=$(( 算术表达式 ))
echo ‘算术表达式’ | bc
?写脚本时的实用快捷键?
ctrl + z 写脚本时可以保存到后台
?? fg 回到后台脚本
bg 查看有多少后台
?? shift +^ 跳到行首
?? shift +$ 跳到行尾
?? :e! 直接恢复到文件最初的状态
6.逻辑运算
! 非,取反向结果( ! 加到前面,后面要有空格)
7.条件测试
test
[ ]
[[ ]]
中括号里面前后必须有空白字符
/usr/bin/[ 相当于test
man test 整理命令选项(解释很详尽,随时用随时查)
执行操作符
&& 并且,同时为真为真 相当于‘ -a‘
|| 或者,有一个假为假 相当于‘-o‘
用于 [[ ]] 中
数值测试
-gt 是否大于
-ge 是否大于等于
-eq 是否等于
-ne 是否不等于
-lt 是否小于
-le 是否小于等于
前有空格后有空格
字符串测试
== 是否等于
!= 是否不等于
=~ 左侧的字符串能否匹配右面的模式
-z 字符串是否为空
-n 字符串是否为不空
字符串一般都需要用" " 引起来
文件测试
文件存在性及类别测试
-e FILE: 文件存在性测试,存在为真,否则为假
-f FILE:是否存在且为普通文件
文件权限测试:
-r FILE:是否存在且可读
-w FILE: 是否存在且可写
-x FILE: 是否存在且可执行
文件特殊权限测试:
-u FILE:是否存在且拥有suid权限
-g FILE:是否存在且拥有sgid权限
-k FILE:是否存在且拥有sticky权限
文件大小测试
-s FILE: 是否存在且非空
8.read命令
read 接受输入
-p 显示输入的内容
-s 静默,不显示输入的内容
-t N 控制输入时间
-n N 控制输入字符的最大长度
-d 字符 结束符
通常 -p 放最后
9.bash配置文件
全局配置
/etc/profile
/etc/profile.d/*.sh
/etc/bashrc
个人配置
~/.bashrc
~/.bashrc_profile
profile 类
/etc/profile
/etc/profile.d/*.sh
~/.bashrc_profile
控制 : 环境变量 ; 运行命令或脚本
bashrc 类
/etc/bashrc
~/.bashrc
控制 : 命令别名和函数 ; 本地变量
修改配置文件生效方法
重启shell进程
. 或 source(后面接文件路径命,中间有空格)
10.俩种登录方式
交互式登录
直接通过终端输入账号密码登录
使用“su - UserName” 切换的用户
执行顺序: /etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc
非交互式登录 可以继承
su UserName
图形界面下打开的终端
执行脚本
任何其它的bash实例
执行顺序: ~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh
额外可以了解可能会用到的
-:普通文件
d: 目录文件
b: 块设备
c: 字符设备
l: 符号链接文件
p: 管道文件pipe
s: 套接字文件socket
wall 发广播
ping -W1 -c1 只执行一次,并且等待一秒
stty -echo 敲命令不显示 不换行
stty echo 解除
以上是关于Linux学习的主要内容,如果未能解决你的问题,请参考以下文章