bash学习

bash编程学习

mkdir -p

cd ~

ls -a

tail -f  /var/log/httpd/access

grep -i

-E 同时过滤多个字符

alias 别名

which 查看文件所在路径。

tree -L 查看文件目录

seq -s 打印数字序列echo {1,5}

whoami 

w 当前登录的用户

sudo 让普通用户可以有root权限

lsof -i:port 列表打开的文件(初级)

chkconfig 

netstat

chattr 改变文件属性

;多个命令的分隔

2>标准错误输出 


shell

shell 是命令器

shell 脚本

清空文件可以用

cat /dev/null > messages

vim qk.sh

#!/bin/bash

cd /var/log

cat /dev/null > messages

dmesg/var/log/messages是系统故障工具

shell在工作中上的地位和作用

shell 处理纯文体的东西

常用shell

cat /etc/shells

echo $SHELL

shell 语法

#!/bin/bash 

如果不指定就会看系统哪个脚本用哪个。

bash --version

echo $USER(系统环境变量)

shell 脚本执行

1、bash script-name

2、path/script

3、source script 或 .script name

source 和 . 可以把变量和函数带入到shell中

shell 脚本行为习惯

# date

# author

# mail

# version

ps:[ a ] 两边要有空格

shell变量基础及深入

变量类型

环境变量(全局)

/etc/bashrc;/etc/profile;/etc/profile.d(crond任务要注意),以后要用export 来输出

环境变量设置的常用文件与区别

/etc/profile.d/ 登录之后生效

查看环境变量: env

export 变量名=value

export OLDBOY=37

export //环境变量生效

想永远生效

/etc/profile下所有用户生效,全局变量

局部变量

定义

取消环境变量

unset 变量名

显示环境变量

echo $HOME

printf 

引号总结,变量定义数据不加“”,其他默认加“”

双引,

把双引号内容输出:如果内容中有命令(要反引下)、变量、特殊转义符,会先把变量、命令、转义符解析出结果。

无双引号

不可以用空格

ex:

echo 'today is date'

echo 'today is `date`'

echo "today is 'date'""

echo "$(date)"

echo $(date +%F).tar.gz

tar cvf "etc.$(date +%F).tar.gz" /etc

ls -l `which cat`


你可能感兴趣的:(bash编程)