大数据入门(0)linux的基本命令

版权声明: https://blog.csdn.net/u011518709/article/details/84838472

最近研究大数据,将linux的基本命令整理如下:

1、设置图形界面 
	vim  /etc/inittab
2、清屏幕  clear
3、创建用户,设置密码
	useradd test
	passwd  test
4、切换用户
	su - test
5、查看当前目录,
	pwd,
	/home/test

6、查看主机名
	hostname
	
	设置主机名:

	方式一:hostname  weekend110 (此种方式设置的主机名称,在重启后又还原了,系统的配置信息都来自于文件)
	
	方式二:vim /ect/sysconfig/network 
		HOSTNAME=weekend110
主机名和ip的映射:

	vim  /etc/hosts

	windows下的:C:\Windows\System32\drivers\etc

7、vi
	vi filename
	i 编辑,esc 退出编辑模式,:wq 保存,:q 不保存

	>>>>vi模式的快捷方式:
		dd:删除光标所在行
		zz:保存
		x:删除光标附件的内容
		o:光标下一行插入内容
----------------------------------------------------------------------文件操作---------------------------------------------------------------------
8、文件操作 
	>>>>查看文件
		ls --list
		ls -l  或者  ll
		ls -a  显示隐藏文件,以 .开头的文件
	
	>>>>目录
		./当前目录    ../上级目录
		cd ../app
	
	>>>>常见的文件类型:
		文件
		目录
		连接(快捷方式)

	>>>>创建文件:
		touch  1.txt
		vi  2.txt
		
	>>>>对文件内容追加
		echo "aaaa" >> 1.txt
	
	

	>>>>-rw-rw-r--
		-	rw-	rw-	r--       >>>>数字表示权限为:664
	    	-   文件类型    
		rw- 文件权限
		
	>>>>文件权限
		可读 r
		可写 w
		可执行(脚本:shell脚本) x 
	>>>>文件归属
		拥有者 owner  o
		所属组 group  g
		其他人 other  o
	>>>>权限数字表示方式
		rw-       6
		二进制数字之和的方式
		R	W	X
		2^2	2^1     2^0

	>>>>设置文件对不用用户的权限  root用户
		chmod 600 1.txt
		 -R, --recursive  递归
		
		eg: chmod g-w  1.txt
		    chmod o-r  1.txt
		    
		    chmod 664 1.txt
	
	>>>>改变文件拥有者和所属组
		chowner 
			chowner admin  1.txt
		chgrp
			chgrp admin 1.txt
	>>>>针对目录,文件夹修改权限
		chown -R admin  /opt/sofware
	>>>>使用一条命令,修改文件的拥有者和所属组
		chown admin:admin 1.txt
	
	>>>>命令行
		man + 命令关键字   查看具体的命令操作
		tab 自动补全
	>>>>创建目录
		mkdir  test          
		mkdir -p app/test    创建多级目录
	>>>>文件拷贝,  移动/重命名
		cp  source  disk/filename
		mv  src  dest
		cp 1.txt  /home		
		cp 1.txt  2.txt  重命名
		cp -r  目录1 目录2 

	>>>>删除
		rm -rf src 绝对路径

9、查看文件内容
	cat: 查看
	more:翻页查看
	tail:末尾查看,-f 实时查看日志动态
		eg:tail -f  a.log
	head:开头文件,文件格式,内容模板样式
10、连接(快捷方式)
	软连接:soft link
		ln -s file/dir  linkname
		ln -s readme.txt  r.txt
	硬连接:hard link 		
		ln  readme.txt  r.txt  相当于copy 一个文件,改变源文件,连接文件也会被修改

	       删除的时候都不删除源文件,
	
	使用场景:
		hadoop的配置文件,hbase中也要用到core-site.xml,hdfs-site.xml ,故在hbase中直接引用,ln ,
	
11、文件搜索
	
	find ~/ -name  read(关键字)
	
	find ~/ -name read\*

--------------------------------------------------远程工具----------------------------------------------------------------------
12、四大远程连接工具

	*远程命令行:
		secureCRT
	*远程FTP:
		FileZilla         
		ftp:file transfer protocol
	*远程编译工具: 
		notepad++ ,v6.6.8有NppFTP 插件      (SFTP协议)
		ultraEdit  (SFTP协议)
	*远程界面工具:
		Xmanager4
---------------------------------------------------------系统命令----------------------------------------------------------
13、系统信息的命令
	uname
	uname -r
	#cpu信息
		cat /proc/cpuinfo
	#内存信息
		cat /proc/meminfo
	#日期信息	
		date
	#日历
		cal 2018
	#设置日期和时间 root
		date -s 2015-11-12
		date -s 14:12:23
	#磁盘使用情况
		df -l
		du -sh /home/admin
		fdisk -l
	#磁盘修复,自动修复
		fsck /dev/sda3
	#查看挂在磁盘信息
		mount
	#挂在磁盘
		mount /dev/sdb1 /data01
	#卸载磁盘
		umount /dev/sdb1

	#查看内存使用情况
		free
		free -m
	#各个进程内存的使用情况
		top
		M:查看详细信息

	#网络命令
		网卡信息位置:cd /etc/sysconfig/network-scripts/
		ping 0.0.0.0  ==本地的ip

