linux 常见名词及命令(三)


tar  用于对文件打包压缩或解压。

示例:

  打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名

  解压并展开压缩包:tar -zxvf 压缩包名.tar.gz

  -c  创建压缩文件

  -x  解开压缩文件

  -t  查看压缩包内有哪些文件

  -z  用gzip压缩压缩或解压

  -j  用bzip2压缩或解压

  -v  显示压缩或解压的过程

  -f  目标文件名

  -p  保留原始的权限与属性

  -P  使用绝对路径来压缩

  -C  指定解压到的目录


 grep  用于对文本进行搜索。

  -b  将可执行文件(binary)当做文本文件(text)来搜索

  -c  仅显示找到的次数

  -i  忽略大小写

  -n  显示行号

  -v  反向选择,仅列出没有关键词的行

示例:

找出系统中不允许登录的用户:grep /sbin/nologin /etc/passwd。

找出文件/user/123.xml中所包含的entry的行,并输出到/root/lines中:grep entry /usr/123.xml >> /root/lines。


 

find  用于查找文件

  -name  匹配名称

  -perm  匹配权限

  -user  匹配所有者

  -group  匹配所有组

  -mtime -n +n  匹配修改内容的时间(-n指n天以内,+n指n天以前)

  -newer f1 !f2  匹配比文件f1新却比f2旧的文件

  --type b/d/c/p/l/f  匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)

  --size  匹配文件的大小(+50k查找超过50k的文件,而-50k则表示查找小于50k的文件)

  -prune  忽略某个目录

  --exec {}\;  后面可接对搜索到的结果进一步处理的命令。

示例:

①搜索/etc/中所有的host开头的文件:find /etc -name "host*" -print。

②找出用户test的所有文件并复制到/root/findresults目录:find / -user test -exec cp -arf {} /root/findresults/ \;。


 

管道命令符

  "|",作用是将前一个命令的标准输出当作后一个命令的标准输入,格式:命令A|命令B。

示例:

  统计所有不允许登录的用户个数:grep /sbin/nologin /etc/passwd | wc -l。

  以翻页形式查看/etc目录中的文件:ls -l /etc/ | more。

  向test用户发送一封邮件:echo "Content" | mail -s "Subject" test。

  使用非交互式设置用户密码,将test用户密码设置为123321:echo "123321" | passwd -stdin test。


 

输入输出重定向

  标准输入(STDIN,文件描述符为0),默认从键盘输入,为0时表示是从其他文件或命令的输出。

  标准输出(STDOUT,文件描述符为1),默认输出到屏幕,为1时表示是文件。

  错误输出(STDERR,文件描述符为2):默认输出到屏幕,为2时表示是文件。

输出重定向:

  命令 > 文件  将标准输出重定向到一个文件中(清空原有文件的数据)

  命令 2>文件  将错误输出重定向到一个文件中(清空原有文件的数据)

  命令 >> 文件  将标准输出重定向到一个文件中(追加到原有文件的数据后面)

  命令 2>> 文件  将错误标准输出重定向到一个文件中(追加到原有文件的数据后面)

  命令 >> 文件 2>$1  将标准输出与错误输出共同写入到一个文件中(追加到原有文件的数据后面)

输入重定向:

  命令 < 文件  将文件作为命令的标准输入

  命令 << 分界符  从标准输入中读入,直到遇到分界符才停止

  命令 < 文件1 > 文件2  将文件1作为命令的标准输入并将标准输出到文件2。

示例:

①将man命令的帮助文档写入到/root/man.txt中:man bash > /root/man.txt

②在123.txt文件中追加一行字:echo 'hello world' >> 123.txt

③把readme.txt文件作为输入重定向给wc -l 命令来计算行数:wc -l < readme.txt。

相当于 cat readme.txt | wc -l。


 命令行通配符

  *  匹配零个或多个字符

  ?  匹配任意单个字符

  [0-9]  匹配范围内的数字

  [abc]  匹配任意一个字符

示例:

查看以sda开头的所有设备文件:ls /dev/sda*

查看sda后面有一个字符的设备文件:ls /dev/sda?

查看sda后面包含0-9数字的设备文件:ls /dev/sda[0-9]

查看sda后面是1或者3或者5的设备文件:ls /dev/sda[135]

特殊字符扩展:

  \(反斜杠)  转义后面单个字符

  ''(单引号)  转义所有的字符

  ""(双引号)  变量依然生效

  ``(反引号)  执行命令语句

示例:

输出"价格是$5",因为美元符号与代表变量取值的$符号冲突了,需要转义。

[root@linux ~]# PRICE=5
[root@linux ~]# echo "Price is \$$PRICE"
Price is $5

使用单引号,变量将不再取值。

echo 'Price is \$$PRICE'

结果:Price is \$$PRICE。

反引号的使用:echo `uname -a`。查看本机内核版本。


 alias  用于设置命令的别名,格式:alias 别名=命令

unalias  用于取消命令的别名,格式:unalias 别名

echo $PATH  查看$PATH变量的方法。

type 命令名字  查看命令时内部命令还是外部命令

PATH=$PATH:/root/bin  为变量$PATH增加新的值


 

环境变量:可以使用env命令查看环境变量。

局部变量:某个用户设置的变量正常为局部变量,只有自己可以使用。

全局变量:export命令用于将局部变量提升为全局变量。格式:export 变量名[=变量值]。


vim编辑器三种模式:命令模式、末行模式、编辑模式。

   命令模式:控制光标移动,可对文本进行删除、复制、粘贴等工作。

   编辑模式:正常的文本录入。

  末行模式:保存、退出、设置编辑环境。

  dd  删除(剪切)光标所在的整行

  5dd  删除(剪切)光标出开始的5行

  yy  复制光标所在的整行

  5yy  复制从光标出开始的5行

  p  将之前删除(dd)或复制(yy)过的数据粘贴到光标后

  /字符串  在文本中从上至下搜索该字符串

  ?字符串  在文本中从下至上搜索该字符串

  n  显示搜索命令定位到的下一个字符串

  N  显示搜索命令定位到的上一个字符串

  u  撤销上一步操作

末行模式的常用命令:

  :set nu  显示行号

  :setnonu  不显示行号

  :命令  执行该命令

  :整数  跳转到该行

o、i、a都可以进入输入模式。


 配置主机名称

  红帽RHEL7系统的主机名称保存在/etc/hostname文件中,修改主机名为"studyRHEL7"。

  (1)vim /etc/hostname

  (2)进入编辑模式,将旧的名字修改为新名字。

   (3)保存退出,使用命令hostname查看是否修改成功。

   注意普通用户需要用sudo执行。


 

配置网卡信息

  RHEL6系统的网卡配置文件的前缀为"eth",第一块为"eth0",第二块为"eth1",以此类推。

  RHEL7系统的网卡配置文件的前缀为"ifcfg-eno",例如"ifcfg-eno123"。

  网卡配置文件存放在/etc/sysconfig/network-scripts目录中。

关键词术语:

  网卡类型:TYPE=Ethernet

  地址分配模式:BOOTPROTO=static  或者dhcp

  网卡名字:NAME=eno123

  是否启动:ONBOOT=yes

  IP地址:IPADDR=192.168.1.10

  子网掩码:NETMASK=255.255.255.0

  网关地址:GATEWAY=192.168.1.1

  DNS地址:DNS1=192.168.1.1

       DNS2=192.168.1.2

重新启动网卡命令:systemctl restart network。

使用ping命令证明网卡配置正确,并是否生效了。

 


 

  

 

 

  

posted @ 2018-07-05 10:45  学知无涯  阅读(494)  评论(0编辑  收藏  举报