Linux常用命令

整理了一些Linux常用的基本命令

一、日常操作命令

1、查看网络连接

			ping

2、查看当前所在的工作目录 (print working directory) X

			pwd

3、查看当前系统的时间

			date

4、查看有谁在线(哪些人登陆到了服务器)

			who  查看当前在线
			whoami 查看当前登录的用户名
			last 查看最近的登陆历史记录

二、文件系统操作

1、ls与ll的区别:

ls 不换行显示当前文件夹下的文件夹或文件的名字
ll 换行显示当前文件夹下的文件夹或文件的名字,以及这些文件夹或者文件的详细信息
ls / 查看根目录下的子节点(文件夹和文件)信息 (list)
ls -al -a是显示隐藏文件 -l是以更详细的列表形式显示 (list all)
ll 换行显示文件
ll -h 换行显示文件并显示其大小(带单位)
在这里插入图片描述

2、切换目录 (change directory)

cd  /home  切换到当前用户的家目录    绝对路径
cd  ~
			如果是root用户,cd ~ 相当于 cd /root
			如果是普通用户,cd ~ 相当于cd /home/当前用户名

3、创建文件夹 (make directoriy)

		mkdir aaa     这是相对路径的写法,在当前目录下创建目录aaa
		mkdir -p aaa/bbb/ccc   在当前目录创建目录aaa,并在aaa下创建bbb,在bbb下创建ccc
		mkdir  /data    这是绝对路径的写法,/代表根,意思就是在根目录下创建了data目录 

在这里插入图片描述
4、创建文件(创建一个空文件)

文件不能用命令进入,文件夹可以

		touch 文件名.后缀
		eg:text.1

在这里插入图片描述
5、echo往文件中添加内容

		echo "i miss you,my baby" > text.1       覆盖:利用重定向“>”的功能,将一条指令的输出结果写入到一个文件中
		echo "huangxiaoming ,gun dan" >> text.1  追加:...

在这里插入图片描述
6、cat查看文件中的内容

		cat text.1 

7、删除文件夹 (不能删除空目录)

		rmdir 
		注1:一般不用这个命令,因为它只能删除空目录,使用不太方便

		eg:
		rmdir aaa
		rmdir:删除“aaa”失败 目录非空
		rmdir aaa/bbb/ccc/
		ls aaa/bbb 看不到ccc目录了,说明ccc目录已经被删除了

8、rm 删除文件(remove),而不是文件夹

		-r 断递删除
		-f 强制删除文件或目录 (force)			
		eg:
		rm -r aaa   可以把aaa整个文件夹及其中的所有子节点 
		rm -rf aaa  强制删除aaa文件夹下所有文件

		注1:rm aaa报错
		rm :无法删除 "aaa" :是一个目录

9、mv 修改文件夹或者文件名称;移动文件或目录;

		1)mv 源文件/源目录 目标文件/目标目录                 把文件夹aaa的名称修改成bbb
		2)mv 源文件 目标目录         把源文件移动到目标目录下
		3)mv 源文件 目标目录/文件名  把源文件移动到目标目录下,并修改文件名

		eg:
		mv text.1 bbb             把文件bbb.1文件移动到目录bbb下
		mv text.2 bbb/text.2.bak  把文件text.1移动到目录bbb下,并修改名字为text.2.bak

10、用vi文本编辑器来编辑生成文件

		最基本用法
		vi  text.3   vim  text.3
			1.首先会进入"一般模式",此模式只接受各种快捷键,不能编辑文件内容
			2.按i键,就会从一般模式进入编辑模式,此模式下,敲入的都是文件内容
			3.编辑完成之后,按Esc键退出编辑模式,回到一般模式;
			4.再按冒号,进入"底行命令模式",输入wq命令,回车即可

		总结:按 i 进入编辑模式后,且编辑完毕后,
			1)按 esc,在按:wq,即可保存退出;
			2)按 esc,在按:wq!,即强制保存保存并退出;
			3)按 esc,在按:q!,即可不保存强制退出;

一些常用快捷键(在一般模式下使用):

i 在光标前一位开始插入
I 在该行的最前面插入
a 在光标后一位开始插入
A 在该行的最后插入 重点
gg 直接跳到文件的首行
G 直接跳到文件的末行 重点
dd 删除行,如果 5dd ,则一次性删除光标后的5行
yy 复制当前行, 复制多行,则 3yy,则复制当前行附近的3行
p 粘贴(右键)
v 进入字符选择模式,选择完成后,按y复制,按p粘贴
ctrl+v 进入块选择模式,选择完成后,按y复制,按p粘贴
shift+v 进入行选择模式,选择完成后,按y复制,按p粘贴

****查找并替换(底行命令模式):
	%s/sad/88888	效果:查找文件中所有sad,替换为88888888888888
	/you	效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)

三、文件权限的操作

