第六单元
1.ctrl+a将光标迅速的移到命令的行首
ctrl+e将光标迅速的移动到命令的行尾
ctrl+<-/->将光标一次移动一个单词
ctrl+k能够删除光标到尾部的命令内容
ctrl+u能够删除光标到首部的命令内容
ctrl+l=clear
2.文件名匹配c++
*匹配任意长度的任意字符
?匹配任意单个字符
[]匹配范围内的字符
[0-9] ,[a-z],[A-Z],[:alpha:]包括26个字母大小写=[a-zA-Z]
eg:[[:alpha:]]b.mp3 如:ab.mp3 bb.mp3
[:lower:]全部小写字母
[:upper:]全部大写字母
[:digit:]全部数字
[:alnum:]包含全部大小写字母,数字,标点符号
[:punct:]全部标点符号
[:space:]空格键
命令行展开命令:(1)~ eg:ls ~rehat (2){} eg:touch {a,b}_{c,d}
3.cat
-n : 显示行号
-A : 显示全部内容
-v : 显示打印字符
-T :显示制表符
eg: cat /etc/shells 显示当前系统中可用的Shell
4.切换Shell
eg:第一步:ksh切换到ksh 第二步:exit退出ksh回到bash
5.shell是应用程序。提供用户链接系统的接口。且是个软件
(1)提供命令
(2)提供编程
(3)编译类:源代码——>目标代码(c,c++,这些须要编译器)
(4)脚本类:源代码,(须要解释器)。
6." "弱引用
' '强引用
` `命令引用 eg:FILE=`ls /root` 执行ls /root/ 命令后,并将结果赋给FILE FILE=$(ls /root)
7.环境变量-->能够在字Shell中引用
export FILE ——>声明的是环境变量
readonly NAME -->声明的是不可撤销的变量
(1)env也能够查看环境变量
改环境变量 eg:env PATH=/bin ls -->意思是在运行ls命令时,只在/bin中查找
(2)printenv能够显示全部或部分环境变量
(3)系统环境变量:HISTSIZE HISTFILE HISTFILESIZE HISTCONTROL
PS1:定义命令前面中括号的显示
PS2:定义续行符,就是命令没输完时的提示你继续输入的符号(>)
PS3:
PS4:
8.特殊变量:(1)$? (2)$$ 查看进程号
9.定义命令别名:alias aa=`cd /etc/sysconfig/network-scripts` ;(这只是临时的定义)
撤销别名:unalias aa
10.写一个脚本:必须写 #!/bin/bash
追踪的方法有两种(1)在脚本中写入 set -x (2)bash -x a 用这个命令运行a脚本
11.位置参数变量-->指在执行脚本时,可以传递参数给脚本,同时能在脚本中运行
在文本d中时,写入
SUM=$(($1+$2))
echo $SUM
注释:这里的$1与$2是形参 ,在命令中输入的数字
12./etc/profile,/etc/profile.d/*, /etc/bashhrc-->这里保存的是系统的环境变量
上面是全局的,下面的是用户家目录中的
~/.bash_profile, ~/.bashrc, ~/.bash_history,~/.bash_logout
(1)交互式登录相关的:就是上面包含profile的文件或目录-->放置环境变量的定义
(2)非交互式登录相关的:包含bashrc-->放置别名的定义
(3)用户在登录时(交互式)的读取顺序:/etc/profile-->/etc/profile.d/*-->/.bash_profile-->/.bashrc-->/etc/bashrc这些读取顺序很重要,后面读取的将覆盖前面读取的
(4)非交互式:~/.bashrc-->/etc/bashrc-->/etc/profile.d/*
13.当用户登陆时,系统打印一句话
如:(1)写一个脚本
#!/bin/bash
echo "welcome,$USER"
(2)给用户权限
(3)在用户家目录中打开.bash_profile 并在最后面编写上面的脚本路径
14.定义一个永久别名:在.bashrc中定义。
如,alias cdnet=`cd /net/sysconfig/network-scripts/`
而后,再敲soure .bashrc 或者敲 ..bashrc
别名就生效了
git