linux 更换shell版本_shell 获取 linux版本 - CSDN
精华内容
参与话题
  • Linux系统之shell版本

    2018-04-08 11:08:58
    shell是通过用户操作系统的接口。Linux默认使用的shell是bashecho $SHELL #查看当前使用的shellcat /etc/shells #查看当前系统支持的shellbash --version #查看bash的版本号ksh --version #查看ksh的版本号...

    shell是通过用户操作系统的接口。Linux默认使用的shell是bash

    echo $SHELL  #查看当前使用的shell

    cat /etc/shells   #查看当前系统支持的shell

    bash --version   #查看bash的版本号

    ksh --version  #查看ksh的版本号

    展开全文
  • linux shell 的切换

    万次阅读 2012-09-08 22:36:47
    linuxshell的切换 如果需要修改默认的shell(一般是bash shell),以便使用的顺手。 先查看系统可用的shell种类 [oracle@zeng ~]$ chsh -l /bin/sh /bin/bash /sbin/nologin /bin/tcsh /bin/csh /bin/ksh ...
    
    
    如果需要修改默认的shell(一般是bash shell),以便使用的顺手。
    先查看系统可用的shell种类
    [oracle@zeng ~]$ chsh -l
    /bin/sh
    /bin/bash
    /sbin/nologin
    /bin/tcsh
    /bin/csh
    /bin/ksh
    修改当前的shell
    [oracle@zeng ~]$ chsh 
    Changing shell for oracle.
    Password: 
    New shell [/bin/bash]: /bin/ksh
    Shell changed.

    (或者 sudo usermod -s /bin/tcsh root)

    系统当前可用的shell存在在/etc/shells文件中。
    [oracle@zeng ~]$ cat /etc/shells
    /bin/sh    //早期unix版本上所使用的shell.
    /bin/bash  //很多linux版本默认的shell,也就是所谓的bash shell。
    /sbin/nologin //不能使用bash shell或者其他shell来登录系统的。
    /bin/tcsh  //增强版的csh.
    /bin/csh   //老版本的unix上流行的shell类型,近似c语言。
    /bin/ksh   //unix上流行的shell类型,向上完全兼容了Bourne Unix shell,并吸收了很多csh的特性。
    cat /etc/shells的结果与chsh -l是一致的。不过建议还是使用bash shell,因为他已经足够健壮,并且吸收了ksh,csh,sh的有用特性。
    shell的修改需要注销以后,下次登录系统的时候才有效。
    这里我又把ksh该成了bash sh,现在查看默认的登录shell。
    [oracle@zeng ~]$ cat /etc/passwd | grep -i oracle
    oracle:x:501:501::/home/oracle:/bin/bash
    对于那个/sbin/nologin,查看一下/etc/passwd可以发现存在很多这样的账户,这些账户是供系统中的服务使用的,这些账户不能登录是对于系统安全的一种保护。
    比如尝试使用apache这个账户登录系统。
    [root@zeng ~]# su - apache
    This account is currently not available.
    可以新建文件/etc/nologin.txt 来提示不能登录的信息的原因。
    [root@zeng ~]# vi /etc/nologin.txt  //写入下面这段话
    This is a system account,you don't allow login with it!
    [root@zeng ~]# su - apache        
    This is a system account,you don't allow login with it!

    展开全文
  • linux shell的切换

    千次阅读 2018-05-03 19:15:25
    linux shell的切换如果需要修改默认的shell(一般是bash shell),以便使用的顺手。先查看系统可用的shell种类[oracle@zeng ~]$ chsh -l/bin/sh/bin/bash/sbin/nologin/bin/tcsh/bin/csh/bin/ksh修改当前的shell...
    如果需要修改默认的shell(一般是bash shell),以便使用的顺手。
    先查看系统可用的shell种类
    [oracle@zeng ~]$ chsh -l
    /bin/sh
    /bin/bash
    /sbin/nologin
    /bin/tcsh
    /bin/csh
    /bin/ksh
    修改当前的shell
    [oracle@zeng ~]$ chsh 
    Changing shell for oracle.
    Password: 
    New shell [/bin/bash]: /bin/ksh
    Shell changed.
    系统当前可用的shell存在在/etc/shells文件中。
    [oracle@zeng ~]$ cat /etc/shells
    /bin/sh    //早期unix版本上所使用的shell.
    /bin/bash  //很多linux版本默认的shell,也就是所谓的bash shell。
    /sbin/nologin //不能使用bash shell或者其他shell来登录系统的。
    /bin/tcsh  //增强版的csh.
    /bin/csh   //老版本的unix上流行的shell类型,近似c语言。
    /bin/ksh   //unix上流行的shell类型,向上完全兼容了Bourne Unix shell,并吸收了很多csh的特性。
    cat /etc/shells的结果与chsh -l是一致的。不过建议还是使用bash shell,因为他已经足够健壮,并且吸收了ksh,csh,sh的有用特性。
    shell的修改需要注销以后,下次登录系统的时候才有效。
    这里我又把ksh该成了bash sh,现在查看默认的登录shell。
    [oracle@zeng ~]$ cat /etc/passwd | grep -i oracle
    oracle:x:501:501::/home/oracle:/bin/bash
    对于那个/sbin/nologin,查看一下/etc/passwd可以发现存在很多这样的账户,这些账户是供系统中的服务使用的,这些账户不能登录是对于系统安全的一种保护。
    比如尝试使用apache这个账户登录系统。
    [root@zeng ~]# su - apache
    This account is currently not available.
    可以新建文件/etc/nologin.txt 来提示不能登录的信息的原因。
    [root@zeng ~]# vi /etc/nologin.txt  //写入下面这段话
    This is a system account,you don't allow login with it!
    [root@zeng ~]# su - apache        
    This is a system account,you don't allow login with it!

    <script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script> 阅读(347) | 评论(0) | 转发(0) |
    评论热议
    展开全文
  • Linux终极shell-Z Shell--用强大的zsh & oh-my-zsh把Bash换掉

    万次阅读 多人点赞 2016-10-06 10:39:33
    大多数的Linux用户偏爱Bash,因为发行版通常默认的就是它。 Bash确实是不错的Shell,但仍有用很多不尽人意的地方,如自动补全的...1 zsh介绍1.1 Linux shellLinux/Unix提供了很多种Shell,为毛要这么多Shell?难道用
    CSDN GitHub
    Linux终极shell-Z Shell-用强大的zsh & oh-my-zsh把Bash换掉 AderXCoding/system/tools/zsh


    大多数的Linux用户偏爱Bash,因为发行版通常默认的就是它。
    Bash确实是不错的Shell,但仍有用很多不尽人意的地方,如自动补全的功能不够强大,定位较长路径不够方便,命令历史管理不够完善等。

    介绍使用zsh,功能十分强大..推荐给大家!

    1 zsh介绍


    1.1 Linux shell


    Linux/Unix提供了很多种Shell,为毛要这么多Shell?

    难道用来炒着吃么?那我问你,你同类型的衣服怎么有那么多件?花色,质地还不一样。写程序比买衣服复杂多了,而且程序员往往负责把复杂的事情搞简单,简单的事情搞复杂。牛程序员看到不爽的Shell,就会自己重新写一套,慢慢形成了一些标准,常用的Shell有这么几种,sh、bash、csh等,想知道你的系统有几种shell,可以通过以下命令查看:

    cat /etc/shells

    显示如下:

    <code>cat /etc/shells</code>

    1.2 zsh简介


    Zsh是一个Linux下强大的shell, 由于大多数Linux产品安装,以及默认使用bash shell, 但是丝毫不影响极客们对zsh的热衷, 几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum等包管理器进行安装

    Zsh具有以下主要功能

    • 开箱即用、可编程的命令行补全功能可以帮助用户输入各种参数以及选项

    • 在用户启动的所有shell中共享命令历史

    • 通过扩展的文件通配符,可以不利用外部命令达到find命令一般展开文件名

    • 改进的变量与数组处理

    • 在缓冲区中编辑多行命令

    • 多种兼容模式,例如使用/bin/sh运行时可以伪装成Bourne shell

    • 可以定制呈现形式的提示符;包括在屏幕右端显示信息,并在键入长命令时自动隐藏

    • 可加载的模块,提供其他各种支持:完整的TCP与Unix域套接字控制,FTP客户端与扩充过的数学函数

    • 完全可定制化

    1.3 zsh与oh-my-zsh终极配置


    之前是因为看到这篇文章:终极Shell——Zsh 才选择使用zsh,被它的自动完成、补全功能吸引了。

    <官网:www.zsh.org

    这也是“工欲善其事,必先利其器”系列文章。

    选择oh-my-zsh, oh-my-zsh是基于zsh的功能做了一个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果。

    在Github上找关于zsh的项目时发现的,试用了一下觉得很方便,不用像上面文章里面提到的那么复杂,配置一些插件的名称即可使用相应的功能。

    官网:https://github.com/robbyrussell/oh-my-zsh

    评价:https://github.com/robbyrussell/oh-my-zsh/wiki/Testimonials

    2 安装zsh


    2.1 安装zsh


    对于一般的Ubuntu系统,配置好正确的源之后,就能直接键入以下命令安装:

    sudo apt-get install zsh

    2.2 配置zsh


    zsh的配置是一门大学问,这里不赘述,直接给出一个配置文件,大家可以下载后放入zsh配置文档直接使用。(我的一个法国朋友手配的,相当顺手)

    把.zshrc拷贝到相应用户的home目录即可
    (也可以把你的bash的配置文件(~/.bash_prorile或者~/.profile等)给拷贝到zsh的配置文件~/.zshrc里,因为zsh兼容bash)

    2.3 取代bash,设为默认shell


    sudo usermod -s /bin/zsh username

    或者

    chsh -s /bin/zsh
    chsh -s `which zsh`

    如果要切换回去bash:

    chsh -s /bin/bash

    当然你实在不愿意把zsh当成默认的shell, 而又想使用它, 那么你可以每次进入是都使用zsh进入, 而输入exit退出

    zsh的使用

    2.4 安装oh-my-zsh


    直接用zsh会很蛋疼,因为zsh功能很强大但是太复杂,所以需要oh-my-zsh来将它简单化

    直接用git从github上面下载包

    git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

    备份已有的zshrc, 替换zshrc

    cp ~/.zshrc ~/.zshrc.orig
    cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

    直接使用脚本安装

    cd oh-my-zsh/tools
    ./install.sh

    你可以直接直接使用如下命令安装

    curl

    sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

    wget

    sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

    其本质就是下载并执行了github上的install.sh脚本, 该脚本位于oh-my-zsh/tools/install.sh

    配置主题

    oh-my-zsh集成了大量的主题, 位于oh-my-zsh/theme

    配置主题, 可以通过修改~/.zshrc中的环境变量ZSH_THEME来完成

    ZSH_THEME="agnoster" # (this is one of the fancy ones)

    如果你觉得主题太多你可以选择使用随机模式, 来由系统随机选择

    ZSH_THEME="random" # (...please let it be pie... please be some pie..)

    zsh随机主题

    详细的主题信息, 可以参见zsh主题介绍

    配置插件

    修改~/.zshrcplugins

    plugins=(git bundler osx rake ruby)

    详细的插件信息, 可以参见zsh插件Plugins介绍

    更新oh-my-zsh

    默认情况下, 您将被提示检查每几周的升级. 如果你想我ZSH自动升级本身没有提示你, 修改`~/.zshrc

    disable_update_prompt = true

    禁用自动升级, 修改~/.zshrc

    disable_auto_update = true

    当然你也可以选择手动更新

    如果你想在任何时间点升级(也许有人刚刚发布了一个新的插件,你不想等待一个星期?)你只需要运行:

    upgrade_oh_my_zsh

    卸载oh-my-zsh

    如果你想卸载oh-my-zsh, 只需要执行uninstall_oh_my_zsh zsh, 从命令行运行. 这将删除本身和恢复你以前的bash或者zsh配置.

    uninstall_oh_my_zsh zsh

    此外, 更多任性的功能, 速度来感受吧

    1. 兼容 bash,原来使用 bash 的兄弟切换过来毫无压力,该咋用咋用。

    2. 强大的历史纪录功能,输入 grep 然后用上下箭头可以翻阅你执行的所有 grep 命令。

    3. 智能拼写纠正,输入gtep mactalk * -R,系统会提示:zsh: correct ‘gtep’ to ‘grep’ [nyae]? 比妹纸贴心吧,她们向来都是让你猜的……

    4. 各种补全:路径补全、命令补全,命令参数补全,插件内容补全等等。触发补全只需要按一下或两下 tab 键,补全项可以使用 ctrl+n/p/f/b上下左右切换。比如你想杀掉 java 的进程,只需要输入 kill java + tab键,如果只有一个 java 进程,zsh 会自动替换为进程的 pid,如果有多个则会出现选择项供你选择。ssh + 空格 + 两个tab键,zsh会列出所有访问过的主机和用户名进行补全

    5. 智能跳转,安装了autojump之后,zsh 会自动记录你访问过的目录,通过 j + 目录名 可以直接进行目录跳转,而且目录名支持模糊匹配和自动补全,例如你访问过hadoop-1.0.0目录,输入j hado 即可正确跳转。j –stat 可以看你的历史路径库。

    6. 目录浏览和跳转:输入 d,即可列出你在这个会话里访问的目录列表,输入列表前的序号,即可直接跳转。

    7. 在当前目录下输入 .. 或 … ,或直接输入当前目录名都可以跳转,你甚至不再需要输入 cd 命令了。

    8. 通配符搜索:ls -l */.sh,可以递归显示当前目录下的 shell 文件,文件少时可以代替 find,文件太多就歇菜了。

    9. 更强的别名

    10. 插件支持

    展开全文
  • linux更换shell外壳zsh

    2019-07-23 00:53:32
    linux更换shell外壳zsh linux-外壳内核与shell的关系 内核处于外壳之中,通过外壳与shell(命令行)交互 外壳可以更换 ########################################################################...
  • Linux中的shell如何切换

    千次阅读 2018-12-23 18:24:34
    Linux中默认使用/bin/bash,在用户创建时,会自动给用户创建用户默认的shell。 root :x :0 :0 :root :/root :/bin/bash 注册用户名:密码:UID:GID:用户信息:用户主目录:命令解释程序 如上,用于默认的shell...
  • linux 更改shell

    千次阅读 2012-02-06 11:56:22
    1.查看当前使用的shell类型 # echo $SHELL /usr/bin/bsh 2.改变test用户登陆的默认shell $ chsh test /usr/bin/ksh 重新登陆后生效 或者使用root用户直接修改/etc/passwd文件 将 test:!:1002:1001::/home/...
  • linux中的shell简介

    2018-12-25 10:47:39
    Shelllinux的一外壳,它包在linux内核的外面,为用户和内核之间的交互提供了一个接口 当用户下达指令给操作系统的时候,实际上是把指令告诉shell,经过shell解释,处理后让内核做出相应的动作 系统的回应和输出的信息...
  • linux更换php版本(编译安装)

    千次阅读 2018-01-26 17:40:38
    事前准备:把你以前用的好好的php版本删掉,一般是在/usr/local/php,把这个文件夹删掉,然后把/bin/php这个指令删掉 1. 下载一个你需要的php版本,而且能够用 configure安装的。我们这里举例php7.0.27版本的压缩包...
  • Linuxshell修改文件内容

    万次阅读 2012-02-29 16:57:28
    sed -i 's/abc/xxx/g' file abc修改前的字符串 xxx是修改后的字符串 file是要被修改的文件 例如: 我有一个文件是map_server #!/bin/bash # chkconfig: 2345 10 90 ...DIRECTORY=xxxxxx
  • shell 版本

    千次阅读 2012-08-28 16:44:52
    凡是使用 *INX 的人, 不论是作为 login shell 还是编程,多少都要接触到 Shell。 经过多年的发展, Shell 的种类繁多。除了我们熟悉的 sh,ksh,csh, bash ... 外, 还有各种 free 或商业版本如: RC, ES, EShell, ...
  • sed -i 's/被替换的内容/要替换成的内容/g' file #-i为直接修改并保存   参考: http://blog.sina.com.cn/s/blog_7211cb9201019hgd.html ...http://wangchujiang.com/linux-command/c/sed.html...
  • linux shell 字体颜色

    千次阅读 2014-04-28 14:48:46
    echo -e "\033[32;49;1m [DONE] \033[39;49;0m" 输出结果 :[DONE] ...########################### ...文本终端的颜色可以使用“ANSI非常规字符序列”来生成。...以上命令设置背景成为蓝色...
  • 嵌入式linux常用shell指令  注:以上是较常用的指令的简单用法,在此记录备用,更多指令及详细用法:http://www.ourlinux.net 1,mkdir 作用:创建文件夹 用法:mkdir foldername
  • Linux Shell自定义快捷指令前一阵子更换Linux衍生版的频率有点高 -_-|||,各个衍生版的Linux Shell命令还是又一些差异的,例如有的衍生版会有ll,la等等这些命令,其实这些东西基本都是在Shell的初始化脚本中做的。...
  • 然后使用java -version 和 javac -version 发现版本还是老版本,死活没有使用我新指定的。 中间各种排查,这里就不废话了,下面是文件的根源和解决方法: 使用which java 和 which javac 分别可以看到 [r...
  • 从12.04升级到了16.04版本。导致很多不兼容的问题,以下就说说shell脚本不兼容的问题 出现了诸如: “[: XXXX: unexpected operator” 问题 解决方案: 将Ubuntu解释器修改默认连接到bash sudo dpkg-...
  • linux 更改gcc版本

    2018-10-19 15:35:00
    安装了gcc-3.4.x版本和gcc-4.2.x后,如何使得使用特定的gcc版本 改成gcc-3.4版本 rm /usr/bin/gcc ln -s /usr/bin/gcc-3.4 /usr/bin/gcc 改成gcc-4.2版本 rm /usr/bin/gcc ln -s /usr/bin/gcc-4.2 /usr/bin/gcc ...
  • Linux默认shell—bash shell的优点

    千次阅读 2015-08-23 22:35:22
    Linux操作系统中,用户没有办法跟内核直接交流,内核能够控制硬件的操作,并且向外提供系统调用接口,而在系统调用之上,可以有公用函数库,可以直接被应用程序调用,同时也可以有我们的shellshell的概念很...
  • Linux Bash Shell编程(一):Shell概述与Hello World实现 Shell 概述   Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止并...
1 2 3 4 5 ... 20
收藏数 13,623
精华内容 5,449
关键字:

linux 更换shell版本