文档章节

[Linux学习笔记] Linux常用命令 - 番外篇(Shell使用技巧)

LSantorini
 LSantorini
发布于 2015/11/01 18:00
字数 962
阅读 85
收藏 10
点赞 0
评论 0

系统关机命令: shutdown

命令名称: shutdown
所在路径: /usr/sbin/shutdown
执行权限: root
语法: shutdown
功能描述: 关机
示例: shutdown -h now 立即关机

系统重启命令: reboot

命令名称: reboot
所在路径: /usr/sbin/reboot
执行权限: root
语法: reboot
功能描述: 重启系统

首先明确Shell概念: 

    命令行和Shell这两个概念常常混淆。在很多不正式的场合,两个名词代表相同的含义,即命令解释器。然后命令行指的是供用户输入命令的界面,其本身只是接受输入,然后把命令传递给命令解释器。后者就是Shell。从本质上讲,Shell是一个程序,它在用户和操作系统之间提供了一个面向行的可交互接口。BASH是默认安装和使用的Shell。

查看当前发行版本可使用的Shell:

[santorini@localhost ~]$ cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh

以下将从通配符、命令别名、输入/输出重定向、管道、命令连接符、命令替换符等6部分Shell应用技巧:

通配符:

"*" 用于匹配文件名中任意长度的字符串;

"?" 只匹配一个字符;

"[]" 用于匹配所有出现在方括号内的字符;

"-" 使用短线指定一个字符集范围,所有包含在上下界之间的字符都会被匹配

示例:

[santorini@localhost test]$ ls
BaiBai.txt  error.msg  newdir   newdir.zip  original_copy2.txt      original_copy.txt  original_soft.txt  services  temp.txt   testfile
currentDir  ls.msg     newDir2  oc.txt      original_copy2.txt.zip  original_hard.txt  original.txt       temp.msg  TestDirCP  what.txt
[santorini@localhost test]$ ls *copy*
original_copy2.txt  original_copy2.txt.zip  original_copy.txt
[santorini@localhost test]$ ls *copy?.txt
original_copy2.txt
[santorini@localhost test]$ ls *copy[2]*
original_copy2.txt  original_copy2.txt.zip
[santorini@localhost test]$ ls original_[a-s]???.txt
original_copy.txt  original_hard.txt  original_soft.txt
[santorini@localhost test]$

命令别名定义:

查看别名信息: alias
删除别名: unalias copy
示例: alias copy=cp (单个命令)
      alias xrm="rm -r" (命令组合需用"")

输入/输出重定向:

同标准I/O一样,Shell对于每一个进程预先定义3个文件描述字(0, 1, 2). 分别对应于: 

    0(STDIN)标准输入; 

    1(STDOUT)标准输出; 

    2(STDERR)标准错误输出

标准输入: 键盘; 标准输出: 屏幕

输出重定向: 将标准输出转换为输出到文件或其他终端里. 

示例:

[santorini@localhost test]$ ls -l > temp.msg (清空原来temp.msg内容,然后重新写入)
[santorini@localhost test]$ date >> temp.msg (内容会追加到temp.msg文件最后)

管道: 将一个命令的输出传送给另一个命令,作为另一个命令的输入

使用方法: 命令1|命令2|命令3......|命令n

示例:

[santorini@localhost test]$ ls -l /etc/|more
[santorini@localhost test]$ ls -l|wall

命令连接符:

; 用;间隔个命令按顺序依次执行
&& 前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,它后面的命令才被执行
|| 前后命令的执行存在逻辑或关系,只有命令执行失败后,它后面的命令才被执行

命令替换符:

命令替换: 将一个命令的输出作为另一个命令的参数

格式: 命令1 `命令2`

与管道含义类似,但参数位置不同


bash应用技巧:

  1. 命令补齐: 命令补齐允许用户输入文件名起始的若干字母后,按<Tab>键补齐文件名.

  2. 命令历史: 命令历史允许用户浏览先前输入的命令并重新调用它们,用history命令可以显示命令列表,"![命令序号]"可执行对应序号的命令. 按方向键 ↑ 和 ↓ 可查找以前执行过的命令.

