亚信培训部分笔记

第一章 Unix/Linux使用技巧

1.1 环境变量

1. 连接服务器
  1. 中文显示
    • locale -a:查看中文字符集
    • export LANG = zh_CN.gb18030
    • locale -gen(LINUX):生产字符集
  2. 乱码恢复
    • echo -e ‘\xf’:乱码恢复
    • echo -e ‘\xe’:变成乱码
  3. 使用Zmodem协议传输文件
    • sz发送,rz接受
    • yun install -y lrzsz
2. shell
  1. bash使用技巧:
    1. “tab”见补全
    2. 上下箭头回朔历史命令
    3. 左右箭头移动光标
    4. History查看实例命令
    5. ![number]直接执行历史命令
    6. ^old^new替换刚才命令中的字符
    7. clear 或者 CTRL+L
    8. cd or cd ~:回到home
3. 环境变量
  1. 生命周期
    1. 永久:文件中
    2. 临时:当前session中export
  2. 范围
    1. 系统全局
    2. 用户自定义
  3. 设置环境变量
    1. export JAVA_HOME=/home/app/jdk 1.6/ (=号前后不能有空格)
    2. /etc/profile、/etc/bash.bashrc (全局)
    3. ~/.bash_profile、~/.bash_login、./profile、/~.bashrc
    4. /~.bash_logout
    5. source 文件名:文件生效
  4. 显示
    1. echo $
    2. env
4. 环境变量PATH
  1. 提供命令的搜索路径
  2. which java
  3. 自己的脚本放进PATH
    1. $HOME/bin
    2. ln -s
  4. export PATH=$JAVA_HOME/bin:$PATH
5. 环境变量LD_LIBRARY_PATH
  1. 动态库的查找路径
  2. LD_LIBRARY_PATH/SHLIB_PATH
  3. man ld.so:看自己的系统依赖哪个环境变量
  4. /etc/ld.so.conf / ldconfig
  5. ldd:显示动态库依赖
6. 环境变量PS1
  1. shell提示符
    1. #:root
    2. $:普通用户
  2. PS1="[\u@\h \w]$"
    1. 当前是在哪台主机上,使用哪个用户,在哪个目录下
  3. echo $PS1
  4. man bash:搜索PSI获取变量定义
7. 别名alias
  1. alias:显示当前定义的别名
  2. alias tomcat_start=’ sh /home/app/ tomcat/bin/start.sh’
    1. tomcat_start
    2. alias tomcat_start
  3. alias rm=’ rm -i’
  4. alias ll=’ ls -l’

1.2 基础命令

1. 认识自己
  1. id
  2. id root
  3. pwd
2. 认识命令
  1. man
  2. help
3. 了解系统概况
  1. 系统版本:cat /etc/redhat-rdlease ; uname -a
  2. CPU信息:cat /proc/cpuinfo ; lscpu
  3. 内存信息:cat /proc/meminfo ; free
  4. 网卡信息:ifconfig ; ip addr ; ethtool eth0
  5. 磁盘信息:df -h ; df -k
  6. 主机名:hostname
  7. cpu性能:superpi
  8. 磁盘性能:fio
  9. 网络性能:iperf
4. ulimit
  • 用来限制进程对资源的使用情况
  • ulimit -a:列出当前用户的限制情况
    • -n size:设置内核可以同时打开的文件描述符的最大值,单位:n
    • -f size:设置创建文件的最大值,单位:blocks
    • -m size:设置可以使用的常驻内存的最大值,单位:kbytes
    • -u size:设置用户的最大进程数,单位:n
  • /etc/security/limits.conf
5. 软件的安装卸载
  • rpm:软件之间有依赖
    • rpm -ivh:安装
    • rpm -e:卸载
    • rpm -qa:查是否装
  • yum
    • yum install
    • yum remove
    • yum search
    • yum repolist:仓库
    • /etc/yum.repos.d/
6. su
  • 切换用户
    • su root
    • su -root --切换用户,改变环节变量
    • su -username
    • su -username -c command
    • sudo
      • visudo -root执行
