- 系统环境变量配置文件:
/etc/profle /etc/bashrc
个人环境变量配置文件:
.bash_profile(用户登录时执行)
.bashrc(登录或打开shell时执行)
.bash_history(历史命令)
.bash_logout(退出shell时执行)
#后面的内容表示注释,使用#时,#前面应加上空格,否则就不是注释。
\ 脱义字符(类似其它语言的转义字符)
Cut 要想用-f设置区块,必须用-d设置分隔符
Sort 要想使用-k对区域内的字符串排序,必须用-t设置分隔符
参数后跟分隔符的时候中间可以没有空格,分隔符可以不用引号括起来了,跟数字也一样,比如:head -n5 /etc/passwd | sort -t: -k3
Uniq 不会改变源文件,如果要将去重的结果存下来,应该将结果输出到新文件。
Tee:将文件写入后面的文件,并显示在屏幕上,相当于把输出流分成了两份。例子:echo "abcdefg" |tee hijklmn.txt
Split –l(按行) -b(按块大小)
!$: 上条命令的最后一个变量
2.
1)临时更改:HISTSIZE=10000
永久更改:
进入/etc/profile
普通用户没有权限,所以切换到root。
2) Shell中双引号保留原有字符的特殊含义,单引号可以去掉原有字符的特殊含义。所以我们有两种改法:PS1="[\u@\h \W]\\$ ";PS1=‘[\u@\h \W]\$ ‘
3) ls|tr '[a-z]' '[A-Z]' 能将改变的结果列出来
使用for循环加tr命令,能直接改变文件的名字。
4) sort -t: -k5 passwd
5) cut -d: -f3 passwd
6)/etc/profile : 所有用户在登录时被执行,里面保存着环境变量和开机需要执行的一些命令。
/etc/bashrc : 所有用户登录需要执行的命令
.bash_profile:登录或者打开shell都会被执行
.bashrc 个人用户在登录时被执行,里面保存着环境变量和开机需要执行的一些命令。登录时执行一次
/etc(比如:/etc/profile和/etc/bashrc)文件夹下的配置文件时系统级的配置文件,所有用户都会使用;.开头的文件(比如.bashrc和.bash_profile)是用户级的文件;/etc/profile和.bash_profile只在用户登录的时候执行;/etc/bashrc和.bashrc文件每打开一个bash都会被执行。*profile一般都会调用*bashrc。
~/.bash_profile 是交互式、login 方式进入 bash 运行的,意思是只有用户登录时才会生效。
~/.bashrc 是交互式 non-login 方式进入 bash 运行的,用户不一定登录,只要以该用户身份运行命令行就会读取该文件。
# /etc/profile # System wide environment and startup programs, for login setup
# /etc/bashrc # System wide functions and aliases
# .bash_profile # User specific environment and startup programs
#.bashrc # User specific aliases and functions
是
7)声明一个变量,使其进入子shell后也生效
8)变量名可以用数字字母下划线,但是不能以数字开头。
9)当命令在运行时按ctrl + z,命令就会在后台停止,再输入bgn,命令会在后台运行,输入fgn命令会被调到前台运行。在命令后加上 &后执行,命令会直接在后台运行。
10)ls test*
11) ls |tee abc.txt
12)别名:alias la='ll -a',输入la,显示所有文件
也可以使用变量:la='ls -a'
13)bash shTest.sh > abc.log 2>&1 &
shTest.sh运行后会有标准输出和标准错误输出,> abc.log表示将标准输出重定向到abc.log ,2>&1表示将标准错误输出重定向到标准输出。
14) split -b 10M passwd byBolockSize
split -l 5 passwd byLine
15) ;就是执行完这一条语句执行下一条语句,&&是与的意思,当&&前面的命令为false(没有返回值,执行失败)时,式子的结果一定是false,没必要在看(执行)&&后面的命令;||是或的意思,当||前面的命令执行结果为true(命令执行成功),式子的结果一定是true,没必要再执行||后面的命令。
lll&&ls
echo 'lll&&ls'
echo 左边是假的,式子结果一定为假,右边不会执行
pwd||ls
echo 'pwd||ls'
echo 左边是真的,式子结果一定为真,右边式子不会执行
pwd&&ls
echo 'pwd&&ls'
echo 会执行
lll||ls
echo 'lll||ls'
echo 会执行
echo 或运算符用在,需要式子执行其中一个的时候,即不确定前面的式子是否会执行失败,后面的式子当做前面的式子
echo 执行失败时的保险
echo 与运算符用在,当前面的式子执行成功了之后,才去执行后面的式子,适合有序执行的几条命令,
echo 有一条命令执行出错,后面的命令都会停止执行
16)把设置变量的语句添加在某用户根目录下的.bashrc文件里面。
17)env只能列出系统变量,set能列出系统变量和用户变量。