Linux的常用的shell命令

版权声明:版权声明中 https://blog.csdn.net/lds_include/article/details/88790003

Linux的常用的shell命令

1.目录命令:

ll /:查看根文件下的所有文件目录

2.帮助命令:

man ls与ls --help与info ls:(man ls:分屏显示;--help:全部加载,不完整;info ls:无用信息比较多)

3.基本操作和命令:

Ctrl+R和方向键中的上键:查找历时输入过的命令	
Ctrl+C  Ctrl+Z: 终止或者退出当前操作
字母键i:进入文本编辑模式(可以修改Linux操作系统的init相关设置)
编辑完成后按Esc键退出,然后如果确定保存修改并返回命令行界面输入命令-----:wq
如果不保存用命令并退出编辑界面----:q    
保存并强制退出----:q!	
Shift+G 到文件末位  o:换行

4.Table键的使用

	自动补全命令目录
	在某个目录下只有一个目录饿时候可以不用输入首字母直接敲table计划科自动补全目录
	双击table时一般为显示所有名或者列出某个目录下的所有目录和文件

5.系统级别命令

	更改主机名命令:vi /etc/sysconfig/network
	查看当前Linux系统信息
		uname -a 显示系统及版本的所有信息
		uname -r 显示内核版本
		uname -m 显示计算机是多少位系统
		cat /proc/version Linux查看当前操作系统版本信息
		cat /etc/issue或cat /etc/redhat-release  Linux查看版本当前操作系统发行版本
	查看系统小版本
		cat /etc/redhat-release
	查看当前主机名
		hostname
	查看第一个网卡
		ifconfig eth0
	查看和设置系统时间
		date
	显示当前在运行的进程包括对CPU内存使用量
		top -s
	管道:|
		cmd1|cmd2将cmd1输出结果交给cmd2命令来执行
		比如:查看进程:ps-fe|grep redis(这里表示查看redis的进程)
	grep:过滤
		#grep  //输出包含指定字符串的行
			-i  //忽略大小写
			-r  //递归
			-v  //取反
			--color  //突出显示查找字符串
	重新启动Linux操作系统
		reboot
		init 6
	关闭Linux操作系统
		shutdown -h now
		init 0
	图形和命令行转换
		vi /etc/inittab
		init 3 命令行模式
		init 5 图形化
	查看虚拟机运行的运行级别(一般状态以5启动)
			cat /etc/inittab  
			1:单用户模式
			2和3一样的功能:多用户模式
			4:功能还没有定义(未使用)
			6:重启
	显示守护进程目录树
		pstree 或者 pstree -p(显示pid)
	查看正在运行的进程
		ps -aux
	显示所有的Java进程
		jps(如果没有安装JDK,就会显示没有该命令)
	结束正在运行的指定进程
		kill -9 pid(指的是进程的id)
	不进去系统更改root密码
		1.在grub选项菜单按e进入编辑模式
		2.编辑kernel那行 输入"1"(空格+1),然后按enter键
		3.按b重启
		4.进入后执行下列命令
			root@#passwd root(配置root的密码)
			Enter new unix password:输入新密码
			root@#init 6

6.磁盘操作

	显示系统的磁盘空间用量
		df -h   //显示磁盘分区信息
		mkfs.ext3  /dev/sdb1  fs format //格式化硬盘分区
		fdisk -l   //查看磁盘分区
		du -h -s  //查看目录或者磁盘分区的使用空间   
			比如:du -h /var/log/(表示查看var/log目录下的各文件所占空间大小)  
				 du -h -s /var/log/(表示查看整个log目录的使用空间)
	挂载
		mount -t vfat/dev/sdb1/media/umnt   //挂载
		mount -o remount rw/   //重新挂载,或者将根目录以读写方式重新加载
		umount /media/umnt    //卸载
	文件系统修复
		fsck -y /dev/sda1  (修复的可以是分区也可以是目录,最好在单用户模式下使用)
		//linux文件格式
		ext4 ext3 ext2 vfat(fat32)
		//windows文件格式
		ntfs fat32

