一、Linux入门

1.1、Linux目录结构及含义

  • /bin 【重点】(/usr/bin、/usr/local/bin)
    • 是Binary的缩写,这个目录存放着最经常使用的命令
  • /sbin (/usr/sbin、/usr/local/sbin)
    • s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
  • /home 【重点】
    • 存放普通用户的主目录, 在Linux中每个用户都有一个自己的目录,一般
      该目录名是以用户的账号命名的。
  • /root 【重点】
    该目录为系统管理员,也称作超级权限者的用户主目录。
  • /boot 【重点】
    • 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
  • /proc【勿动】
    • 这个目录是-一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。
  • /srv【勿动】
    • service缩写,该目录存放一些服务启动之后需要提取的数据。
  • /sys【勿动】
    • 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统
  • /tmp
    • 这个目录是用来存放一 些临时文件的。
  • /dev
    • 类似于windows的设备管理器,把所有的硬件用文件的形式存储。
  • /media【重点】
    • linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux
      会把识别的设备挂载到这个目录下。
  • /mnt【重点】
    • 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂
      载在/mnt/上,然后进入该目录就可以查看里的内容了。
  • /opt
    • 这是给主机额外安装软件所摆放的目录。如安装ORACLE数据库就可放到该目录下。
      默认为空。
  • /usr/local【重点】
    • 这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。
  • /var【重点】
    • 这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。
      包括各种日志文件。
  • /selinux [security-enhanced linux]
    • SELinux是一种安全子系统,它能控制程序只能访问特定文件。

二、常用命令

2.1、vim常用快捷键

  1. 拷贝当前行 yy,拷贝当前行向下的5行5yy,粘贴(p) 。
  2. 删除当前行dd, 删除当前行向下的5行5dd
  3. 在文件中查找某个单词[命令行下/关键字,回车查找,输入n就是查找下一个]
  4. 设置文件的行号,取消文件的行号[命令行下:set nu:set nonu]
  5. 快捷键到底文档的最末行[G]和最首行[gg]注意这些都是在正常模式下执行的。
  6. 撤销,正常模式下输入u
  7. 将光标移动到第20行先输入20再按shift+g

2.2、关机重启命令

shutdown -h now	# 立即关机
shutdown -r now	# 立即重启

halt			# 关机

reboot			# 重启

sync			# 将内存的数据同步到磁盘

2.3、用户登陆注销

logout			# 注销

su - <username>		# 切换到指定用户并将当前目录转移到账户home目录
su <username>		# 切换到指定用户并将当前目录不变

2.4、用户、用户组管理

  • /etc/passwd文件
    • 用户的配置文件,记录用户的各种信息
  • /etc/shadow文件
    • 口令的配置文件
  • /etc/group文件
    • 组的配置文件
useradd [-d <dir>] [-g <groupname>] <username>	# 添加用户, -d表示指定home目录
												#		   -g表示指定组名称
												
usermod [-g <groupname> <username>]				# 将用户修改到指定组
												
passwd <username>				# 指定用户密码

userdel [-d] <username>			# 删除指定目录,-d表示同时删除home目录

id <username>					# 查询用户信息

groupadd <groupname>			# 添加组

groupdel <groupname>			# 删除组

2.5、系统运行级别

代号 说明
0 关机
1 单用户(找回密码)
2 多用户,无网络
3 多用户,有网络
4 保留
5 图形界面
6 重启

新版本无法通过修改/etc/inittabid:initdefault调整运行级别

可通过如下命令修改

systemctl set-default graphical.target # 设置为5级别

systemctl set-default multi-user.target	# 设置为3级别

2.6、帮助命令

man <命令> # manual,手册

help <命令>	# 获取shell内置命令的帮助信息

2.7、目录、文件命令

pwd		# 当前工作目录的绝对路径

ls [-a] [-l]	# 查看当前目录下的文件;a:查看所有,包括隐藏文件(夹);l:查看详细信息

cd [dir]		# 切换到指定目录,~和不填为当前账户home目录

mkdir [-p] <dir>	# 创建目录,p:表示多级目录
rmdir <dir>			# 删除空目录

touch <filename>	# 创建空文件

cp [-r] <源文件> <目标目录>	# 复制文件(夹),r:递归复制。命令前加“\”表示强制、不提示

mv <源文件> <目标目录>			# 移动/重命名文件/夹

rm [-r] [-f] <file/dir>		# 删除文件或目录,r:递归删除;f:强制、不提示

2.8、查看文件内容

cat [-n] <file>		# 以只读方式查看文件内容,n:显示行号

more <file>			# 全屏按页查看文件内容,基于vi编辑器的文本过滤器
操作 说明
space 下一页
enter 下一行
q 退出
ctrl+f 向下滚动一屏
ctrl+b 向上滚动一屏
= 输出当前行号
:f 输出文件名和当前行号
less <file>			# 分屏查看内容,根据显示加载内容,对大文件高效
操作 说明
space 下一页
page down 下一页
page up 上一页
/字符 向下查找,n:下一个;N:上一个
?字符 向上查找,n:上一个;N:下一个
q 退出
<指令> > <filename>		# 覆盖文件

<指令> >> <filename>		# 追加文件

echo [-e] [text]		 # 在屏幕上打印文本,e:转义生效

head [-n <num>] <file>	 # 查看文件头十行的内容,n:自定义行数

tail [-n <num>] [-f] <file>		# 查看文件后十行内容,n:自定义行数,f:实时跟踪文件修改情况

ln [-s] <源> <链接名>	 # 创建链接,s:软连接,可以是目录或文件。默认硬链接,只能是文件
						# pwd时为软连接所在目录
						
history					# 查看历史命令,默认1000条,通过“!1”执行历史命令

2.9、日期时间

date [-s <datetime>]	# 显示日期时间,其余命令查手册,s:自己设置日期时间如:“2020-08-05 22:25:23”

cal [<year>]			# 查看日历,参数为具体显示哪年,默认本月

2.10、搜索

find [参数] [起始目录]	# 查找,name:查找指定文件
						#	   user:查找指定用户拥有
						#	   size:指定大小
						
grep [-n] [-i] <查找内容> [查找文件] # 过滤查找,n显示匹配行号;i:不区分大小写

2.11、压缩、解压缩

gzip <filename>					# 压缩为*.gz的文件,压缩后源文件不保留
gunzip <filename>				# *.gz的文件解压缩,解压后源文件不保留

zip [-r] <filename.zip> <源文件>	# 压缩为.zip的文件,r:递归压缩
unzip [-d <目录>] <filename.zip>	# 解压缩,d:解压到目录

tar 							# 打包命令,具体看文档

版权声明:本文为shimeath原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/shimeath/p/13443272.html