Linux shell编程学习笔记3:查询系统中已安装可以使用的shell

〇、更新记录

20230926 编写

一、前言

目前可以在Linux系统上运行的shell有许多种:sh、bash、cshell、tcsh、zsh……但是对一台具体的系统来说,未必包括上面列的所有这些shell,很可能包括其中两三个。

那么我们如何查询系统中已经安装有哪些shell可供我们使用的呢?

二、查询系统中已安装可以使用的shell的方法

(一)/etc/shells文件

在Linux系统中,/etc目录是一个非常重要的目录,它包含了系统的配置文件和相关的配置信息。其中有一个名为shells的文件,这个文件记录了你当前Linux系统中所支持的shell信息,我们可以查看这个文件来了解系统所支持的shell。

需要注意的是,系统可能还有其他shell在别的路径下。

(二)查看/etc/shells文件内容的方法

查看/etc/shells文件内容的方法有很多,这里先介绍其中两个方法。

1.使用cat命令

Linux中的cat命令是“ concatenate ”的缩写,作为Linux / Unix等操作系统中最常用的命令之一,该 命令允许我们查看文件内容,创建单个或多个文件,连接文件以及在终端或文件中重定向输出。 

当我们用cat命令来查看文件内容时,其功能类似DOS命令type。

实例:

user @myhost: ~>cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

可见当前系统中可用的shell有sh、dash、bash和rbash。

2.使用cp命令和/dev/stdout

Linux中的 cp 命令用于复制文件或目录,可以指定保留链接、文件属性、时间戳等选项。相当于DOS的copy或xcopy。

/dev/stdout是Linux中的标准输出,一般是电脑屏幕,在DOS中对应的则是con。

实例:

user @myhost: ~>cp /etc/shells /dev/stdout
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

我们使用cp命令将/etc/shells文件内容复制到/dev/stdout,同样可以看到/etc/shells文件的内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/142815.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

性能测试之使用Jemeter对HTTP接口压测

