Linux指令(五)
echo $PATH
echo $HOME
echo $MAIL
env 查看系统环境变量
set 除了会显示当前的环境变量,也会显示自定义的环境变量
name=furuitao 变量定义,等号两边不能有空格
unset name 去掉变量的定义
export
alias 命令别名,查询有那些命令别名
alias lm='ls -al|more'
unalias 取消命令别名
history 查询历史指令,配合“!”使用
!45 执行第45个历史指令
!! 执行上一个指令
!al 执行最近一次以al开头的指令
在命令行输入的不管是变量,还是别名,都只针对该次登录的设定。
系统设定值:每个用户进入到bash shell之后先读取的文件。
/etc/profile PATH USER HOSTNAME MAIL HISTSIZE umask等变量。所有用户都会用到这里的信息
/etc/bashrc 这个文件用于规划umask
/etc/man.comfig man page的路径设定
个人设定:个人根目录下的几个隐藏文件
~/.bash_profile 定义个人路径(PATH)与环境变量的文件名称。
~/.bashrc 对于个人喜好的bash设定,如:个人变量,命令别名设定,路径的重新定义
~/.bash_history 记录使用过的历史指令
~/.bash_logout 注销shell的时候BASH所做的事情
source 不用注销重新登录,而直接读入变量配置文件。实现直接更新环境变量,让之生效。
当一次登录,需要处理三种不同的PATH时候,就可以使用source使某个PATH生效
通配符:*,?,[],'
ls test* 表示test后跟任意个字符都予以接受
ls test? 表示test后要接一个字符
ls test??? 表示test后要接3个字符
cp test[1-5] /tmp test1,test2,test3,test4,test5若存在,就复制到/tmp下
cd /lib/modules/'uname -r'/kernel/drivers 被 ' ' 括起来的内容先执行
ls /furt ; ls / ; 2条指令都会执行,不管第一条是否执行成功
ls /furt && ls / && 第一条执行执行成功,第二条指令才执行
ls /furt || ls / || 第一条指令执行失败,第二条指令才执行
系统默认不搜索当前目录下的文件
./commond 执行当前目录下的执行文件
命令重定向
ls -al > test.txt 显示结果输出到test.txt,若文件存在,则删除原文件
ls -al >> test.txt 显示结果输出到test.txt,该文件累加,保留原数据
ls -al 1> test1 2> test.err 正确数据输出到test.txt,错误数据输出到test.err
ls -al 1> test1 2>&1 不论正确还是错误的都输出到test.txt
ls -al 1> test1 2> /dev/null 将错误的数据丢掉
mail -s "test" root < /root/.bashrc 将原本需要键盘输入的数据经由文件导入
管线命令: | 只接受标准输出(正确的数据)
cut 切割字符
cat /etc/passwd | cut -d ":" -f 1 类似于split,列出第一个区块
last | cut -c1-20 将last之后的数据,每一行的1~20个数据取出来
sort 排序
cat /etc/passwd | sort 将列出来的账号排序
cat /etc/passwd | sort -t: +2n 以:为分隔符,将个人账号已用户ID排序
wc -lmw 统计数量
-l 多少行 -m 多