【Hadoop离线基础总结】linux基础增强

linux基础增强


查找命令

grep命令(print lines matching a pattern)

  • 概述:
    grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来

  • 格式:

  grep [option] pattern [file]
  • 使用实例:
  ps -ef | grep sshd			->查找指定ssh服务进程
  		ps - report a snapshot of the current processes.
			 显示当前进程
		   -ef To see every process on the system using standard syntax
		       使用标准语法查看系统上的每个进程
		       
  ps -ef | grep sshd | grep -v grep			->查找指定服务进程,排除grep本身
  	    grep -v --invert-match
              Invert the sense of matching, to select non-matching lines.  (-v is specified by POSIX.)
              反选

  ps -ef | grep sshd -c			->查找指定进程个数
  
  cat a.txt | grep -f b.txt			->从文件中读取关键字进行搜索

 
 
find命令(search for files in a directory hierarchy)

  • 概述:
    find命令在目录结构中搜索文件,并对搜索结果执行指定的操作
    find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全部显示在屏幕上

  • 格式:

  find 路径 查找的类型 查找的名称
  • 使用实例:
 find / -name hello.txt				->从跟目录下查找一个叫hello.txt的文件

 find . -name "*.log" -ls			->在当前目录查找以.log结尾的文件,并显示详细信息
 
 find /root/ -perm 777				->查找/root/目录下权限为777的文件
 
 find . -type f -name "*.log"		->查找当前目录下以.log结尾的普通文件
 
 find . -type d | sort				->查找当前所有目录并排序
 
 find . -size +100M					->查找当前目录大于100M的文件

 
 
locate命令(find files by name)

  • 概述:
    locate让使用者可以很快速地搜寻档案系统内是否有指定的档案
    其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库(/var/lib/locatedb)
    Linux系统自动创建这个数据库,默认每天自动更新一次,所以使用locate命令查不到最新变动过的文件,为了避免这种情况,可以使用locate之前,先使用updatedb命令,手动更新数据库

  • 格式:

  locate [OPTION]... PATTERN...
  • 使用实例:
  locate /etc/sh				->搜索etc目录下所有以sh开头的文件
  
  locate pwd					->查找和pwd相关的所有文件

 
 
whereis命令(locate the binary, source, and manual page files for a command)

  • 概述:
    whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置,这些文件的属性应属于原始代码,二进制文件或是帮助文件
    whereis和locate一样,会从数据库中查找数据,而不是像find命令那样,通过遍历硬盘来查找

  • 格式:

  whereis [options] [-BMS directory... -f] name...
  • 使用实例:
  whereis ls				->将和ls文件相关的文件都查找出来
  
  whereis -m ls				->查找ls命令说明文档路径
  		  -m     Search only for manuals.
  		  
  whereis -s ls				->查找ls源文件
  		  -s     Search only for sources.

 
 
which命令(shows the full path of (shell) commands)

  • 概述:
    which命令的作用是在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果
    使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

  • 格式:

  which [options] [--] programname [...]
  • 使用实例:
  which pwd				->查找pwd命令所在路径
  
  which java			->查找path中java的路径

网络管理

主机名配置

  • 查看主机名
  hostname
  • 修改主机名(重启后无效)
  hostname 修改后的主机名
  • 修改主机名(重启后永久修改)
  CentOS 7之前的版本:
	  vim /etc/sysconfig/network
	  输入 HOSTNAME=node01.hadoop.com

  CentOS 7:
	  vim /etc/hostname
	  输入 node01.hadoop.com

 
 
ip地址和mac地址配置

  • 修改配置文件
  修改ip地址
  vim /etc/sysconfig/network-scripts/ifcfg-eth0
  输入
  TYPE=Ethernet
  BOOTPROTO=static
  DEFROUTE=yes
  IPV4_FAILURE_FATAL=no
  IPV6INIT=yes
  IPV6_AUTOCONF=yes
  IPV6_DEFROUTE=yes
  IPV6_FAILURE_FATAL=no
  NAME=eth0
  UUID=b93a2482-7ac9-4883-a956-2e03849d164a
  DEVICE=eth0
  ONBOOT=yes
  PEERDNS=yes
  PEERROUTES=yes
  IPV6_PEERDNS=yes
  IPV6_PEEROUTES=yes
  IPV6_PRIVACY=no
  HWADDR=00:50:56:30:56:17
  GATEWAY=192.168.0.1
  IPADDR=192.168.0.10
  NETMASK=255.255.255.0
  DNS1=114.114.114.114
  DNS2=8.8.8.8
  修改mac地址
  vim /etc/udev/rules.d/70-persistent-net.rules
  UBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:50:56:30:56:17",ATTR{type}=="1" ,KERNEL=="eth*",NAME="eth0"

 
 
域名的映射

  • 修改hosts文件
  vim /etc/hosts
  
  输入
  192.168.0.10 node01.hadoop.com node01

 
 
网络端口的监听

  • netstat命令(Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships)
  只需要记住
  netstat -nltp				->查看服务器上面所有正在运行的服务及其对应的端口号
发布了60 篇原创文章 · 获赞 0 · 访问量 1365

猜你喜欢

转载自blog.csdn.net/CODEROOKIE_RUN/article/details/104245008