资讯专栏INFORMATION COLUMN

Linux 下Shell的使用

superw / 891人阅读

摘要:基本参数系统提供的位置改变用户的环境改变普通用户的环境查看所有用户的环境变量环境变量查看环境变量常用环境变量介绍显示当前用户登录名显示当前用户的用户号显示当前用户的登陆显示当前用户的宿主目录显示当前用户所在的目录表示当前用户的命令搜索路径显

1、shell基本参数

#cat /etc/shells 系统提供的shell位置

#bsh、csh、ksh、bash 改变root用户的shell环境

#chsh  改变普通用户的shell环境

#more /etc/passwd 查看所有用户的shell环境

2、shell变量

2.1、环境变量

#set | more  查看环境变量

2.2、常用环境变量介绍

#echo $USER 显示当前用户登录名

#echo $UID 显示当前用户的用户号

#echo $SHELL 显示当前用户的登陆Shell

#echo $HOME 显示当前用户的宿主目录

#echo $PWD 显示当前用户所在的目录

#echo $PATH 表示当前用户的命令搜索路径

#echo $PS1 显示当前用户的主提示符

#echo $PS2 显示当前用户的辅助提示符

2.3、环境变量配置文件

#ls -l /etc/bashrc  /etc/profile  显示环境变量的全局配置文件

"bashrc"文件用于定义全局的函数和别名,文件的内容除了为系统中所有登录用户提供设置外,也适用于非交互Shell和非登录Shell

"profile"文件负责设置全局的环境,并应用于所有的用户登录Shell

#ls -l /home/username/.bash_profile   /home/username/.bashrc  显示用户username的配置文件

#cd /etc/skel  进入初始的用户配置文件

#cp .bash_logout .bash_profile .bashrc .emacs .gtkrc  /home/username 复制用户的初始配置文件到用户username的宿主目录下(当用户对自己的配置文件设置出错时使用)

2.4、位置变量

格式:$n n从1到9

单引号(""):不进行任何的变量替换,保持字符串的原始值

双引号(""):以变量的值来替换,并作为字符串的一部分

反引号(``):用于进行命令替换,引号中命令的执行结果将替换命令本身作为字符串

2.5、预定义变量

#echo $# 表示位置参数的变量

#echo $* 表示位置参数的内容

#echo $? 表示命令执行后返回的状态,用于检查一个命令的执行是否正确;在Linux中,命令退出状态为0表示命令正确执行,任何非0值表示命令执行错误

#echo $$ 表示当前进程的进程号

#echo $! 表示后台运行的最后一个进程号

#echo $0 表示当前执行的进程名

2.6、用户自定义变量

#变量名=变量值 DAY=Sunday

#echo $变量名  echo $DAY

#unset -f -v name

2.7、Bash常用功能

#history  历史命令查看

#history -c 命令历史清除

2.8、命令别名

#alias 命令="新命令"   alias ll="ls -l" 使用ll别名更换ls -l命令

#unalias -a name  取消命令别名

#cd /etc/profile.d/ 查看系统别名定义文件

3、管道与重定向

3.1、输入重定向

#wc /etc/passwd  计算文件/etc/passwd中的字符数、单词数和行数

#wc < /etc/passwd  将"/etc/passwd"文件中的内容输入重定向到WC命令中

3.2、输出重定向

#cat /etc/passwd  >file  将/ect/passwd下的内容覆盖到file中

#cat /etc/passwd  >>file  将/etc/passwd下的内容追加到file中

#aaa 2>errfile 将aaa命令显示的错误结果输入到errfile中

#ls afile bfile &>allfile 将标准输出和错误输出重定向到同一个文件

#ls /etc/passwd/ | head -5 显示passwd中前5行内容

4、Shell脚本

#ls -l /etc/init.d/目录中存在着数量相当多的系统服务启动程序,这些程序全部都是Shell脚本文件,可以使用file命令查询这些文件的类型