-----------------------------------------------------软件的安装方式------------------------------------------------------
14、RPM 命令
	#查看软件是否安装
		rpm -qa|grep java1.6	
	#卸载软件
		rpm -e --nodeps  java1.6
	#安装软件
		rpm -ivh *.rpm
15、tar (源码,编译)
	解压
		tar -zxvf *.tar.gz
		tar -zxvf *.tar.gz -C dir
	压缩
		tar -zcvf *.tar.gz dir

16、zip软件
	解压
		unzip *.zip
	压缩
		zip *.zip file

17、yum
	需要配置源
	安装包依赖关系以及各个软件的安装顺序

---------------------------------------------------设置用户的sudo 权限----------------------------------------------
18、vi /etc/sudoers
	添加:
	admin ALL=(root) NOPASSWD:ALL

----------------------------------------------------防火墙-----------------------------------------------------------
19、sudo 
	#查看状态
	service iptables status
	#关闭
	service iptables stop
	#开启 
	service iptables start
	
	#永久关闭|开启
	chkconfig iptables off|on

	chkconfig --list httpd

------------------------------------selinux----------------------------------------------------	
	SELINUX 关闭
		vim /etc/sysconfig/selinux
		SELINUX =disabled
	需要重启


------------------------------------crontab定时调度-------------------------------------------------------
20、crontab

	touch 1-log.txt
	echo "111-log" >> 1-log.txt
	cat 1-log.txt
	date
	date >> 1-log.txt
	which date  --查找某个命令所在的目录
	
	#创建定时任务,追加时间到文件,1分钟执行一次
		crontab -e 
		*/1 * * * *  /bin/date >> /home/admin/1-log.txt
	
	#实时查看文件
		tail -f 1-log.txt

	#查看当前所有的定时任务
		crontab -l
	#删除所有的定时任务
		crontab -r
	#删除单个
		文件中注释掉就可以了
21、crontab的语法
	* * * * * command  (空格隔开)
	
	* * * * *
	第1个*:分,1-59, */10 每十分钟执行
	第2个*:时,0-23,
	第3个*:日,1-31,
	第4个*:月,1-12,
	第5个*:星期,0-6,

	eg:##每天21:30 执行   
		30 21 * * * cmd01
	   ##每个月1号,11号,21号的2:30 执行
		30 2 1,11,21 * * cmd01	
	   ##每周六或者周日,1:45执行
		45 1 * * 6,0 cmd01
	   ##每天20:00-23:00 ,每半个小时执行一次
		0,30 20-23 * * * cmd01
	   ##每一个小时执行一次
		* */1 * * * cmd01

-------------------------------------虚拟机重启出错----------------------------------------------------------
22、磁盘损坏
	fsck /dev/sda3


--------------------------------------shell命令-----------------------------------------------------------------------	
23、变量
	echo  回显
	shoami 显示当前用户

	(1)本地变量:shell脚本用
		x=123 	echo ${x}
		=左右不能有空格
	(2)环境变量:shell进程中都可以用,全局变量大写
		
	第一行:指定用哪个程序来编译或者执行脚本
		#!/bin/bash          #!/bin/sh
	注释行:使用(#)

	shell脚本编写:
		#!/bin/base
		echo "hello word!!!"
	
	#修改脚本的执行权限
		chmod u+x go.sh
	#执行脚本(3种方式)
		./go.sh
		. go.sh
		sh go.sh

	(3)位置参数
		echo "hello  $1"	
		执行的时候传递的    sh go.sh word  
		参数中有空格,需要用引号	sh go.sh "hadoop mapreduce"
		
		$0 	当前脚本的文件名
		$1-$9 	第一个到第九个位置参量
		${10}	第10个以后,用{}括起来
		$#	位置参量的个数
		$*	以单字符显示所有位置参量
		$@	未加双引号和$*相同
		$$	脚本运行的当前进程号
		$!	最后一个后台运行的进程的进程号
		$?	显示前面最后一个命令的退出状态,0表示没有错误,其他任何值都有错误


		if[$? !=0 ];then
			exit 1
		fi
24、数组	
	a={a b c}
		第一个:echo ${a[0]}
		全部:echo ${a[*]}
		个数:echo ${#a[*]}
		赋值:a[0]=a1
25、date
	date +%Y-%m-%d
	date +%Y-%m-%d %H:%M:%S
	
	###shell脚本中取时间:
		#!/bin/bash
		date1=$(date +%Y-%m-%d)
		echo ${date1}
		#两天前
		date2=$(date --date='2 days ago' +%Y-%m-%d)
		echo ${date2}
		#1天后
		date3=$(date --date='+1 days ' +%Y-%m-%d)
		echo ${date3}
		#1天前
		date4=$(date --date='-1 days ' +%Y-%m-%d)
		echo ${date4}

26、日历
	cal
	cal 2018
	cal 09 2018
27、判断语句test ,具体查看 man test
	#是否存在
		test -e filename
	#是否存在且为档案file
		test -f filename
	#是否存在且为目录directory
		test -d filename

	#是否存在且可读
		test -r filename
	#是否存在且可写
		test -w filename
	#是否存在且可执行
		test -x filename

	-eq -ne -gt -lt -ge -le
	test -z string	--是否空
	test -n string	--是否不为空
	test str1=str2
	test str1!=str2
28、循环语句
	for i in 1 2 3 4 5 
	do 
	   echo ${i}
	done

	while read line
	echo ${line}


猜你喜欢

转载自blog.csdn.net/u011518709/article/details/84838472