© 著作权归作者所有

共有 人打赏支持
LSantorini
粉丝 12
博文 34
码字总数 38213
作品 0
呼和浩特
程序员
嵌入式Linux学习基础规划篇

嵌入式的学习是需要日积月累的,是通过一点一滴的积累才能成为大神。下面来介绍一下嵌入式linux学习基础规划,目标是达到适应嵌入式应用软件开发、嵌入式系统开发或嵌入式驱动开发的基本素质...

创客学院 ⋅ 04/10 ⋅ 0

Linux程序培训课程,带你养成良好的Linux使用习惯

开始Linux的学习之后,请不要用Windows的工作方式来思考问题,因为它们之间确实有很大的不同,比如它们之间的内存管理机制、进程运行机制等都有很大不同,因此抛开Windows的那种思维,用全新...

长沙千锋 ⋅ 05/11 ⋅ 0

写给想学Linux系统管理的人

昨天看的一篇帖子,很受启发,今天把它发上来,希望对我们都有所帮助,也希望可以为我们指点明路!(如果你连这篇文章看完的耐心都没有的话,那么我希望你还是不要学linux了) linux太难用了...

happy_teemo ⋅ 04/21 ⋅ 0

linux 之 jailkit

需求:实验室来了批实习生,领导说,让他们用数据,但不能下载数据。然后就有了这篇学习笔记 Jailkit 可以建立一些只能使用特定命令的帐户 限制用户活动范围和权限 搭建安全的SSH多用户环境 ...

thinkando ⋅ 05/01 ⋅ 0

新手学Linux,linux运维之初识shell

接触linux是在大二的时候,那时候迷上了嵌入式linux,把电脑换成了linux系统,学习linux基础知识,学习linux命令,学习shell,泡论坛,就这样慢慢的平时工作学习都可以使用linux系统完成了。...

长沙千锋 ⋅ 04/12 ⋅ 0

[AliOS-Things 之 MQTT] 接入阿里云物联网套件

阿里开发 AliOS-Things 的主要动机,应该就是让别的商家利用 AliOS-Things 快速接入阿里云平台,所以我们可以直接利用 AliOS-Things 提供的 mqttapp 示例进行快速接入。 关于 AliOS 的系列博...

行者武松 ⋅ 06/12 ⋅ 0

学着学着Linux系统写篇心得

本学期对于linux系统的学习,和自己买的一本《linux就该这么学》这本书,让我对linux有了一定的了解。我知道了linux只是个内核。现在的linux操作系统,都是用这么一个内核,加上其它的应用程...

linuxprobe16 ⋅ 06/03 ⋅ 0

迁徙到 Linux:命令行环境

刚接触 Linux?在这篇教程中将学习如何轻松地在命令行列出、移动和编辑文件。 这是关于迁徙到 Linux 系列的第四篇文章了。如果您错过了之前的内容,可以回顾我们之前谈到的内容 新手之 Linu...

作者: John Bonesio ⋅ 04/20 ⋅ 0

Linux 系统中 sudo 命令的 10 个技巧

概览 表示 “superuser do”。 它允许已验证的用户以其他用户的身份来运行命令。其他用户可以是普通用户或者超级用户。然而,大部分时候我们用它来以提升的权限来运行命令。 命令与安全策略配...

作者: Pradeep Kumar ⋅ 04/19 ⋅ 0

测试人员的常用linux命令(持续更新)2018.03.26

我这里从操作目的出发说明linux命令,而不是将linux命令逐个说明用法、注意事项,毕竟我只是一个测试人员,而不是一个专职的linux运维人员,无须掌握所有的命令,掌握每个命令的所有用法; ...

Ye_Kwii ⋅ 06/20 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 19分钟前 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 46分钟前 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 53分钟前 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

容器之查看minikue的environment——minikube的环境信息

执行如下命令 mjduan@mjduandeMacBook-Pro:~/Docker % minikube docker-envexport DOCKER_TLS_VERIFY="1"export DOCKER_HOST="tcp://192.168.99.100:2376"export DOCKER_CERT_PATH="/U......

汉斯-冯-拉特 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部