bash shell

 

命令补齐

$PATH  echo $PATH 显示path文件

文件补齐

则是在已经指定的目录前缀为起点目录下查找所对应文件或目录

命令历史  history  可以显示所使用过的命令默认1000  echo $History   存储在 .bash_history

 

变量是命名的内存空间  echo $History

history –a 将缓存中的内容写到文件中

history 10显示最近10个命令   !!执行最后一条命    ec 执行最后一次以ec开头的命令   !加11执行最后第11条命令  !11    !?cl 说明 执行最后了以cl开头的命令

!$表示引用上次最后一个命令的参数  如:ls  !$   Alt+.引用上次最后一个命令的参数

 

如果不想让history显示重复的命令则可以使用 

export HISTCONTROL=[ignorespace |ignoredups |erasedups |ignoreboth]

分别代表:忽略以空格开头的  忽略连续重复的行  忽略不连续重复的行  

ctrl+r从命令历史

 

展开  命令展开(替换):把一个命令的执行结果作为参数使用

touch a-‘date+”%”’

 

bash shell 变量

本地变量: NAME=jim    只能以字母或下划线开头

使用:echo ${NAME} 或者echo $NAME

环境变量: export  NAME

预定义变量   位置变量

特殊变量

FILE=’ls /tmp’   echo $FILE

 

bash

sh àGNU

弱类型

如何创建Shell脚本

脚本以.sh结尾

vim 123.sh

#!/bin/bash     告诉系统你要使用的是什么脚本  这里是/bin/bash

#

pwd

cd /var

pwd

 

bash –n 123.sh来检查语法错误 若正确则不显示信息

./123.sh来执行脚本

在当前目录下mkdir bin    move 123.sh  bin     cd bin/   123.sh

 

let C=$A+$B

 

 

输入设备: 键盘鼠标

输出设备: 打印机 显示器

标准输入输出(默认的)

STDIN  0  键盘

STDOUT 1 显示器

STDERROR   2 标准错误输出  默认显示器

输入输出的重定向

STDIN  0  键盘   <

STDOUT 1 显示器  >

STDERROR   2 标准错误输出  默认显示器  2>

如:ls /etc  > /root/cat.df

注意这样会覆盖原来的文件   如果不要覆盖  那么可以使用<<   >>

 

如何将正确的重定向到正确的文件中

 

将正确的和错误的都重定向到一个文件中  &>

ls /etc &> /root/ls4.out

 

2>&1将错误的信息输入到????

 

管道

把前一个命令的输出作为后一个命令的输入

ls /etc | sort | less

 

cat /etc/issue |tee /root/tee.out (两项输出)

使用cat << EOF 一次可以输入多行

 

for 循环

for VAR in SEQ

do

…..

….

done

eg:  for DIR in /var/*;

do file $DIR;

done

 

if判断

 

if [条件];then

else

fi

 

条件表达式:test condition   整数测试  -eq

            [ condition ] 注意空格

            ` condition `  注意空格