我们不应该仅仅局限于某一种工具,性能测试能使用的工具非常多,选择适合的就是最好的。笔者已经使用Loadrunner进行多年的项目性能测试实战经验,也算略有小成,任何性能测试(如压力测试、负载测试、疲劳强度测试等&#…

Git与Repo:开源开发的得力工具组合

Git与Repo:开源开发的得力工具组合 1. 引言 开源开发在当今的软件行业中扮演着至关重要的角色。它不仅推动了技术的创新和进步,也促进了开发者之间的合作与共享。随着越来越多的开源项目的涌现,有效的代码管理和版本控制成为了必不可少的工…

8. 基于消影点进行相机内参(主点)的标定

目录 1. ocam模型2. 消影点3. 基于消影点进行相机主点标定3.1 基于ocam模型的主点标定 感谢大家的阅读。 1. ocam模型 可以参考我的另一篇博客ocam模型。 这里简单提一下ocam模型: 这个模型将中心折反射相机和鱼眼相机统一在一个通用模型下,也称为泰勒模…

python基于轻量级卷积神经网络模型GhostNet开发构建养殖场景下生猪行为识别系统

养殖业的数字化和智能化是一个综合应用了互联网、物联网、人工智能、大数据、云计算、区块链等数字技术的过程,旨在提高养殖效率、提升产品质量以及促进产业升级。在这个过程中,养殖生猪的数字化智能化可以识别并管理猪的行为。通过数字化智能化系统&…

Linux0.11——操作系统怎么把自己从硬盘搬到内存

这里先直接给出答案:中断 此时,操作系统用短短几行代码,将数据段寄存器ds和代码段寄存器cs设置为了0x9000,方便之后的程序访问代码和数据,并且将栈顶地ss:sp设置在了远离代码的位置0x9000足够遥远的0x9FF00&#xff0c…

鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统

. 项目背景 一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管理的提升提出了更高的要求。 二、企业通过数字化转型,不仅有利于优化业务流程、提升经营管…

LLM各层参数详细分析(以LLaMA为例)

网上大多分析LLM参数的文章都比较粗粒度,对于LLM的精确部署不太友好,在这里记录一下分析LLM参数的过程。 首先看QKV。先上transformer原文 也就是说,当h(heads) 1时,在默认情况下, W i Q W_i^…

电商项目高级篇-02 elasticsearch-下

电商项目高级篇-02 elasticsearch-下 4.2、QueryDSL返回指定字段 4.2、QueryDSL 返回指定字段 返回单个字段 GET bank/_search {"query": {"match_all": {}}, "sort": [{"balance": {"order": "desc"}}], &quo…

详解yolov1理论 代码

目标检测要解决的3大问题: 1、有没有? 图片中是否有要检测的物体?(检测物体,判定前景背景) 2、是什么? 这些物体分别是什么?(检测到的物体是什么) 3、在…

【RV1103】RTL8723bs (SD卡形状模块)驱动开发

文章目录 前言硬件分析Luckfox Pico的SD卡接口硬件原理图LicheePi zero WiFiBT模块总结 正文Kernel WiFi驱动支持Kernel 设备树支持修改一:修改二: SDK全局配置支持 wifi全局编译脚本支持编译逻辑拷贝rtl8723bs的固件到文件系统的固定目录里面去 上电后手…

Learn Prompt- Midjourney案例:Logo设计

Logo设计是一个充满挑战的任务,因为Logo是品牌重要价值的浓缩。 快速开始​ 直接使用logo design for...来获取灵感。 备注 图像中生成文字在Midjourney中的效果还不是很好,但你可以用Canva编辑图片并替换自己的文字。 在提示中使用那些擅长你所寻找的…

Spring整合RabbitMQ——生产者(利用配置类)

1.生产者配置步骤 2.引入依赖 3.编写配置 配置RabbitMQ的基本信息,用来创建连接工厂的 编写启动类 编写配置类 4. 编写测试类

idea没有maven工具栏解决方法

背景:接手的一些旧项目,有pom文件,但是用idea打开的时候,没有认为是maven文件,所以没有maven工具栏,不能进行重新加载pom文件中的依赖。 解决方法:选中pom.xml文件,右键 选择添加为…

Stm32_标准库_呼吸灯_按键控制

Stm32按键和输出差不多 PA1为LED供给正电,PB5放置按键,按键一端接PB5,另一端接负极 void Key_Init(void){RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //APB2总线连接着GPIOBGPIO_InitStructur.GPIO_Mode GPIO_Mode_IPU;GPIO_InitStructur.…

24. 图论 - 图的表示种类

Hi,你好。我是茶桁。 之前的一节课中,我们了解了图的来由和构成,简单的理解了一下图的一些相关概念。那么这节课,我们要了解一下图的表示,种类。相应的,我们中间需要穿插一些新的知识点用于更好的去理解图,比如说邻接矩阵。 图的表示 我们一般用什么样的形式来表示图…

http基础教程(超详细)

HTTP HTTP 一 、基础概念 请求和响应报文URL 二、HTTP 方法 GETHEADPOSTPUTPATCHDELETEOPTIONSCONNECTTRACE 三、HTTP 状态码 1XX 信息2XX 成功3XX 重定向4XX 客户端错误5XX 服务器错误 四、HTTP 首部 通用首部字段请求首部字段响应首部字段实体首部字段 五、具体应用 连接管理…

使用 Python 函数callable和isinstance的意义

一、说明 在这篇博客中,我们将探讨两个python函数:1 callable 中的函数及其有趣的应用程序。该callable函数用于检查对象是否可调用,这意味着它可以作为函数调用。2 isinstance这个内置函数允许我们比较两种不同的数据类型并确定它们是否相…

Flink--6、输出算子(连接到外部系统、文件、kafka、MySQL、自定义Sink)

星光下的赶路人star的个人主页 世间真正温煦的春色,都熨帖着大地,潜伏在深谷 文章目录 1、输出算子(Sink)1.1 连接到外部系统1.2 输出到文件1.3 输出到Kafka1.4 输出到MySQL(JDBC)1.4 自定义Sink输出 1、输…

[密码学入门]仿射密码(Affine)

加密算法y(axb)mod N 解密算法x*(y-b)mod N(此处的为a关于N的乘法逆元,不是幂的概念) 如何求,涉及的知识挺多,还没想好怎么写,丢番图方程,贝祖定理(又译裴蜀定理),扩展欧…

IO流————

一、字符流 前面我们学习了字节流,使用字节流可以读取文件中的字节数据。但是如果文件中有中文,使用字节流来读取,就有可能读到半个汉字的情况,这样会导致乱码。虽然使用读取全部字节的方法不会出现乱码,但是如果文件过大又不太合适。 所以Java专门为我们提供了另外一种…