linux基础命令
博客专区 > A__17 的博客 > 博客详情
linux基础命令
A__17 发表于5个月前
linux基础命令
  • 发表于 5个月前
  • 阅读 3
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

linux基础命令:

命令格式:命令 -选项 参数

1)关机命令:
	shutdown
		# -h 关机
		# -r 重启
		# -c 取消前一个关机命令
		# -now 立即关机
	halt
	poweroff
	init 0

2)重启命令:
	reboot
	init 6

3)文件处理命令:
	
	pwd
		# 功能:显示当前工作目录(print working directory)
	mkdir 目录
		# 功能:(make directoriy)创建目录
		# -p 父目录不存在的情况下先生成父目录
	touch
		# 功能:创建空文件
	rm fileName
		# 功能:删除文件
		# -r(recursive) 同时删除该目录下的所有文件
		# -f(force)		强制删除文件或目录
	rmdir
		# 功能:删除空目录
	cp 原文件或目录 目标文件
		# 功能:复制文件或目录
		# -r 复制目录;
		# -p 保留文件属性;
	ln 原文件 目标文件
		# 功能:建立链接文件
		# -s(symbolic) 对源文件建立符号连接,而非硬连接
	mv 原文件 目标目录
		# 功能:移动文件、文件改名
	cat fileName
		# 功能:(catenate)显示文件的内容
		# -n 显示行号
	cat file1 >> file2
		# 把file1的内容输出追加到file2的末尾
	tac fileName
		# 功能:从最后一行开始显示文件的内容
	more fileName
		# 功能:分页显示文件的内容
	less fileName
		# 功能:分页显示文件的内容(可向上翻页)
	head fileName
		# 功能:查看文本中开头的几行
		# -n 指定行数
	tail fileName
		# 功能:查看文件的最后的几行
		# -n 指定行数
		# -f 动态显示文件末尾内容(滚动式)
	eg:
		tail -f	fileName
		# 等同于tail --follow=descriptor fileName
		# 根据文件描述符进行追踪(动态显示文件末尾内容),当文件改名或被删除,追踪停止。

		tail -F fileName
		# 等同于tail --follow=name --retry fileName
		# 根据文件名进行追踪(动态显示文件末尾内容),并保持重试,当文件改名或被删除后,如果再次创建相同名称的文件,会继续追踪。			
		
	wc fileName
		#功能:(word count)统计文本文件的行数、字数、字符数
		# -l 统计行数
		# -c 统计字节数
		# -m 统计字符数,不能与-c同时使用
		# -w 统计字数,一个字被定义为由空白、跳格或换行字符分隔的字符串。
		
	rz
		# 运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器
		# 说明:rz、sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具
		# 注意:rz、sz需要终端支持(XShell、SecureCRT),如果是在虚拟机中安装的linux系统上直接使用rz、sz则会出现一行乱码,并且无法输入指令,超时后即可恢复到正常情况。
		# 安装命令:yum install lrzsz

	sz fileName
		# 将指定的文件保存到本地机器
	
	
4)文件搜索命令

	find [搜索范围] [匹配条件]
		举例:find /home/jxn -name man  从指定目录开始搜索名字为man的文件或目录
	grep [指定字串] fileName
		# 功能:在指定的文件中查找包含特定字符串的文本行
		# -i 不区分大小写
		# -v 查询不包含特定字符串的文本行(反向查找)
		# --color=auto 搜索出的关键字用颜色显示
	whereis command
		# 功能:搜索命令所在目录及帮助文档路径
	which command
		# 功能:搜索命令所在目录及别名信息
	locate fileName
		# 功能:在文件资料库中查找文件	
	
5)系统管理命令

	stat
		# 功能:显示文件的相关信息,比ls命令显示的更详细
	who
		# 功能:显示在线登录用户
	whoami
		# 功能:显示用户自己的身份
	hostname
		# 功能:显示主机名称
	uname
		# 功能:显示系统信息
	top
		# 功能:系统监视器(相当于windows下的任务管理器),查看每个进程的情况
		# 查看每个CPU的性能数据:输入top并回车后,再输入数字1	
		
	ps
		# 功能:显示瞬间的进程状态
		# -a 显示所有用户的所有进程(包括其它用户)
		# -u 显示启动这个进程的用户和它启动的时间
		# -x 显示系统中属于自己的进程
		
		ps -ef
		# 显示所有的进程,显示的项目有:UID,PID,PPID,C,STIME,TTY,TIME,CMD
		ps aux
		# 显示所有的进程,显示的项目有:USER,PID,%CPU,%MEM,VSZ,RSS,TTY,STAT,START,TIME,COMMAND
		
	kill
		# 功能:杀死一个进程
	free
		# 功能:显示当前内存和交换空间的使用情况
	