7.用户和组的操作

	超级账户 root uid=0
	普通账户	uid>=500
	系统账户	uid=1~499
		/etc/passwd  //保存账户的信息
		/etc/shadow  //保存账户密码信息
		/root	//root用户家目录
		/home/xxx   //普通用户xxx的家目录
	添加用户和删除用户 useradd
		#useradd   //创建用户  比如:useradd admin  另外一种方式:useradd -G manager tom(附加到组manager)
		-u  指定uid
		-d  指定宿主目录
		-s  指定使用shell
		-e  指定用户过期时间
		-g  指定基本组
		-G  指定附加组
		#useradd openlab
		#gpasswd -a openlab gropenlab  //将用户加入到组中  比如:#gpasswd -a tom admin(将tom用户加入admin用户的组中)
		#gpasswd -d openlab gropenlab  //将用户从组中删除
		#echo"123456"|passwd--stdin feige  //不通过交互信息,直接修改密码
		#userdel -r		//连主目录一起删除
		#userdel //删除用户  不删除用户文件
		#id openlab  //显示用户信息
		vipw  //查看用户
	创建用户组
		groupadd manager
		vigr 查看组
		groups manager 查看用户在哪些组中
	更改密码:	
		方式1:passwd tom  方式二:etho "root" |passwd --stdin root//不通过交互信息,直接修改密码
	锁定账户tom禁止其登录
		usermod -L tom
	切换当前账户为caimin
		su -caimin
	显示当前登录用户账户
		whoami
	查看系统文件判断添加用户组和添加用户操作是否正确
		cat /etc/passwd   或者使用 vipw
		cat /etc/group	  或者使用 vigr

8.文件操作

	cd 进入操作
	pwd  查看当前目录
	mkdir  新建文件夹
	mkdir -p //递归创建文件夹  比如:mkdir -p ./test1/caimin/test2
		(./是指用户所在的当前目录,/是指根目录,Linux的根目录是/,root超级用户的家目录是/root)
	touch  /tmp/test1/file  创建空文件
	vi file  //创建空文件并进入编辑界面,按e键进入编辑模式,按Esc键退出编辑
	:wq 保存编辑信息并退回命令行界面   :q  不保存并退回命令行界面  :q! 强制退出(不保存)
	列出文件和目录列表:
		ll -h /home/
		ls -s -h /home/    (ll相当于 ls -l)
	vi 和 vim 文本编辑
	文件内容查看
		cat -n  //查看内容时显示行号
		cat /etc/rehat-release  //不显示行号
		cat -n /etc/passwd  //查看内容时显示行号
	显示文件的头10行或者尾10行
		tail  //默认查看文件尾10行
		head   //默认查看文件头10行
		  -n 数字  //查看指定头几行
		cat    cat -n    head  tail
		tail -f  动态监控文件数据  (按Ctrl+C退出)
		more  百分比查看,不能回滚看
		less   能往回滚看
	复制文件
		cp ./tmp/file.txt  /test
	复制目录
		cp -r ./tmp/test01  ./test02(递归复制文件)
	移动、剪切、重命名、删除
		mv -rf
	rename   批量重命名
	>    >>   覆盖和追加
	rm xxx/ 删除文件     rm -rf xxx/  删除目录

9.文件权限

		pwd 查看当前位置
		ls -l /data0  显示当前目录的文件

10.打包tar原理

	-z	压缩		-c  打包			 -x		解包
	-f	必须要		-C	指定解压位置	 -v		输出信息
	/usr/bin/unzip			/bin/gzip	/bin/gunzip
	打包案例(tar命令平常就替代了gz命令)
	//将一个文件打包
	tar -zcvf ./test.tar ./test(将test文件夹打包成test压缩包)
	//将多个文件打包成一个包
	tar -zcvf folder.tar file1.txt file2.txt 
	//将一个文件解压
	tar -zxvf ./test.tar
	//将一个文件解压到指定目录
	tar -zxvf ./test.tar -C /home/test/
	//将多个文件打包并压缩
	tar -zcvf ./test.tar.gz folder1 folder2
	//将多个文件解包并解压缩
	tar -zxvf ./test.tar.gz
	使用tar备份指定目录/data0/内容包括子目录中内容备份至/data3/data0.tar.gz
	tar -zcvf /data3/data0.tar.gz /data0
	恢复tar文件中的内容/data3/data0.tar.gz至/data2/
	tar -zxvf /data3/data0.tar.gz -C /data2
	which cmd 查找cmd命令所在路径	whereis
	which reboot
	locate 文件查找-效率很快(用的是数据库)
	locate unzip(一个索引名)	//查找文件按所在
	updatedb		//更新数据库使之生效
	find文件查找-效率很慢
	find 路径 条件        find / -name unzip(在根目录下找名字为unzip的文件)
	给shell命令取别名
	alias 	(此操作只针对当前session<连接>有效,另外再开启一个连接还是没有这个别名)
	eg:alias cle=clear(为清屏命令clear取别名cle)
	unalias 取消别名设置  eg:unalias cle
	永久设置:进入vi ~/.bashrc(家用户目录下的环境配置文件,这个文件只针对当前用户)
	进入编辑模式后,加入alias cle='clear' 保存退回命令行
	输入命令source ~/.bashrc就完成了

猜你喜欢

转载自blog.csdn.net/lds_include/article/details/88790003