umask 创建目录时 777-umask 作为默认权限
创建文件时 666-umask 普通用户umask :002 root用户:022
umask 查看当前用户umask 权限 umask 数字(0-7) 更改umask (临时性的)
通配符
* 匹配一个或多个字符 ?匹配任意单个字符
[0-9][a-z][abc] 匹配任意指定范围的一个字符
[^abc]匹配除了指定范围的字符的任意一个字符
预定级别的字符也可以被使用 ([:keyword:]某一类字符)
[:aplha:]([a-z A-Z]) [:apper:]([A-Z])[:lower:](a-z)
[:digit:]([0-9]) [:alnum:]([a-z A-Z 0-9]) [:punct:](标点) [:space:](空白)
命令补齐 文件名补齐 已经定义到$PATH中 查看 echo $PATH
history 查看历史命令 echo $HISTSIZE 查看历史写入的文件
-num 最近的num条记录 -a写入历史(内存到文件)
-c清空历史 -w写入历史(覆盖) -n(文件到内存)
!!上一条命令 !char 以char开头的历史命令 !num执行历史第num条命令
!引用上一个命令的最后一个参数 !?abc 包含abc字符串的历史命令
!-n从后向前数n个命令 ^old^new上个命令中的部分替换为新部分执行
Ctrl-r 查找历史命令 Alt-. (Esc-.)用来切换历史命令
去掉重复的行 export HISTCONTROL=ignorespace忽略以空格开头的命令
ignoreboth 重复去掉
ignoredups重复去掉(连续重复)
erasedups重复的命令(可非连续)
touch a- `date +” %H%M %S”` 建a-时间作为文件名的文件
~ 用于家目录文件的取得 ~/ (自己家) ~tom/ (tom家)(c语言移植过来的)
命令的编辑技巧 Ctrl-a移动到行首 -e移动到行尾 –u当前位置前删除 –k删除到尾
SHELL 一个翻译官 用户与库,内核的接口 一个应用软件 给予编程的环境
Shell历史 sh (最早)àcsh(c语言风格)àkshàbash (新版bash) <--GPL
C++静态语言 shell脚本 动态语言
bash 的变量 本地(用户)变量 环境变量 预定义变量(位置变量) 特殊变量
变量的声明 NAME=Tom NUM=34 变量的引用echo ${NAME} 大括号有时可省略
变量的赋值可以使用命令替换
本地变量 只用于的当前shell 子shell无用
环境变量 export 将本地变量转成环境变量 子shell可用
eg:export LANG=en 主语言环境设为en
系统的语系支持 编辑 /etc/sysconfig/i18n (最后一行)
env 列出所有的环境变量 set其它所有变量的说明
位置变量 $0(命令本身) $1$2$3$4$5$6$7$8$9用户输入的值
特殊变量$? $!等
变量的键盘读取 #read [-pt]
eg:#read atest
This is a test
#echo $atest
This is a test
转载于:https://blog.51cto.com/linuxbpm/351214