Linux专项练习
- grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 find只能匹配单个字符,find会找到匹配的字符的第一个,并返回是位置首地址,其后与之匹配字符串则不会被查找。而grep会查找所有与之匹配的字符串。
- cut命令用来显示行中的指定部分。该命令有两项功能,其一是用来显示文件的内容,它依次读取由参数file所指 明的文件,将它们的内容输出到标准输出上;其二是连接两个或多个文件,如cut fl f2 > f3将把文件fl和几的内容合并起来,然后通过输出重定向符“>”的作用,将它们放入文件f3中。详见:http://man.linuxde.net/cut
- cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。
- fmt命令读取文件的内容,根据选项的设置对文件格式进行简单的优化处理,并将结果送到标准输出设备
-c或--crown-margin:每段前两列缩排;
-p或-prefix=:仅合并含有指定字符串的列,通常运用在程序语言的注解方面;
-s或--split-only:只拆开字数超出每列字符数的列,但不合并字数不足每列字符数的列;
-t或--tagged-paragraph:每列前两列缩排,但第1列和第2列的缩排格式不同;
-u或--uniform-spacing:每列字符之间都以一个空格字符间隔,每个句子之间则两个空格字符分隔;
-w或--width=或-:设置每列的最大字符数。
- dd命令用于复制文件并对原文件的内容进行转换和格式化处理。dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果。用的比较多的还是用dd来备份裸设备
- crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序
crontab基本格式 :
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令 - Linux文件权限一共10位长度,分成四段,
- 第1位:代表文件的类型,一般有三类,- 代表普通的二进制文件,l 代表符号链接文件(软链接),d 代表目录文件
- 第2-4位:代表文件所有者(拥有者)的权限,分别对应 可读(r) 可写(w) 可执行(w),- 代表没有该项权限
- 第5-7位:代表文件所有者所在的组的其他用户的权限,分别对应 可读(r) 可写(w) 可执行(w),- 代表没有该项权限
- 第8-10位:代表系统其他用户的权限,分别对应 可读(r) 可写(w) 可执行(w),- 代表没有该项权限
每部分由【 r w x:\(2^2\) \(2^1\) \(2^0\) :读取 写入 执行 】代表相关权限,用二进制结果数字来进行修改权限;
例如:
--------- : 000
r-xr-xr-x : 555 (r-x:\(2^2\)+\(2^0\)=5)
rwxrwxrwx : 777 (rwx:\(2^2\)+\(2^1\)+\(2^0\)=7)
在 Linux中,file.sh 文件的权限为 -rw-r--r-x,其对应权限用数值形式表示为645
如;umask 的值为022
创建一个文件的默认权限应该就是777-022=755
由于 执行权限(x) 比较危险,Linux默认不会赋予此权限,所以实际创建文件的默认权限是 755-111=644
如果此时创建的是一个软链接文件,则权限位为 lrx-r--r-;如果此时创建的是一个普通文件,则权限位为 -rx-r--r--;如果此时创建的是一个目录文件,则权限位为 drx-r--r--
chmod(change mode):修改文件属性;改变文件属性
chown:改变文件属主;更改文件的拥有者
-
在Linux下查看文件有多种方法:
cat:由第一行开始显示文件所有内容;
tac:从最后一行开始显示文件的所有内容,注意 tac 与cat 写法正好相反;
more:一页一页的显示文件内容,只能向后翻页;
less:也是一页一页显示文件内容,但是可以通过键盘上的【pagedown】,【pageup】控制向后,向前翻页;
head:显示一个文件的前几行;
tail:显示一个文件的后几行; -
Linux 中默认没有 super 命令;
passwd 命令用来更改使用者的密码;
tar(tape archive )命令用于备份文件,是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件;
su(switch user)命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。
chgrp(change group)命令用于变更文件或目录的所属群组; -
cp拷贝命令的参数含义:
-r 递归处理,将指定目录下的文件与子目录一并处理
-v 或 --verbose 显示执行过程
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在 -
启动交换文件的指令是
swapon
-
UNIX系统中进程由三部分组成:进程控制块,正文段和数据段。这意味着一个程序的正文与数据可以是分开的,这种分开的目的是为了?
可共享正文、可共享数据、可重入
-
在Shell环境下,查看远程Linux系统运行了多少时间:
ssh user@被监控主机ip "uptime"
scp用于远程数据传输
ssh用于远程登录
uptime命令可以查看当前linux系统运行了多长时间 -
sort demo.txt|uniq
实现文件去重并排序
uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。
sort 命令用于将文本文件内容加以排序。
uniq 只能处理相邻的重复行,所以需要先排序才能去重。 -
局域网的网络地址192.168.1.0/24,局域网络连接其它网络的网关地址是192.168.1.1。主机192.168.1.20访问172.16.1.0/24网络时,其路由设置正确的是:
route add –net 172.16.1.0 gw 192.168.1.1 netmask 255.255.255.0 metric 1
目的主机 下一跳地址 子网掩码 -
在 Linux 系统的 vi 编辑器中的命令
: 表示切换到命令模式,以在最底一行输入命令;
q(quit)表示退出 vi;
w(write)表示保存文件;
! 表示强制,例如 q! 表示强制退出不保存,w! 表示强制保存。
dd 删除光标所在的那一整行
yy 复制光标所在的那一整行
p 将已复制的数据在光标的下一行粘贴
P 将已复制的数据在光标的上一行粘贴 -
Linux中包括两种链接:硬链接(Hard Link)和软连接(Soft Link)
( 1 )软连接可以跨文件系统,硬连接不可以
( 2 )硬连接不管有多少个,都指向的是同一个 I 节点,会把结点连接数增加,只要结点的连接数不是 0 ,文件就一直存在不管你删除的是源文件还是连接的文件。只要有一个存在文件就存在。 当你修改源文件或者连接文件任何一个的时候,其他的文件都会做同步的修改。软链接不直接使用 i 节点号作为文件指针 , 而是使用文件路径名作为指针。所以删除连接文件对源文件无影响,但是删除源文件,连接文件就会找不到要指向的文件。软链接有自己的 i 节点 , 并在磁盘上有一小片空间存放路径名。
( 3 )软连接可以对一个不存在的文件名进行连接 。
( 4 )软连接可以对目录进行连接。
硬链接 :就是对源文件所指的inode,建立另外一个指针
软链接:类似windows文件的快捷方式 -
top查看CPU占用
netstat显示网络连接、路由表、网络接口信息
free看内存
df是查看磁盘空间 -
/etc/fstab是用来存放文件系统的静态信息的文件。位于/etc/目录下,可以用命令less /etc/fstab 来查看,如果要修改的话,则用命令 vi /etc/fstab 来修改。
当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的目录。 -
which 查看可执行文件的位置
whatis 查询命令有什么功能
apropos 搜索指定关键字的命令
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。
1.命令格式:
whereis [-bmsu] [BMS 目录名 -f ] 文件名
2.命令功能:
whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。
3.命令参数:
-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B 指定搜索可执行文件的路径。
-M 指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。
参考资料:
字符串题:
- strlen 是函数,得到字符串中包括空格和标点符号在内的字符数。;
sizeof 是运算符,得到的数会更大,因为它会把字符串末尾不可见的空字符也计算在内(比如\0")。 - strlen 测量的是字符的实际长度,以'\0' 结束。而sizeof 测量的是字符的分配大小。