Linux复习之深入了解shell

一、通配符

通配符的作用是同时匹配多个文件以便于操作。常用的通配符是“*”和“?”,除此之外,还包括由[]-!组成的模式。
例如:
cp *.c/home:将当前目录下所有.c文件复制到/home文件夹中
rm-f a?d.txt:强制删除当前目录下首字符是a、尾字符是d的文件

二、重定向

重定向,就是重新定向的意思。在Linux操作系统中,标准输入设备是键盘,标准输出设备是显示器。与输入有关的只有输入重定向,与输出有关的重定向分为输出重定向、附加输出重定向和错误输出重定向。
(1)输入重定向(0<或<)
标准输入重定向:不用键盘输入,而用其他设备输入。
这里使用wall来广播一下之前编辑的test文件。写法是wall <test1.txt。
在这里插入图片描述
(2)输出重定向(1>或>)
也就是结果不用显示器,显示到其他地方。如图所示 ls -l 查看当前相信信息,将结果输出到test文件里面,写法:ls -l 1>test 这就是标准输出。
在这里插入图片描述
(3)附加输出重定向(>>)
输出重定向到test文件里面,会发现之前的信息被覆盖了。如果想保留以前的信息就需要将1> 在加一个大于号>>就不会覆盖之前的文件了
(4)错误输出重定向(2>)
将将错误信息重定向到error.txt文件中去。

三、管道

shell的一个重要特点就是能够将多个命令用管道符号“|”连接形成一个管道流,前一个命令的输出将作为后一个命令的输入,从左到右一次执行管道中的各个命令。
统计统计一下test1目录下的文件和子目录个数。构造管道命令为:ls /home/stu/test1/ |wc -l
ls的命令不再显示在屏幕上,而是通过管道成为下一个wc指令的输入,所以最终在屏幕上显示的是wc的统计结果。

四、自动补全

当目录或者文件名很长时,用户容易输入错误而不能准确定位到目录或文件,自动补全就可以解决这个问题。用户在定位目录或文件时,只需要输入文件名的前几个字符,然后按下tab键,系统就会自动补全文件名。
五、用户操作命令
Linux是一个多用户、多任务的操作系统,其中root用户是超级用户,该用户拥有所有权限,如果一直以root用户登陆,存在着一定的风险。因此,在Linux系统中常常要创建很多普通用户账号,各个账号需要分配不同的权限。
(1)创建用户
指令:useradd username
例如:useradd user1 则是创建了一个名为user1的账号
(2)为用户设置密码
指令:passwd username
例如:passwd user1
(3)删用户
指令:userdel username
例如:userdel user1
(4)切换用户
指令:su[选项] username
例如:
su user1 切换到user1进行操作
选项说明:
[-p]:执行su时不改变环境参数
[-c]:切换到username时并执行指令,然后切换回原来用户
su root-c mkdir /dir1
以root的身份创建目录dir1,然后回到当前用户
(5)sudo命令
使用su命令切换用户的缺陷就是任何一个人想转到root用户都必须知道root用户的密码,然而密码知道的人多了是很不安全的。sudo命令就能够解决这个问题,还可以实现以系统管理员的身份的操作。
sudo与su不同,不是人人都可以通过sudo临时切换到root身份进行操作,只有授权的用户才能享受sudo的特殊权利。
授权文件为/etc/sudoers,没有进行任何操作的情况下,只有root用户享有sudo特权,如果希望用户user1也享有sudo特权,必须将user1加入到授权文件中。
方法如下:
在这里插入图片描述
在这里插入图片描述
(1)将/etc/sudoers的权限改为属主用户具有可读可写权限,在[root@lacalhost root]# 终端输入命令chmod u+w /etc/sudoers
(2)使用vi打开sudoer文件后,在root ALL = (ALL) ALL,下加入一行stu ALL = (ALL) ALL。
在这里插入图片描述
(3)保存退出。保存后将sudoers的权限改为初始值,第一步中加入了“w”,这里去掉“w”的权限即可。在终端输入命令chmod u-w /etc/sudoers
(4)使用sudo命令,创建goods目录。可以发现在不使用sudo时stu用户,没有权限,无法创建goods目录。使用sudo后成功创建目录。

六、关机与重启

在Linux操作系统中,常用的关机和重启命令有shutdown、halt、reboot以及init。
(1)shutdown指令
通过直接关闭电源或者关闭虚拟机来关闭Linux是不安全的,因为Linux后台运行着多个进程,强制关闭会导致数据丢失,甚至会损害硬件。shutdown指令可以用来安全关闭Linux系统。
使用shutdown指令时,系统会告知所有登陆的用户系统将要关闭。既可以直接关闭系统,也可以设置延迟时间。给用户足够的时间去处理进程以及关闭程序。
使用格式:shutdown [选项][时间][警告信息]
主要选项意义:
[-t]:指定在多长时间后关闭系统
[-r]:重启系统
[-k]:给每个用户发送警告,并不真正关机
[-h]:关闭系统
[-c]:取消一个正在运行的shutdown
假如用户希望在2分钟后关机,并告诉所有用户。输入的命令如下:
在这里插入图片描述
(2)halt指令
halt指令是最简单的关机指令,等价于shutdown -h。执行halt指令之后,杀死应用进程,文件系统写操作完成后停止。
使用格式:
halt [选项]
主要选项如下:
[-f]:强制关机
[-i]:关机之前,断开所有网络接口
[-p]:关机时执行关闭电源的操作poweroff,取消一个已经运行的shutdown
[-n]:关机前不做将内存数据写回内存的操作
(3)reboot指令
reboot的工作过程与halt类似,作用是用来重启计算机
使用格式:
reboot [选项]
主要选项意义:
[-f]:强制关机
[-i]:关机之前断开所有网络连接
[-n]:关机前不做将内存数据写回内存的操作
(4)init指令
init是所有进程的祖先,进程号始终为1.init用于切换系统的运行级别,切换的工作是立刻完成的。init 0命令用于立刻将系统运行级别切为0,即关机;init 6命令用于将系统运行级别切换为6,即重启。
(5)poweroff指令
部分UNIX/Linux系统才支持。
poweroff 会发送一个 ACPI 信号来通知系统关机。
使用实例如下:
poweroff 关闭机器
poweroff -halt 停止机器
poweroff -reboot 重启机器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值