6)文件系统管理命令

	mount [-t 文件系统] 设备文件名 挂载点
		# 功能:挂载设备
		# -t (type)文件系统的类型
		# 文件系统:
			# ext2、ext3、ext4:linux目前常用的文件系统
			# msdos、MS-DOS的fat(fat16)
			# vfat、U盘及windows98常用的fat32 
			# nfs:网络文件系统
			# iso9660:CD-ROM光盘标准文件系统

	df
		# 功能:查看文件系统磁盘空间的使用情况
		# -a 显示所有的文件系统信息
		# -h(human-readable) 使用KB、MB、GB等显示容量
		# -k、-m 以KB、MB显示容量
		# -T显示文件系统类型
		eg:
			df -h
			# 查看文件系统磁盘空间的使用情况	

	du 目录或文件名
		# 功能:显示指定的文件或目录已使用的磁盘空间的总量
		# -h:以人类可读的方式显示,即自动选取合适单位(G、M、K)来显示大小
		# -a 显示每个子文件的磁盘占用量
		# -s(summarize) 统计总占用量,而不列出子目录和子文件

	fdisk -l
		# 功能:查看硬盘列表
	fdisk /dev/sdb
		# 功能:使用fdisk命令分区
		
	#fdisk交互指令说明
		# -a 设置可引导标记
		# -b 编辑bsd磁盘标签
		# -c 设置DOS操作系统兼容标记
		# -d 删除一个分区
		# -l 显示已知的文件系统类型。82为Linux swap分区,83为Linux分区
		# -m 显示帮助菜单
		# -n 新建分区
		# -o 建立空白DOS分区表
		# -p 显示分区列表
		# -q 不保存退出
		# -s 新建空白SUN磁盘标签
		# -t	改变一个分区的系统ID
		# -u 改变显示记录单位
		# -v 验证分区表
		# -w 保存退出
		# -x 附加功能(仅专家)
		
	mkfs -t ext4 /dev/sdb1
		# 功能:格式化分区
	fsch 分区设备文件名
		# 功能:修复文件系统
	
	
7)网络命令

	ping IP地址
		# 功能:测试网络连通性
		# -c 指定发送次数
	ifconfig 网卡名称 IP地址
		# 功能:(interface configure)查看和设置网络接口(网卡)信息
	netstat
		# 功能:显示网络状态信息
		# -a 显示所有连接和监听端口
		# -t(tcp) 仅显示tcp相关选项
		# -u(udp) 仅显示udp相关选项
		# -l 监听
		# -r 路由
		# -n 以数字的形式显示;显示IP地址和端口号
		# -p 显示建立相关链接的程序名
	setup
		# 配置网络
	mail userName
		# 查看发送电子邮件
	write userName
		# 给用户发信息,以Ctrl+D保存结束
	wall message
		# 发广播信息,wall(即write all)
	last
		# 列出目前与过去登入系统的用户信息
	
