Linux基础命令

1、系统服务控制
systemctl start 服务名称 运行指定的服务程序,实现服务功能。
systemctl stop 服务名称 终止指定的系统服务程序,关闭相应的功能。
systemctl restart 服务名称 先退出,在重新运行指定的系统服务程序。
systemctl reload 服务名称 不退出服务,只是刷新配置,和restart操作相同。
systemctl status 服务名称 查看指定的系统服务的运行状态及相关信息。
2、切换运行级别
1)查看系统的target
[root@centos01 ~]# runlevel
N 3 (3表示当前模式是字符模式,N表示开机以来没有切换过,如果切换N应该是5。)
[root@centos01 ~]# systemctl get-default
multi-user.target (表示字符模式,当显示graphical.target是图形模式)
2)切换系统的target
init 5 切换图形模式,init 3时切换字符模式
[root@centos01 ~]# systemctl isolate multi-user.target 切换字符模式
[root@centos01 ~]# systemctl isolate graphical.target 切换图形模式
[root@centos01 ~]# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target 可将图形永久改为字符,同理懂得人自然能看透
3、关机和重启计算机
init 0 关闭计算机 init 6 重启当前系统
systemctl poweroff 关闭当前系统 systemctl reboot 重启当前系统
4、优化开机自动加载的服务
1)使用工具ntsysv
执行命令ntsysv --level 35 ,打开ntsysv管理程序。
空格键设置服务默认启动,([]表示已经启动)([]表示关闭)
2)使用**systemctl工具
systemctl enable 服务名称
开机自动启动服务
systemctl disable 服务名称 开机自动关闭
systemctl is-enable 服务名称 查看开机启动状态
5、简便快捷的操作方式

