bash shell的使用-Linux-学习笔记(四)

前置

本文是在这篇文章的基础上继续的
在这里插入图片描述

bash#连接
exit#退出

注意,打开本身就是一个连接,所以上面是连接了两次
所以输入两次exit才是真的退出

什么是shell

是一个命令解释器,就是一个软件 执行就是bash,可以在里面输入命令,做交互
shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序。你在提示符下输入的每个命令都由shell先解释然后传给Linux内核。
shell 是一个命令语言解释器(command-language interpreter)。拥有自己内建的 shell 命令集。此外,shell也能被系统中其他有效的Linux 实用程序和应用程序(utilities and application programs)所调用。
不论何时你键入一个命令,它都被Linux shell所解释。一些命令,比如打印当前工作目录命令(pwd),是包含在Linux bash内部的(就象DOS的内部命令)。其他命令,比如拷贝命令(cp)和移动命令(rm),是存在于文件系统中某个目录下的单独的程序。而对用户来说,你不知道(或者可能不关心)一个命令是建立在shell内部还是一个单独的程序。
shell 首先检查命令是否是内部命令,不是的话再检查是否是一个应用程序,这里的应用程序可以是Linux本身的实用程序,比如ls 和 rm,也可以是购买的商业程序,比如 xv,或者是公用软件(public domain software),就象 ghostview。然后shell试着在搜索路径($PATH)里寻找这些应用程序。搜索路径是一个能找到可执行程序的目录列表。如果你键入的命令不是一个内部命令并且在路径里没有找到这个可执行文件,将会显示一条错误信息。而如果命令被成功的找到的话,shell的内部命令或应用程序将被分解为系统调用并传给Linux内核。
shell的另一个重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语言支持在高级语言里所能见到的绝大多数程序控制结构,比如循环,函数,变量和数组。shell 编程语言很易学,并且一旦掌握后它将成为你的得力工具。任何在提示符下能键入的命令也能放到一个可执行的shell程序里,这意味着用shell语言能简单地重复执行某一任务。

能用来做什么

原来在windows上点点点完成的事情,它都能做到

使用Shell实现对Linux系统的大部分管理,例如:

  • 文件管理(文件创建,移动,复制,删除,编辑…)
  • 权限管理(不同用户不通权限)
  • 用户管理(创建,删除….)
  • 磁盘管理(挂载)
  • 网络管理
  • 软件管理
    等等

创建用户命令

useradd 用户名

举例
在这里插入图片描述

设置密码

passwd 用户名

在这里插入图片描述
注意,这里的密码就是看不到的,直接输入。

我们应该如何使用shell

如果只是靠输入命令来运行是非常低效的,我们可以通过写shell的脚本来提高它的效率,也就是shell script,用于批量执行命令

这里写脚本是要一步步来的

先创建一个aa.sh

在这里插入图片描述

然后就是这样的
在这里插入图片描述

在这里插入图片描述

末尾输入wq用于保存退出

效果
在这里插入图片描述

示例
作用,建立100个用户

vim test.A
for i in {1..101}
do
 useradd test$i
 echo "create test$i"
done

bash test.A

linux自带python环境
在这里插入图片描述

shell提示符

[root@lqz ~]#以此举例
# root:当前用户
# @ :没有意义
#lqz:主机名
# ~:家目录
# #:表示超级用户
[lqz@lqz ~]$ 
hostname#查看主机名

shell基础语法

#  命令  选项  参数   三部分组成
ls -a  /temp #查看当前路径下的文件以及文件夹    
ls --all#这个跟上面的命令是一个意思,只是字母写全了
# 以下三个一样
ls -l -a
ls -la
ls -al

命令补全

# 一下或者两下tab建
# 一下的话会直接找到你要用的命令
# 两下,可能会用到的全列出来

# ifconfig 在7的版本没有,需要装软件
yum insatll net-tools -y
yum insatll net-tools

# yum install bash-completion -y   补齐选项
ls - 两下tab建,所有的选项都会提示出来

命令快捷键

Ctrl + a    #光标跳转至正在输入的命令行的首部
Ctrl + e    #光标跳转至正在输入的命令行的尾部
Ctrl + c    #终止前台运行的程序   ##################
Ctrl + d    #在shell中,ctrl-d表示推出当前shell。
Ctrl + z    #将任务暂停,挂至后台
Ctrl + l    #清屏,和clear命令等效。  ##############
Ctrl + k    #删除从光标到行末的所有字符
Ctrl + u    #删除从光标到行首的所有字符
Ctrl + r    #搜索历史命令, 利用关键字,Tab建选中,只能找到最近的一条
Ctrl + w    #按单词或空格进行向前删除
Ctrl + 左右建 #按单词或空格进行向前向后跳

#在命令行前加面加 "#" 则该命令不会被执行

history

# history查看历史命令
# !数字   快速执行数字那一行
# !yum    快速执行最近一条yum命令


# history -d 70  把历史记录的第70行删除
# history -c   清空所有记录(连到人家服务器,操作完了,执行一下)
# history -w   可以把 历史记录写到用户家路径的.bash_history文件中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丰。。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值