8)用户和组账户管理
	概念:linux操作系统是一个多用户操作系统,它允许多用户同时登录到系统上并使用资源。
	说明:系统会根据账户来区分每个用户的文件,进程,任务和工作环境,使得每个用户工作都不受干扰。
	
	1)用户命令:
		useradd 用户名
			# 功能:添加用户
			# -d 指定用户的家目录
			# -u 指定UID
			# -g 指定所属的组GID
			# -G 指定多个组,用逗号分开
			# -p 密码
			# -c (comment)用户描述
			# -e (expire date)失效时间
		passwd 用户名
			# 功能:修改密码
		usermod 新用户名 旧用户名
			# 功能:修改用户
			# -l (login)修改登录名
			# -L 锁定用户账密码
			# -U 解锁用户账号
		userdel 用户名
			# 功能:删除用户
			# -r (recursive)删除用户时连同目录一并删除
			
	2)用户组命令:
		groups
			# 功能:显示用户所属的组
		groupadd 组名
			# 功能:添加组
			# -g 指定GID
		groupmod 
			# 功能:修改组
			# -n (name)修改组名
		groupdel
			# 功能:删除组
	
	3)用户相关配置文件:
		/etc/passwd
			说明:保存用户信息的文件
			查看:man 5 passwd
			格式:account:password:UID:GID:GECOS:directory:shell
				用户名:	登陆系统的用户名
				密码:		密码位
				UID:		用户标识号
				GID:		默认组标识号
				描述信息:	用户的描述信息
				宿主目录:	用户登陆系统的默认目录,默认是在/home/下
				命令解析器:用户使用的Shell,默认是bash
		/etc/shadow
			说明:保存密码的文件
			查看:man 5 shadow
			格式:
				用户名:			登陆系统的用户名
				密码:				加密密码
				最后一次修改时间:	用户最后一次修改密码距现在的天数,从1970-1-1起
				最小时间间隔:		两次修改密码之间的最小天数
				最大时间间隔:		密码有效天数
				警告时间:			从系统警告到密码失效的天数
				账号闲置时间:		账号闲置时间
				失效时间:			密码失效的天使
				标志:				标志	
		/etc/group
			说明:保存用户组的文件
			格式:
				组名:			用户所在的组
				组密码:		密码位,一般不使用
				GID:			组标识号
				组内用户列表:	属于该组的用户列表
		/etc/gshadow
			说明:保存用户组密码的文件
		/etc/default/useradd
			说明:用户配置文件
		
	4)用户的分类:
		超级用户:	root(UID=0)
		普通用户:	UID:500~60000
		伪用户:	UID:1~499
			说明:伪用户不能登录系统,而且没有宿主目录。


9)文件的权限管理:	

	1)三种基本权限:
		r	(rean)读权限
		w	(write)写权限
		x	(execute)执行权限
		-	表示没有任何权限
		s	特殊权限
		
	2)文件的属性:
		第一部分(权限属性):
			第1位:		文件的类型(d表示目录、-表示普通文件、l表示链接文件)
			第2-4位:	所属用户权限,	用u表示(user)
			第5-7位:	所属组权限,	用g表示(group)
			第8-10位:	其他用户权限,	用o表示(other)
			第2-10位:	表示所有用户的权限,用a表示(all)
		第二部分:文件的链接数
		第三部分:文件的拥有者
		第四部分:文件所属的组
		第五部分:文件的大小
		第六部分:文件最后被修改的时间
		第七部分:文件的名称
		
	3)命令:
		chown 用户名 文件名
			# 功能:(change owner)修改文件的拥有者
			# -R (recursive)下面的文件和子目录做相同的权限操作
		chgrp 组名 文件名
			# 功能:(change group)修改文件的所属的组
		chmod
			# 功能:(change mode)修改文件的权限
			# 说明:权限有两种表示方法:
				1)用符号表示权限:
					chmod 权限的范围(u、g、o、a) 操作符(+、-、=) 文件名
						# 权限的范围:u表示所属用户的权限,g表示组权限,o表示其它用户的权限、a表示所有用户的权限
						# 操作符:+表示添加,-表示除去,=表示重置
						# 举例:chmod u+x jdk-6u45-linux-x64.bin
				2)用数字表示权限:
					chmod 代表权限的三位数字 文件名
						# r用4来表示,w用2来表示,x用1来表示,-用0来表示;即:rwx=7,rw-=6,r-x=5,r--=4,-w-=2,--x=1,---=0
						# 举例:chmod 760 test.txt	
						
				例子:
				chmod u+s nginx
				# 为了方便普通用户执行一些特权命令,SUID/SGID程序允许普通用户以root身份暂时执行该程序,并在执行结束后再恢复身份。
				# chmod u+s 就是给某个程序的所有者以suid权限,可以像root用户一样操作

					
10)RPM软件包管理
	概念:
		1)RPM即RedHat Package Manager(RedHat软件包管理工具)的缩写。
		2)YUM(Yellow dog Updater, Modified),是一个shell前段软件包管理器。
			说明:YUM基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。
		
	rpm命令:
		rpm 包名
			# -i 安装。注意:安装的时候需要使用包的全限定名。
			# -e (erase)卸载
			# -v (verbose)显示详细信息
			# -h (hash)显示进度条
			# -q (query) 查询该包是否安装
			# -qa (query all)查询所有已安装的软件包
			# -R (requires) 查询软件包的依赖性
			# -p (package) 查询未安装包信息
			# --nodeps 不检测依赖性
	
	yum命令:
		yum install gcc-c++
		yum update gcc-c++
		yum remove gcc-c++
		
		常用工具:
		yum -y install wget
		
		更新163 yum源
		cd /etc/yum.repos.d/
		mv CentOS-Base.repo CentOS-Base.repo.backup
		wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
		yum clean all
		yum makecache
		yum update