Tab键 补全键
\ 换行,当命令太长时,可用“\”换行
Ctrl+U 快速删除光标之前的所有字符
Ctrl+K 快速删除从当前光标结尾的所有字符
Ctrl+L 快速清空当前屏幕中的显示内容,只在左上角显示命令提示符
Ctrl+C 取消当前命令行的编辑,并切换为新的一行命令提示符。**
6、获得帮助信息
1)使用htlp命令
help pwd 是一个查看内部命令的帮助信息
2)使用–htlp选项
ls --help 查看帮助信息内部比help全
3)使用man手册页
man file 应用比较广泛,支持查看外部命令帮助
7、查看及切换目录
pwd 查看当前的工作目录在哪
cd 切换工作目录
直接输入目录或文件名,表示当前工作目录中的子目录、文件的位置,例如[root@centos01 aaaa]# cd bbbb/ 表示当前目录下的bbbb
. 可明确表示以当前的工作目录作为起点,例如[root@centos01 aaaa]# cd ./bbbb/ 也表示当前目录下的bbbb
… 表示以当前目录的上一级目录(父目录)作为起点,例如:
[root@centos01 aaaa]# ls
123.txt bbbb eeee aaaa目录下有一个文件两个目录,现在进入到bbbb
[root@centos01 bbbb]# vim …/123.txt bbbb里面没有123.txt,这个123.txt在上个目录里,也就aaaa里面。还有当输入cd … 时会退出到上一个目录。
~用户名 表示以指定宿主目录作为起点,例如:[root@centos01 asdf]# useradd zxcv
[root@centos01 asdf]# cd ~zxcv 先创建一个用户,然后输入这个命令,直接切换到宿主目录下的zxcv目录中。
cd - 表示上一次执行cd之前所在的目录中,例如:[root@centos01 bbbb]# pwd
/root/aaaa/bbbb 现在在bbbb目录中,现在输入cd在输入一下命令,懂得人自然能看透
[root@centos01 ~]# cd -
/root/aaaa/bbbb
[root@centos01 bbbb]#
8、ls命令-列表(List)显示目录内容
ls 命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。一条命令中允许同时使用多个参数,ls命令使用参数非常多,这里只列出几个常用的参数。
-l 显示文件和目录的列表,包括权限,大小、最后更新时间等详细信息。
-a 显示隐藏目录
-A 与-a基本类似,显示父目录
-d 显示目录本身的属性,而不是显示目录中的内容。
-h 此选项需要结合-l选项一起使用,使用后将显示为KB、MB等单位
-R 以递归的方式显示目录中的的所有目录中的目录中的目录循环直到没
–color 显示颜色,通常情况下,深蓝色表示目录,白色表示一般文件,绿色表示可执行的文件,黄色表示设备文件,红色表示压缩文件。
9、du命令——统计目录及文件的空间占用情况
du命令可用于统计指定目录(或文件)所占用磁盘空间的大小,使用目录或文件的名称作为参数。du命令用的几个选项如下。
-a:统计磁盘空间占用时包括文件,统计文件和目录。不加-a只统计目录。
-h:统计结果加单位。
-s:只显示这个目录的总大
小。*
10、创建目录和文件
1)、mkdir命令——创建就新的目录
-p 连续创建或循环创建一些目录。
2)、touch——创建空文件
3)、ln命令——创建链接文件
软连接与硬链接的区别主要在于,删除原始文件后,软连接将失效,但硬链接可用;软连接适用于文件或目录,但硬链接只可用于文件,不能为目录建立硬链接;软链接与原始文件可以位于不同的文件系统中,当硬件链接必须与原始文件在同一个文件系统内。
使用ln命令时,默认创建的是硬链接。如果需要创建软连接,必须结合-s选项明确指定
参数
-d——允许超级用户制作目录的硬链接
-f——强制执行
-i——交互模式,文件存在则提示用户是否覆盖
-n——把符号链接视为一般目录
-s——软连接(符号链接)
-v——显示详细的处理过程
软连接和硬链接基本一样
11、复制、删除、移动目录和文件
1)cp——复制(copy)文件或目录
参数
-f:覆盖目录同名文件或目录时不进行提醒,而是强制(force)复制
-i:覆盖目录同名文件或目录时提醒用户确认(interactive,交互式)。
-p:复制时保持(preserve)源文件的权限、属主及时间标记等属性不变。
-r:复制目录时必须使用此选项,表示递归复制所有文件及子目录。
2)rm命令——删除(Remove)文件或目录
参数
-f:删除文件或目录时不进行提醒,而是直接强制删除
-i:删除文件或目录时提醒用户确认
-r:删除目录时必须使用此项,表示递归删除整个目录树(应谨慎使用)
3)mv命令——移动文件或目录
12、查找目录和文件
1)which命令——查找用户所执行命令文件存放的目录
[root@centos01 ~]# which cd
/usr/bin/cd
2)find命令——查找文件或目录
[root@centos01 ~]# find -name mmmm
./zzzz/xxxx/cccc/vvvv/bbbb/nnnn/mmmm
./zzzz/xxxx/mmmm
[root@centos01 ~]# find /boot -size +1024k -a -name “vm*”(大于1000k且名字为vm开头的显示出来。
[root@centos01 ~]# find /boot -size +1024k -o -name “vm*”(表示大于1000k或者vm开头的显示出来。这里-a表示且,-o表示或,减号表表示小于,加号表示大于。
[root@centos01 ~]# find -user root
[root@centos01 ~]# find / -type d
-name,根据目标文件的名称进行查找,允许使用“”及“?”通配符
-size,根据目标文件的大小进行查找,一般使用“+”和“-”设置超过或小于指定的大小作为查找的条件、
-user,根据文件是否属于目标用户进行查找
-type,根据文件的类型进行查找,这里的类型指的是普通文件(f)、目录(d)、块设备文件(c)等。块设备指的是成块读取数据的设备(如硬盘,内存等),二字符设备指的是按单个字符读取数据的设备(如键盘、鼠标等)。
13、查看文件内容
1)、查看文件内容
cat命令——显示并连接文件的内容
2)使用more和less命令——分页查看文件内容
more 文件名 ,显示百分比,enter回车键一行一行的查看,空格向下滚屏,b向上滚屏,q退出。
less 文件名,enter回车键一行一行的查找,pg up 向上滚屏,pg dn向下滚屏,q退出。
3)head和tail命令——查看文件开头或者末尾的部分内容
[root@centos01 ~]# head -10 asdf (显示前十行)
[root@centos01 ~]# tail -10 asdf (显示后十行)
14、统计和检索文件内容
1)wc命令——统计文件内容中的单词数量
[root@centos01 ~]# wc -c asdf
-c:统计文件内容中的字节
-l:统计文件内容中的行数
-w:统计文件内容中的单词个数(以空格或制表位作为分隔)
[root@centos01 etc]# find /etc -name "
.conf" | wc -l (查找etc/下的.conf结尾的文件有多少个。
430
2)grep命令——检索、过滤文件内容,算是提取吧!
-i:查找内容时忽略大小写
-v:反向查找(lnvert),即输出与查找条件不相符的行。
如下命令提取到目录etc下的/passwd文件里的关于bob那的一行字。
[root@centos01 ~]# grep “bob” /etc/passwd
bob❌1000:1000:bob:/home/bob:/bin/bash
也可以使用复杂的条件表达式(例如,“^word”表示以word开头,“wordKaTeX parse error: Expected group after '^' at position 13: ”表示以word结尾,“^̲”表示空行)
下面的命令表示开头为“#”号的不显示,空行也不显示。
[root@centos01 ~]# grep -v “^#” /etc/yum.conf | grep -v "^KaTeX parse error: Expected 'EOF', got '#' at position 118: …oot@centos01 ~]#̲ gzip asdf …键将光标快速跳转到本行的行尾。
行间快速跳转
使用按键命令1G或者gg可跳转到文件内容的第一行。
使用按键命令G可跳转文件的最后一行。
使用按键命令#G可跳转到文件中的第#行(其中#号表示数字)
显示行号,在命令模式输入。
:set nu
2)复制、粘贴和删除
删除操作
按x键或Delete键删除光标处的单个字符
使用按键命令dd删除当前光标所在行,使用#dd的形式还可以删除从光标处开始的#行内容(其中“#”表示数字)
使用按键命令d^删除当前光标之前到行首的所有字符。
使用按键命令d$删除当前光标处到行尾的所有字符。
复制操作。使用按键命令yy复制当前正行的内容到剪贴板,使用#yy的形式还可以复制从光标处开始的#行内容(其中#号表示数字)。复制的内容需要粘贴后才能使用。
粘贴操作。按p键则会粘贴到光标位置处之前。
3)查找文件内容
使用/表示从当前光标处向后查找(?键向前查找),按“n”键可以移动到下一个查找结果。
4)撤销编辑及保存和退出
当在编辑文本出现错误时,可以使用按键u恢复刚刚的错误,U表示恢复当前行的所有编辑。而输入完成后可以使用大写的两ZZ保存并退出。
5)one、保存文件及退出vi编辑器
:w
two、另存为,例如:w /root/jaid,将文本另新建并存为root下的jaid文本中。
three、强性退出:q!不保存直接退出
four、保存并退出:wq
7)打开新文件或读入其他文件内容
执行e ~/新的文件名,例如:
:e ~/jiaxing 直接进入到这个文件中
:r /jiaxintian 将文件中内容直接读入当前文件中
8)替换文件内容
:[替换范围] sub /旧的内容/新的内容[/g]
:1,20 sub /ctl/jxt/g 将这个文件的1到20行所有ctl的换成jxt
:% sub /aaa/sys/g 将整个文件有aaa换成ssy
:1,20 sub /ctl/jxt 如果不加g更改的是这20行每一行的第一个匹配的结果
软件包的封装类型
RPM软件包:只能使用在RPM机制的Linux操作系统中安装如RHEL、Fedorda、CentOS等。RPM软件包一般针对特定版本的操作系统量身定制,因此依赖性较强。安装RPM软件包需要使用操作系统中的rpm命令。
DEB软件包:只能在DPKG机制的linux系统中进行安装如Debian、Ubuntu等
源代码软件包:tar这种软件包是程序员开发完成的原始代码。
使用RPM软件包管理命令——rpm
1、rpm命令的格式
[root@centos01 ~]# man rpm (可以获得关于rpm命令的详细帮助信息)
访问G:\计算机研究\linuxcentos系统命令\RPM包
2、查询RPM软件包信息
1)查询已安装的RPM软件包信息
不带子选项的“-q”选项可用如查询已知名称的软件包是否已经安装。
-qa:显示当前系统中以RPM方式安装的所有软件列表。
-qi:查看指定软件包的名称、版本、许可协议、用途描述等详细信息(–info)
-ql:显示指定的软件包在当前系统中的所有目录、文件列表(–list)
-qf:查看指定的文件或目录是由哪个软件包所安装的(–file)
2)查询RPM软件包文件中的相关信息
使用-qp选项时,查询未安装的,以.rpm结尾的为未安装的
-qpi:查看指定软件包的名称、版本、许可协议、用途描述等详细信息
-qpl:查看该软件包准备要安装的所有目标目录、文件列表。
3、安装、升级、卸载RPM软件包
-i:在当前系统中安装一个新的RPM软件包
-e:卸载指定名称的软件包
-U:检查并升级系统中的某个软件包,若该软件包原来并未安装,则等同于“-i”选项。
-F:检查并更新系统中的某个软件包,若该软件包原来并未安装,则放弃安装。
-h:在安装或升级软件包的过程中,以“#”号显示安装进度。
-v:显示安装过程中的详细信息。
–force:强制安装某个软件包,当需要替换已安装的软件包及文件,或者安装一个比当前使用的软件版本更旧的软件时,可以使用此选项。
–nodeps:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系。
2)卸载软件包
rpm -e lynx
4、维护RPM数据库
1)重建RPM数据库
当RPM数据库发生损坏(可能由误删除文件、非法关机导致)这时使用rpm命令“–rebuiddb”或“–initdb”功能对数据库重建
rpm --rebuiddb 或 rpm --initdb
2)导入验证公钥
rpm --import /media/cdrom/RPM-GPG-KEY-CentOS-7 (将公钥导入RPM数据库中)
从源代码编译安装程序过程
步骤一:tar解包
用途:将源代码包解压、解包,释放到指定目录,等待编译。
步骤二:./configure配置
用途:设置安装目标文件夹,选择要安装的功能模块等。
步骤三:make编译
用途:根据前一步配置,将源代码变成可执行的二进制文件。
步骤四:make install安装
用途:将编译好的二进制文件复制到系统中,并设置应用环境
账号和权限管理
一、UID和GID
每个用户账号都有一个数字形式的身份标记,称为UID,每个组也有一个数字形式的身份标记,称为GID。
root用户账号的UID号为固定值0,而程序用户账号的UID默认为1499,50060000属于普通用户
root组账号的UID号为固定值0,而程序用户账号的UID默认为1499,50060000属于普通用户
二、用户账号管理
1、用户账号文件
与用户账号相关的配置文件主要有两个,分别是/etc/passwd和/etc/shadow。前者用于保存用户名称,宿主目录,登录Shell等基本信息,后者用于保存用户的密码,账号有效期信息。在这两个配置文件中,每一行对应用户账号,不同的配置项之间使用“:”(冒号)进行分隔。
passwd文件中以:隔开的字段
第1字段:用户账号的名称,也是登录系统时使用的识别名称。
第2字段:经过加密的用户密码字串,或者密码占位符“x”。
第3字段:用户的UID号。
第4字段:所属基本组账号的GID号。
第5字段:用户全名,可填写与用户相关的说明信息。
第6字段:宿主目录,即该用户登录后所在的默认工作目录。
第7字段:登录Shell等信息,用户完成登录后使用的Shell。
shadow文件的没用行内容包含九个字段
第1字段:用户账号名称
第2字段:使用SHA-512(哈希算法的一种)加密的密码子串信息,当“*”或“!!”时表示此用户不能登录到系统,若该字段内容为空,则该用户无需密码即可登录系统。
第3字段:上次修改密码的时间,表示从1970年01月01日算起到最近一次修改密码时间隔的天数。
第4字段:密码的最短有效天数,自本次修改密码后,必须至少经过该天数才能再次修改密码。默认值为0,表示不进行限制。
第5字段:密码的最长有效天数,自本次修改密码后,经过改天数以后必须再次修改密码默认值为99999,表示不进行限制。
第6字段:提前多少天警告用户密码将过期,默认值为7.
第7字段:在密码过期之后多少天内禁用此用户、
第8字段:账户失效时间,此字段指定了用户作废的天数(从1970年01月01日算起),默认值为空,表示账号永久可用。
第9字段:保留字段,目前没有特定用途。
三、添加、修改、删除用户账号
1)useradd命令——添加用户账号
-u:指定用户的UID号,要求该UID号码未被其他用户使用
-d:指定用户的宿主目录位置(当与-M一起使用时,不生效)。
-e:指定用户的账户失效时间,可使用YYYY-MM-DD的日期格式。
-g:指定用户的基本组名(或使用GID)
-G:指定用户的附加组名(或使用GID号)
-M:不建立宿主目录,即使/etc/login.defs系统配置中已设定要建立宿主目录。
-s:指定用户的登录Shell。
执行以下可以创建一个辅助管理员账号admin,将其基本组指定为“wheel”,附加组指定为“root”,宿主目录指定为“/admin”。
[root@centos01 ~]# useradd -d /admin -g wheel -G root admin
2)passwd命令——为用户账号设置或修改密码
[root@centos01 ~]# passwd bob
-d:清空指定用户的密码,仅适用用户名即可登录系统。
-l:锁定用户账户。
-S:查看用户账户的状态。
-u:解锁用户账户。
3)usermod命令——修改用户账号属性
-u:修改用户的UID号。
-d:修改用户的宿主目录位置。
-e:修改用户的账户失效时间,可使用YYYY-MM-DD的日期格式。
-g:修改用户的基本组名(或使用GID号)。
-G:修改用户的附加组名(或使用GID号)。
-s:指定用户的登录Shell。
-l:更改用户账号的登录名称。
-L:锁定用户账号。
-U:解锁用户的账户。
4)userdel命令——删除用户账号
-r:同时删除其宿主目录
四、组账号管理
1)、组账号相关配置文件也有两个,分别是/etc/group和/etc/gshadow。
2)添加、管理、删除组账号
1)groupadd命令——添加组账号
需要指定GID号时,可以使用“-g”选项。
2)gpasswd命令——添加、设置、删除组成员
一般用来管理组账号的用户成员。需要添加、删除成员时,可分别使用“-a”和“-d”选项。
3)groupdel命令——删除组账号
而指定的组名称作为参数
五、查询账号信息
1、groups命令——查询用户账号所属的组
想要查看的那个用户名称作为参数。
2、id命令——查询用户账号的身份标识
可以快速查看指定用户的UID、GID等标识信息。
3、finger命令——查询用户账号的登录属性
可以查看到登录名称、完整名称、宿主目录、登录Shell等。
4、w命令——查询当前主机的用户登录情况
列出登录账号的名称、所在终端、登录时间、来源地点等信息。
六、管理目录和文件的属性
[root@centos01 ~]# ls -ld /etc/
drwxr-xr-x.
查看到的是该文件的访问权限。
第一个字符:表示该文件的类型,可以是d(目录)、b(块设备文件)、c(字符设备文件)、“-”(普通文件)、字母“l”(连接文件)等。
第2~4个字符:表示该文件的属主用户对该文件的访问权限。
第5~7个字符:表示该文件的属组内各成员用户对该文件的访问权限。
第8~10个字符:表示其他任何用户对该文件的访问权限。
第11个字符:这里的“.”与SELinux有关,目前不必关注。
权限字符r、w、x用于文件表示可读、可写、可执行。
设置目录和文件的权限
chmod命令设置文件或目录的权限时,基本的命令格式如下:
chmod [ugoa…] [±=] [rwx] 文件或目录
“ugoa”表示该权限设置所针对的用户类别。“u”代表文件属主,“g”代表文件属组的用户,“o”代表其他任何用户,“a”代表所有用户(u、g、o的总和)
“±=”表示设置权限的操作动作。“+”代表增加相应权限,“-”代表减少相应权限,“=”代表仅设置对应的权限。
“rwx”是权限的字符组合形式,也可以拆分使用,如“r”“rx”等。
[root@centos01 ~]# chmod ugo-x /etc/(表示删除全部用户使用所有的“x”权限)
或者chmod nnn 文件或目录
r、w、x权限字符可分别表示为八进制数字4、2、1,表示一个权限组合时需要将数字进行累加。例如,“rwx”采用累加数字形式表示成“7”,“r-x”采用累加数字形式表示成“5”,而“rwxr-xr-x”由三个权限段组成,因此可以表示成“755”,“rw-r–r--”可以表示成“644”
有时会需要将某一个目录中的所有子目录及文件的权限都设置为相同的值,这时只要结合chmod命令的“-R”选项实现
七、如果同时设置目录和文件的属主、属组,则需要用到分隔符“:”。
chown daemon:whell mymkdir 更改属主为daemon ,属组为wheel。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值