先声明再使用!!!
a.变量与变量内容以一个等号连接. b.等号两边不能直接接空格。 c.变量名开头不能是数字。 d.单引号内为文本。 父进程子进程:
//在父进程中定义的变量在子进程中无法使用 $bash//开启子进程 quit//返回子进程会继承父进程的环境变量,不会继承父进程的自定义变量,故想要父进程的变量在子进程继续使用,则将这个变量定义为环境变量。
export [name]//声明为环境变量,即可在子进程中使用bash的默认前提: 1.变量类型默认为字符串,故若不指定变量类型,则1+2为一个字符串而不是计算式。 2.bash环境中的数值运算,默认最多仅能达到整数形态,所以1/3结果为0。 数组
arrary[index]=contentalias设置别名
alias rm='rm -i'//使每次删除前都默认询问 alias lm='ls -al|more'//输入lm等于执行了ls -al|more //删除别名 unalias rm//取消之前的别名history展示历史命令
history [n]//展示最近n条命令 history[-carw] -c//清除shell中所有history命令 -a//将现在所有history命令写入histfiles -r//将histfiles的内容读入目前的shell的history中 -w//可以看到关机并不会影响history的记录 只有history -c可以清除
先alias,再shell,再/bin/echo。
">"可以将数据重新定向到文件中,若文件不存在则将新建一个,若存在则会将文件清空再写入。 “>>“类似”>”,但若文件存在,则会将内容写在原内容下方,若不存在则新建文件并写入。
/dev/null //垃圾桶黑洞 //可以吃掉所有导向这个路径的信息命令执行的判断
sync;sync//分号(:)前的命令执行完会立刻执行后面的命令 cmd1&&cmd2//若cmd1执行完毕且正确则执行cmd2,否则执行cmd2 cmd1||cmd2//若cmd1执行完毕且正确则cmd2不执行,否则执行cmd2.管道命令可以处理经由前面一个命令传来的信息,也就是标准输出的信息。 输入ls -al/etc | less之后可以让巨量的代码逐页出现,管道仅可以处理标准输出,且管道后面接的第一个数据必须是命令。
cut取出一行信息中我们想要的。
cut -d//后接分割字符,与-f一起使用 -f//根据-d的分割字符把信息划分为数段,用-f取出需要的片段 -c//用字符的单位取出固定字符区间图中取出了第五个“:”之后的内容。 grep分析一行信息,取出我们想要的。
$grep [-acinv] '查找字符' filename -a//将二进制文件以文本文件的方式查找数据 -c//计算查找字符出现的次数 -i//忽略大小写的不同 -n//顺便输出行号 -v//反向选择,显示出没有查找字符的内容行sort默认以第一个信息来排序,若想要以别的部分排序则用sort -t ':' -k 3 wc命令
$wc [-lwm] -l//仅列出行的数量 -w//仅列出多少字 -m//多少字符 $cat text.txt | wc -m作用如下图,可统计字数。
paste直接把两行贴在一起,中间以TAB键隔开
paste [-d] file1 file2 //如果file前使用"-"则代表数据来自标准输入expand将[TAB]按键转换成空格键
$ expand [-t] file划分命令:split
split [-bl] file PREFIX //PREFIX为划分文件的前缀统一标识 -b//后接想要划分的文件大小,可加单位,例如b,k,m。 -l//按行数进行划分