11)Linux下的压缩命令:
	
	tar 压缩后的文件名 要压缩的目标文件
		# -c (create)建立一个新打包文件
		# -C 指定文件解压后存储的目录
		# -f file 指出需要打包的文件
		# -z 打包同时用gzip压缩(与-x并存时,表示解压xxx.tar.gz)
		# -j 打包同时用bzip2压缩(与-x并存时,表示解压xxx.tar.bzip2)
		# -x extract(提取) 解包*.tar文件
		# -v verbose 以详细模式显示命令执行过程
		# -t 查看压缩文件中的内容
		# 说明:
			1)在参数列表中:c、x、t 仅能存在一个,不可同时存在!
			2)一般以.tar后缀名来标示打包后的文件,以.tar.gz或.tgz来标示gzip压缩过的tar文件,以.tar.bz2来标示bzip2压缩过的tar文件。
		# 举例:将/home/jxn/familyA目录下的所有文件全部打包为/home/jxn/familyA.tar
			1)仅打包,不压缩:tar -cf /home/jxn/familyA.tar /home/jxn/familyA
			2)打包后,以gzip压缩:tar -zcf /home/jxn/familyA.tar.gz /home/jxn/familyA
			3)打包后,以bzip2压缩:tar -jcf /home/jxn/familyA.tar.bz2 /home/jxn/familyA
			4)查看压缩文件中的内容:
				tar -tf familyA.tar
				tar -tf familyA.tar.gz  或 tar -ztf familyA.tar.gz
				tar -tf familyA.tar.bz2 或 tar -jtf familyA.tar.gz
			5)解压:			
				tar -xf familyA.tar
				tar -xf familyA.tar.gz  或 tar -zxvf familyA.tar.gz
				tar -xf familyA.tar.bz2 或 tar -jxvf familyA.tar.bz2
				
				常用:tar -zxvf jdk-7u55-linux-i586.tar.gz -C /usr/java/

	zip 压缩后的文件名 要压缩的目标文件
	
	unzip 要解压的压缩文件
		# -d 文件解压后存储的目录
		# eg:unzip -d /data/tempFile test.war 将test.war解压到/data/tempFile目录下
		# 使用jdk提供的jar命令也可以解压war包:jar -xvf test.war

	gzip 目标文件名
		# gzip即:GNU zip
		# -c 压缩后将结果输出到标准输出,并保留到原始文件;由于选项c会将压缩结果输出到标准输出,因此需要使用重定向方式保存压缩结果
		# -d (decompress)解压。或者:gunzip 要解压的.gz文件名
		# -l 显示压缩文件的详细信息:压缩文件的大小、未压缩文件的大小、压缩比等。
		# -r 递归地压缩目录中的所有文件:只压缩目录下的所有文件以及其子目录下的所有文件,而目录和子目录并没有压缩。
		# -0→9:表示压缩率,1表示最小压缩率,压缩速度最快;默认值是6
		# 举例:
			1)把/home/jxn目录下的familyA目录下所有文件压缩成.gz文件
				tar -cvf /home/jxn/familyA.tar /home/jxn/familyA
				gzip familyA.tar 进行压缩
				# 说明:gzip不能直接对目录进行压缩,因此必须先打包
			2)gzip -c9 test.tar > test.tar.gz
	
	bzip2 目标文件名
		# -k 压缩、解压缩完成之后,保留原始文件
		# -d (decompress)解压。或者:bunzip2 要解压的.tar.bz2文件名
		# 举例:把/home/jxn目录下的familyA目录下所有文件压缩成.bz2文件
			tar -cvf /home/jxn/familyA.tar /home/jxn/familyA
			bzip2 familyA.tar
			# 说明:bzip2不能直接对目录进行压缩,因此必须先打包
共有 人打赏支持
粉丝 0
博文 35
码字总数 37964
×
A__17
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: