日常的总结,未完待续..............
1.目录的权限将会覆盖该目录中文件的权限。例如,如果目录docs具有如下的权限:
drwxr--r-- 1 louise admin 2390 Jul 23 09:44 docs
而其中的文件pay的权限为:
-rwxrwxrwx 1 louise admin 5567 Oct 3 05:40 pay
那么admin组的用户将无法编辑该文件,因为它所属的目录不具有这样的权限。
该文件对任何用户都可读,但由于它所在的目录并未给admin组的用户赋予执行权限,所以该组的用户都将无法访问该目录,他们将会得到“访问受限”的错误消息。
2.echo的输出:
echo有三个经常用的属性,\c不换行 \n换行 \t 跳格,但是直接使用不起作用,比如你想让输出的字段后边连续3个换行,你这样写:#echo "aa\n\n\n",输出是这样的:
不起作用,所以linux系统要想使用这个,必须在前面加个-e选项才启作用
#echo -e "aa\n\n\n" 输出:
echo还有一个-n的选项,它的作用是禁止echo输出后换行,因为默认的echo输出结果后会自动换行,加上它以后就不换行了
3.read的使用
read语句从键盘或文件的某一行文本中读入信息,并将其赋给一个变量。如果只指定了一个变量,那么read将会把所有的输入赋给该变量,直至遇到第一个文件结束符或回车。
如果只有一个变量,它将被赋予直至回车之前的所有内容:
如果两个或者两个以上的变量,则shell就用空格符作为变量之间赋值的分隔符,如输入姓和氏
如果输入文本域过长,Shell将所有的超长部分赋予最后一个变量。下面的例子,假定要读取变量名字和姓,但这次输入三个名字;结果如下:
4.cat在脚本中的运用,直接上事例吧
5.正则匹配出现的次数
使用*可匹配所有匹配结果任意次,但如果只要指定次数,就应使用\{\},此模式有三种形式,即:
pattern\{n\} 匹配模式出现n次。
pattern\{n,\} 匹配模式出现最少n次。
pattern\{n,m} 匹配模式出现n到m次之间,n,m为0-255中任意整数
如我的目录下有4个文件:ab aab aaab aaaab
现在我们匹配出现3个的:
#ls | grep '^a\{3\}b' 注意前面有个^啊,就是要a是从开头正好3个后边紧跟一个b的,要是不加^,也会匹配aaaab,因为里面也有3个aaa连一起的,他是这样匹配的[a][aaab]
匹配出现2个a到3个a的:
#ls | grep '^a\{2,3\}b'
匹配2个以上的:
#ls | grep '^a\{2,\}b'
6.grep的使用:
常用的grep选项有:
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。
-v 显示不包含匹配文本的所有行。
-i和-v就不用说了,提一下-c和-n
-n就是显示匹配的行及行号:
上面的命令是看znew文件里的空白行号
-c就是统计匹配的行数:
7.查看cpu的信息:
grep "CPU" /proc/cpuinfo
8.查看cpu的位数:
getconfig LONG_BIT
9.查看系统的位数
getconf WORD_BIT
10.在使用vim编辑器的时候,有时候编辑一个文件,而文件内容比较多,如果需要快速清空整个文件,可以使用一下命令:
在命令模式下,首先执行 gg,这里是跳至文件首行,再执行:dG,这样就清空了整个文件!
11.grep只输出匹配内容
-o选项,只输出匹配内容
12.a='1/2/3'如何截取得到3?
13.用namei看所有路径的权限