Linux 下的shell

------------------------------

Linux 使用的一种shell版本是[Bourne Again SHell]简称为bash.这个shell是Bourne Shell 的增强版,基于GNU的架构下发展出来的。

第一个流行的shell[Bourne shell]sh

后来流行的shell C shell 简称 csh.

其中 C shell想对热门,因为linux是c语言编写的,当时很多程序设计师使用c来开发软件。

查看自己的linux系统下可以使用的shell,检查 /etc/shells这个文件。(以我的centos 6.5为例)。

[[email protected] ~]# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

[[email protected] ~]#

而其中的bash shell是默认的shell。

里面的/sbin/nologin 可以让使用者无法以其他服务登陆主机。

登陆linux的时候,系统会给出一个shell让登陆者来工作,

在/etc/paswd里面查看,系统账号bin, daemon等等使用/sbin/nologin.

[[email protected] ~]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

...

~/.bash_history记录的是前一次登陆以前所运行过的命令。

时间: 2024-08-05 12:35:37

Linux 下的shell的相关文章

linux下的shell命令的编写,以及java如何调用linux的shell命令(java如何获取linux上的网卡的ip信息)

程序员都很懒,你懂的! 最近在开发中,需要用到服务器的ip和mac信息.但是服务器是架设在linux系统上的,对于多网口,在获取ip时就产生了很大的问题.下面是在windows系统上,java获取本地ip的方法.贴代码: package com.herman.test; import java.net.InetAddress; /** * @see 获取计算机ip * @author Herman.Xiong * @date 2014年5月16日 09:35:38 */ public class

Linux下的shell编程入门

通常情况下,我们从命令行输入命令每输入一次就能够得到系统的一次响应.一旦需要我们一个接着一个的输入命令而最后才得到结果的时候,这样的做法显然就没有效率.要达到这样的目的,通常我们利用shell程序或者shell脚本来实现. 一.简介 Shell编程有很多类似C语言和其他程序语言的特征,但是又没有编程语言那样复杂.Shell程序就是放在一个文件中的一系列Linux命令和实用程序,在执行的时候,通过Linux一个接着一个地解释和执行每个命令. 下面我们来看一个简单的shell程序: 1.首先建立一个

Linux下添加shell脚本使得nginx日志每天定时切割压缩

Linux下添加shell脚本使得nginx日志每天定时切割压缩一 简介 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常时查日志,还是使用"GoAccess"等工具对日志进行分析都将会变得非常麻烦.因此,每天定时对nginx日志进行切割压缩就非常有必要了 二 实现 我的实现思路是每天晚上接近12点时定时执行脚本.其脚本内容就是将当前的nginx日志先按照当天日期进行重命名接着进行压缩,最后是新建空白的ngi

linux下的shell和脚本

1.各种Unix shell linux下的shell基本是从unix环境中的shell发展而来,贴一下wiki:其中我们常用的,可归类为Bourne Shell(/usr/bin/sh或/bin/sh).Bourne Again Shell(/bin/bash).C Shell(/usr/bin/csh).K Shell(/usr/bin/ksh).Shell for Root(/sbin/sh),等等 第一个Unix shell是由肯·汤普逊,仿效Multic上的shell所实现出来,称为s

[转] 关于linux下通过shell命令(自动)修改用户密码

关于linux下通过shell命令(自动)修改用户密码 2012-04-23 18:47:39 分类: 原文地址:关于linux下(自动)修改用户密码 作者:ubuntuer 本文章总结了如何手动.自动修改本地用户密码及远程机器的用户密码.对做自动化测试提供了自动修改用户密码的原理及方法. 修改本地用户密码:1.交互配置本地用户:以root用户: passwd <username>Changing password for user dewang.New UNIX password: BAD

编程实现linux下的shell

/************************************************************************* > File Name: Kris_shell.c > Author: KrisChou > Mail:[email protected] > Created Time: Thu 21 Aug 2014 04:31:55 PM CST **************************************************

Linux下的shell脚本编程-变量-算术表达式-判断语句-if分支语句

Linux下的shell脚本编程-变量-算术表达式-判断语句-if分支语句 一:实验环境 1):虚拟机 2):linux系统 二:实验目标 1): shell 基本语法 2):变量 3):表达式 4):判断语句 5): if表达式 三:实验脚本 第一块 一个简单的shell脚本程序 [[email protected] ~]# mkdir test [[email protected] test]# vim example1.sh #!/bin/bash #This is to show wha

2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出

有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccccccccccccccc eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ggggggggggggggggggggggggggggggggggggggg wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww zzzzzzzzzzzzzzzzz

Linux下使Shell 命令脱离终端在后台运行

在Linux下,如果你要执行的shell命令耗时特别长,并且:(1)你的网络不稳定,随时可能断网:或者(2)你在执行了shell命令之后必须要关闭终端软件(例如SecureCRT). 方法如下: nohup 你的shell命令 & (3)输入exit命令退出终端: (4)现在可以关闭你的终端软件了,等过足够的时间,让你的shell命令执行完了再上去看结果吧. 其中,nohup命令可以让你的shell命令忽略SIGHUP信号,即可以使之脱离终端运行:"&"可以让你的命令在

windows下建立文件的换行符^M导致linux下的shell脚本运行错误的解决方案

经常在windows下编辑的文件远程传送到linux下的时候每行末尾都会出现^M,这将导致shell脚本运行错误,主要是因为dos下的编辑器和linux下的编辑器对文件末行的回车符处理不一致导致. 主要解决如下: (1)在VI编辑器中将^M删除: 将VI编辑器切换到命令模式下,输入 :%s/^M//g (注意^M 不是shift ^ +M 而是ctrl+v 加上ctrl+m)  s///g是shell的替换命令 此命令必须是手动打上,不可复制. (2)dos2unix 命令 dos2unix f