7. ps
8. kill
9. date
10. 网络
  • netstat -pan
  • ping
  • telnet ip port
  • ssh user@host
11. 系统负载
  • top
  • iostat
  • vmstat
  • nmon
  • atop
  • dstat
  • sar

1.3 文件类型

  1. 文件类型:普通、设备、管道、网络接口。。。
  2. 文件时间属性
    • modification time(mtime,修改时间)
    • access time (atime,访问文件)
    • change time(ctime,属性或位置修改时间)
  3. 确认文件类型
    • ls -l
    • ls -a
    • file file_name
    • stat file_name
  4. 权限变更
    • chown --chown [-R] user [:grp] file…
    • chmod [ugoa]*([-+=])[rwxXst]* | [ugo]))+
    • 700\755

1.4 文本文件操作

1.5 文本编辑和crontab

第二章 shell脚本(B shell)

1. shell语法

1. 基本变量
  1. 普通变量:
    var=1:赋值
    echo $var:$表示引用
  2. 数组:
    a=(1 2 345 abc)
    $(a[0])
  3. 操作
    1. a=123; b=abc
    2. c=KaTeX parse error: Expected '}', got '#' at position 2: {#̲a}; 【取a的值的长度】 …{a:2:1} 【从a中第二个位置取一个元素】
    3. d=$((a*2))
    4. c=" abc $a" 【字符串拼接】
2. 分支
  1. 语法
if [ 比较运算 ]
then
	...
elif [ 比较运算 ]
then 
	...
else
	...
fi
case 变量 in
	表达式1) ...
		;;
	表达式2) ...
		;;
	*)		...
		;;
esac
  1. 比较运算
    1. 字符串:等于或不等于
      1. [ “$a” = “abc” ]
      2. [ “$a” != “abc” ]
      3. [[ “$a” > ‘def’ ]] # ksh 2.0后扩展支持字符串比较和正则表达式
      4. [[ $a =~ ^a ]]
    2. 数组:-eq、-ne、-gt、-ge、-lt、-le
    3. 逻辑:&&、||
    4. 文件比较
3. 循环
# for循环
for 变量名 in [ 数值列表 ]

# do循环
do
	...
done

# while循环
while(until)
do
	...
done

# 控制
break
continue
4. 函数
  1. 数学运算,只支持整型(浮点型自动取整,字符串取0)
    $((…))
  2. 内置函数
    echo 输出、shift 删除命令行参数第一个、read 读输入、exit 退出
  3. 自定义
    function name
    {

    }
  4. UNIX命令
    cut、sed、awk、wc、grep、expr
  5. 引号
    1. 双引号:转化变量,避免命令行解析特殊字符
    2. 单引号:不转换,直接用字符串本身
    3. 执行:符号为``,作用是执行,返回结果。包含在双引号内也可以被执行
5. 输入输出
  1. 输出输入
    1. >:输入到一个文件,没有就创建、有就覆盖
    2. <:从一个文件读数据
    3. >>:追加到一个文件,没有就不操作,有就追加
    4. <<:一直读到后面的字符串
6. 特殊变量

2. 案例:get_cdr.sh

# 从etl主机取(话费)详单
# 详单文件小而且多,有些被压缩了
# 取到本地后还有后续进程继续处理
# 取一个时间段(天)的详单文件

# 话单文件提取核心语句
	# 方式一
	ftp -n $host_name << EOF
	User $ftp_user $ftp_pass
	bin
	cd $cdr_dir
	prom
	mget $file_name
	Quit
	EOF

	# 方式二
	wget ftp://$host_name//$cdr_dir/$file_name

第三章 MySQL

3.1 安装

3.2 sql命令

  1. show databases;
  2. use 表名;
  3. show tables;
  4. desc 表名:显示表结构

3.2 日期数据类型

  1. select date_format(now(),"%Y-%m-%d %H:%i:%s"):转换日期类型,now()表示当前时间,后面的表示显示方法为“年月日 时分秒”
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值