#bash *.sh  使用shell命令执行脚本

#. /home/techer/filename.sh 执行filename.sh
shell里面比较大小
#!/bin/bash

if [ $1 -gt $2 ]

then echo "$1>$2"

else echo "$2>$1"

fi

# 数字判断一些命令

#-gt是大于的意思

#-lt是小于

#-eq是等于

#-ne是不等于

#-ge是大于等于

#le是小于等于  

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/9723.html

相关文章

  • 看完这篇Linux基本操作就会了

    摘要:前言只有光头才能变强这个学期开了的课程了,授课的老师也是比较负责任的一位。开源,可被定制,开放,多用户的网络操作系统。三常用的命令上面说了一堆的基础概念,这是给我们敲命令之前打了一点基础,在敲命令的同时也会遇到一些比较重要的知识点的。 前言 只有光头才能变强 这个学期开了Linux的课程了,授课的老师也是比较负责任的一位。总的来说也算是比较系统地学习了一下Linux了~~~ 本文章主要...

    AZmake 评论0 收藏0
  • 看完这篇Linux基本操作就会了

    摘要:前言只有光头才能变强这个学期开了的课程了,授课的老师也是比较负责任的一位。开源,可被定制,开放,多用户的网络操作系统。三常用的命令上面说了一堆的基础概念,这是给我们敲命令之前打了一点基础,在敲命令的同时也会遇到一些比较重要的知识点的。 前言 只有光头才能变强 这个学期开了Linux的课程了,授课的老师也是比较负责任的一位。总的来说也算是比较系统地学习了一下Linux了~~~ 本文章主要...

    Faremax 评论0 收藏0
  • Linux运维:Shell脚本(1)

    摘要:且脚本文件的后缀名通常以结尾。参数个数不状态码为的注意点判断命令,脚本或函数等程序是否执行成功。常用于源码编译安装软件,在每个步骤获取的状态码来判断命令执行是否成功。若是在脚本中调用执行数字,则会返回这个数字给变量。 将自己之前的shell脚本笔记搬到segmentfault,顺带复习一下shell基础。笔记大多是读时所记录,推荐想学shell的可以去看看。2019-1-26 系列笔记...

    187J3X1 评论0 收藏0
  • Linux运维:Shell脚本(1)

    摘要:且脚本文件的后缀名通常以结尾。参数个数不状态码为的注意点判断命令,脚本或函数等程序是否执行成功。常用于源码编译安装软件,在每个步骤获取的状态码来判断命令执行是否成功。若是在脚本中调用执行数字,则会返回这个数字给变量。 将自己之前的shell脚本笔记搬到segmentfault,顺带复习一下shell基础。笔记大多是读时所记录,推荐想学shell的可以去看看。2019-1-26 系列笔记...

    张金宝 评论0 收藏0
  • Linux_《Linux命令行与shell脚本编程大全》第三章学习总结

    摘要:命令行与脚本编程大全第三版第三章学习总结第三章基本的命令本章内容使用手册浏览文件系统文件和目录列表管理文件和目录查看文件内容启动能提供对系统的交互式访问。重命名文件在中,重命名文件称为移动。 时间:2017年04月06日 说明:本文部分内容均摘取自书籍《Linux命令行与shell脚本编程大全》,版权归原作者所有。《Linux命令行与shell脚本编程大全》(第三版)第三章学习总结 第...

    sugarmo 评论0 收藏1
  • Linux”不等同于Linux内核:构建Linux系统8个软件包

    摘要:发行版并不仅仅是内核。它是操作系统的一部分,并且通常被称为。内核是整个系统的核心。例如,和包含了文件管理器而则包含了文件管理器。例如,如果你在中运行下的文件管理器,它会显得不协调并要求你安装一系列的库,而且启动时它或许会后在台运行桌面进程。 showImg(http://segmentfault.com/img/bVbMtv); Linux发行版并不仅仅是Linux内核。所有的Linu...

    wind3110991 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<