1、linux文件权限的描述格式解读

	eg:以drwxrw-r--为例
	d,-rw,r--,r--  (也可以用二进制表示  111 101 101  --> 还可以用十进制表示 755)

	d:标识节点类型(d:文件夹   -:文件  l:链接)
	r:可读,即能显示内容   
	w:可写,即可修改内容   
	x:可执行,即可当做程序运行

	第1位:文件类型(d:文件夹   -:文件  l:链接)
	第2-4位rwx:  表示这个文件的拥有者对它的权限:可读可写可执行            文件拥有者:当初创建这个文件的用户
	第5-7位rw-:  表示这个文件的所属组对它的权限:可读,可写,不可执行      用g(group)表示  
	第8-10位r--: 表示这个文件的其他用户对它的权限:可读,不可写,不可执行  用o(other)表示
	第2-10位:    表示所有的权限,用a(all)表示

2、修改文件权限 (change mode)

简单案例: chmod u+x hello.sh 表示将hello.sh对所属用户的权限增加x (u:user)
chmod g-rw hello.sh 表示将hello.sh对所属组的rw权限取消 (g:group) chmod
o-rw hello.sh 表示将hello.sh对其他人的rw权限取消 (o:other)

	也可以用数字的方式来修改权限:
	chmod 664 hello.sh      就会修改成rw-rw-r--
	chmod 777(111 111 111) hello.sh      就会修改成rwxrwxrwx
	chmod -R 770 aaa        递归修改aaa文件夹中的所有文件的权限为770  rw-rw----
	chown -R dyh:dyh aaa    递归更改aaa文件夹的所有者为用户dyh(只有root能执行)
	
	111 = 4+2+1=7
	
	6=110
	4=100

	eg:创建一个脚本,并给它可执行权限
	touch hello.sh
	vi hello.sh
	内容如下:
	#!/bin/bash
	echo "hello!!!"

	运行脚本: ./hello.sh  
	报错:没有执行权限
	chmod 777 hello.sh
	输出"hello!!!"

	注1:目录没有执行权限的时候普通用户不能进入
	注2:文件只有读写权限的时候普通用户是可以删除的(删除文件不是修改它,是操作父及目录),只要父级目录有执行和修改的权限

四、基本的用户管理

1、添加用户命令:useradd

		-u 指定组ID(uid)
		-g 指定所属的组名(gid)
		-G 指定多个组,用逗号“,”分开(Groups)
		-c 用户描述(comment)
		-e 失效时间(expire date)
		-d 指定主目录
		
		eg:简单创建一个用户
			useradd  dyh
			
		eg:建立一个新用户账户dyh,并设置UID为544,主目录为/usr/dyh,属于users组:
			useradd -u 544 -d /usr/dyh -g users -m  usr

2、修改密码

		passwd 用户名  
		
		eg:修改dyh用户的密码为1234
			passwd dyh
			按提示输入密码(密码长度8位以上)

3、删除用户命令:userdel(user delete)

		-r 删除账号时同时删除目录(remove)
		userdel 用户名

4、切换用户

		su
		eg:切换到dyh用户
		su dyh 

5、给普通用户临时root权限

		sudo

		eg:给dyh用户临时root权限(执行完这条指令后从root身份回到普通用户dyh的身份) 
		sudo useradd dyh 

6、添加组:groupadd

		-g 指定gid
		-n 更改组名(new group)

7、删除组:groupdel

		groupdel 组名

8、为用户配置sudo权限

		root用户编辑/etc/sudoers文件
			vi /etc/sudoers
			在文件的如下位置,为hadoop添加一行即可
			root ALL=(ALL)  ALL     
			dyh  ALL=(ALL)  ALL

		然后,hadoop用户就可以用sudo来执行系统级别的指令
		[hadoop@shizhan ~]$ sudo useradd huangxiaoming

五、系统管理操作

1、查看ip地址

ip addr

2、查看网络配置

ifconfig

3、查看主机名

hostname

4、修改主机名(重启后无效)

hostname hadoop

5、修改主机名(重启后永久生效)

vi /etc/sysconfig/network

6、重启网络服务

service network restart

systemctl 服务名 restart /start   stop

7、修改IP(重启后无效)

ifconfig eth0 192.168.12.22

8、修改IP(重启后永久生效)

vi /etc/sysconfig/network-scripts/ifcfg-eth0

9、配置hosts文件,识别主机名

vi /etc/hosts
	
	eg:编辑host文件  一个ip对应解析一个主机名	
		127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
		::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
		192.168.194.128 shizhan
		192.168.194.129 shizhan01

10、关机

halt

11、重启

reboot

12、挂载外部存储设备到文件系统中

		mkdir   /mnt/cdrom      创建一个目录,用来挂载
		mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/     将设备/dev/cdrom挂载到 挂载点 :  /mnt/cdrom中

umount
		umount /mnt/cdrom

13、统计文件或文件夹的大小

-h:带上单位
du -sh  /mnt/cdrom/Packages
df -h    查看磁盘的空间

14、配置主机之间的免密ssh登陆

	假如:A主机要登陆B主机
			1)在A上操作:生成密钥对
				ssh-keygen   (提示时,直接回车即可)
				
2)再将A自己的公钥拷贝并追加到B的授权列表文件authorized_keys中
				ssh-copy-id   B
				eg:ssh-copy-id 192.168.33.111  用主机名也可以,只要你的host文件中配置了,让它能认识这个主机名就可以啦
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值