shell介绍 、命令历史、命令补全和别名 、 通配符、输入输出重定向

从零搭建Hadoop+Hive+Spark伪分布式环境:大数据开发实战指南 大数据技术栈的核心在于解决海量数据的存储与计算问题。其基本原理是通过分布式系统架构,将数据分散存储在多台机器上,并利用并行计算框架进行处理,从而实现高效、可扩展的数据分析能力。这一技术价值在于能够处理传统数据库难以应对的PB级数据,为数据驱动决策提供支撑。典型的应用场景包括用户行为分析、日志处理和商业智能报表等。本文聚焦于Hadoop、Hive和SparkSQL的本地伪分布式环境搭建,通过手把手实战,详细讲解HDFS、YARN和MapReduce的配置与集成,并演示如何利用Hive进行数据仓库操作以及通过S 阅读详情

Shell介绍

  • shell是一个命令解释器,提供用户和机器之间的交互
  • 支持特定语法,比如逻辑判断、循环(if for whell)
  • 每个用户都可以有自己特定的shell
  • CentOS7默认shell为bash(Bourne Agin Shell)
  • 还有zsh、ksh等

命令历史

  • history命令
  • bash_history
  • 最大1000条
  • 变量HISTSIZE
  • /etc/profile中修改
  • HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
  • 永久保存 chattr +a ~/.bash_history
  • !!
  • !n
  • !word

1 .history 命令

显示历史命令

[root@localhost ~]# history
    1  mkdir /tmp/222
    2  rmdir /tmp/111/ /tmp/222/
	.
	.
	.
   995  echo $?
   996  ls /usr/local/apache2/
   997  init 0
   998  ls ./.bash_history
   999  vim ./.bash_history
   1000  history


3. .bash_history 文件

历史命令保存在用户家目录的.bash_history文件中


4. history –c

清空内存中的历史记录;不会清除.bash_history文件中的记录。

[root@localhost ~]# history -c
[root@localhost ~]# history
    2  history
[root@localhost ~]# head -10 .bash_history
mkdir /tmp/222
rmdir /tmp/111/ /tmp/222/
ls
lsls tmp
ls /tmp
mkdir /tmp/111
mkdir /tmp/222
ls
ls /tmp
rmdir /tmp/111/ /tmp/222/

  • 只有当用户正常退出当前shell时,在当前shell中运行的命令才会保存至.bash_history文件中。

5. 定义HISTSIZE值,在配置文件/etc/profile中修改

[root@localhost ~]# vim /etc/profile
搜索HISTSIZE 默认值是1000,可以修改成5000条,然后按esc,:wq 保存退出。
然后运行命令:source /etc/profile
[root@localhost ~]# source /etc/profile
[root@localhost ~]# echo $HISTSIZE
5000


6. 定义格式:HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

在配置文件/etc/profile中修改,在HISTSIZE=5000下面,添加一行HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
输入图片说明

[root@localhost ~]# vim /etc/profile
[root@localhost ~]# source /etc/profile
[root@localhost ~]# history
    2  2017/11/15 21:49:44 history
    3  2017/11/15 21:50:20 head -10 .bash_history
    4  2017/11/15 21:55:05 vim /etc/profile
    5  2017/11/15 21:57:52 source /etc/prfile
    6  2017/11/15 21:58:04 source /etc/profile
    7* 2017/11/15 21:58:16 echo $HIST
    8  2017/11/15 22:01:02 vim /etc/profile
    9  2017/11/15 22:03:49 history
   10  2017/11/15 22:03:57 source /etc/profile
   11  2017/11/15 22:03:59 history
   12  2017/11/15 22:04:20 vim /etc/profile
   13  2017/11/15 22:05:14 source /etc/profile
   14  2017/11/15 22:05:17 history


6. 永久保存 chattr +a ~/.bash_history

  • 给.bash_history加一个a权限,不能删除,可以追加
[root@localhost ~]# chattr +a .bash_history

7. !!:连续两个!表示执行上一条命令。

[root@localhost ~]# pwd
/root
[root@localhost ~]# !!
pwd
/root


8. !n:这里的n是数字,表示执行命令历史中的第n条命令。

[root@localhost ~]# history
    2  2017/11/15 21:49:44 history
    3  2017/11/15 21:50:20 head -10 .bash_history
    4  2017/11/15 21:55:05 vim /etc/profile
    5  2017/11/15 21:57:52 source /etc/prfile
    6  2017/11/15 21:58:04 source /etc/profile
    7* 2017/11/15 21:58:16 echo $HIST
    8  2017/11/15 22:01:02 vim /etc/profile
    9  2017/11/15 22:03:49 history
   10  2017/11/15 22:03:57 source /etc/profile
   11  2017/11/15 22:03:59 history
   12  2017/11/15 22:04:20 vim /etc/profile
   13  2017/11/15 22:05:14 source /etc/profile
   14  2017/11/15 22:05:17 history
   15  2017/11/15 22:07:56 chattr +a .bash_history
   16  2017/11/15 22:08:10 vim .bash_history
   17  2017/11/15 22:09:25 pwd
   18  2017/11/15 22:10:31 history
[root@localhost ~]# !17
pwd
/root


9. !字符串: !pw表示执行命令历史中最近一次以pw开头的命令。

[root@localhost ~]# !pw
pwd
/root


命令和文件名补全

  • tab键,敲一下,敲两下
  • 参数补全,安装bash-completion
  • alias别名给命令重新起个名字
  • 各用户都有自己配置别名的文件 ~/.bashrc
  • ls /etc/profile.d/
  • 自定义的alias放到~/.bashrc

  1. 按tab键可以帮我们补全一个指令,一个路径或者一个文件名
  2. Centos6中tab键只能补全本身;Centos7中tab键支持命令参数补全,需要安装一个包bash-completion
[root@localhost ~]# yum install -y bash-completion
重启服务器 reboot


别名

  1. Alias也是bash所特有的功能之一;直接执行alias命令会看到目前系统预设的所有别名。
[root@localhost ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'


  1. 用户家目录下.bashrc文件中只配置了几个alias
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi


  1. 其他的很多别名在/etc/profile.d/目录下,有很多.sh文件中定义;
[root@localhost ~]# ls /etc/profile.d/
256term.csh         colorgrep.csh  colorls.sh  less.csh  vim.sh
256term.sh          colorgrep.sh   lang.csh    less.sh   which2.csh
bash_completion.sh  colorls.csh    lang.sh     vim.csh   which2.sh

root@linux-128 ~]# vim /etc/profile.d/colorls.sh 

输入图片说明


通配符

  • ls *.txt
  • ls ?.txt
  • ls [0-9].txt
  • ls {1,2}.txt

*用来匹配零个或多个任意字符

[root@localhost ~]# ls *txt
11.txt  1a.txt  23.txt  321.txt  ab.txt  a.txt  b.txt  工号.txt
[root@localhost ~]# ls 1*
11.txt  11.txt.bak  12  1a.txt  1.log
123:
[root@localhost ~]# ls *1*
11.txt  11.txt.bak  12  1a.txt  1.log  321.txt  321.txt.bak
123:
[root@localhost ~]# ls *a*
11.txt.bak  1a.txt  321.txt.bak  ab.txt  anaconda-ks.cfg  a.txt


?用来匹配一个字符

[root@localhost ~]# ls ?.txt
a.txt  b.txt


ls [0-3].txt [ ]里面表示范围,只要是在这个范围内都列出来

[root@localhost ~]# ls [0-3].txt
1.txt  2.txt
[root@localhost ~]# ls [a-z].txt
a.txt  b.txt
[root@localhost ~]# ls [0-9a-zA-Z].txt
1.txt  2.txt  a.txt  b.txt


ls {1,2}.txt { }花括号里面要用“,”隔开,1.txt或者2.txt;

[root@localhost ~]# ls {1,2}.txt
1.txt  2.txt

[root@localhost ~]# ls {1,2,3}.txt
ls: 无法访问3.txt: 没有那个文件或目录
1.txt  2.txt


输入输出重定向

  • cat 1.txt >2.txt
  • cat 1.txt >> 2.txt
  • ls aaa.txt 2>err
  • ls aaa.txt 2>>err
  • wc -l < 1.txt
  • command >1.txt 2>&1

>输出重定向

[root@localhost ~]# echo "112233">1.txt
[root@linux-128 ~]# cat 1.txt
112233


>>追加重定向

[root@localhost ~]# echo "aabbcc">>1.txt
[root@localhost ~]# cat 1.txt
112233
Aabbcc


2> 错误重定向

[root@localhost ~]# ls aaa.txt 2>2.txt
[root@localhost ~]# cat 2.txt
ls: 无法访问aaa.txt: 没有那个文件或目录


2>>错误追加重定向

[root@localhost ~]# ls aaa.txt 2>>2.txt
[root@localhost ~]# cat 2.txt
ls: 无法访问aaa.txt: 没有那个文件或目录
ls: 无法访问aaa.txt: 没有那个文件或目录


&> == >+2>正确和错误重定向

[root@localhost ~]# ls 1.txt aaa.txt &> 1.txt
[root@localhost ~]# cat 1.txt
ls: 无法访问aaa.txt: 没有那个文件或目录
1.txt


&>>

[root@localhost ~]# ls 1.txt aaa.txt &>> 1.txt
[root@localhost ~]# cat 1.txt
ls: 无法访问aaa.txt: 没有那个文件或目录
1.txt
ls: 无法访问aaa.txt: 没有那个文件或目录
1.txt


可以将正确输出到一个文件中,错误输入到另一个文件中,也可以同时输出到一个文件中(用&>)。

[root@localhost ~]# ls 1.txt aaa.txt > 1.txt 2>2.txt
 [root@localhost ~]# cat 1.txt
1.txt
[root@localhost ~]# cat 2.txt
ls: 无法访问aaa.txt: 没有那个文件或目录


< 输入重定向

[root@localhost ~]# wc -l < /etc/passwd
27
左边只能是命令,不能是文件。
自学篇--使用keil5.23创建一个stm32工程并编译(固件包自带版本) 之前在本科学习阶段学习过一点51单片机的知识,可是因为基本没有实践过几次现在已经完全忘记了。。前几天老师突然丢给我几个板子说让我把程序编译、烧写环境装好,当时我就震惊了,不过经过三四天的自我摸索,之后参考他人的学习经验,现在已经基本能处理这个问题了,所以为了方便后面的学者,主要也是为了把自己这几天的学习成果记录一下,我在这里把这个过程写下来。(因为刚刚接触,很多原理性的东西都还不懂,只是一个操作步 阅读详情

相关推荐

IB网络下不同租户业务隔离方案

IB(InfiniBand)网络隔离可以在不同的通信模式下实现,其中包括 IPoIB(IP over InfiniBand)通信模式。在 IPoIB 模式下,InfiniBand 网络可以承载 IP 数据包,使得基于 IP 的应用程序能够在 InfiniBand 网络上进行通信。在这种情况下,IB 网络隔离通常指通过配置 Partition Key(PKey)来实现不同的租户或应用程序之间的网络隔离。然而,IB 网络隔离并不仅限于 IPoIB 模式。

guganly的专栏 1528

shell基础(2)

需要等当前用户注销之后,缓存中的命令才会写入~/.bash_history文件.如果我们需要把内存中的命令直接写入~./bash_history文件,而不等用户注销时再写入,就需要使用"-w"选项了.history-w#把缓存中的历史命令直接写入~/.bash_history这时再去查询~/.bash_history文件,历史命令就和history命令查询的一致了.如果需要清空历史命令,只需要执行history-c。命令别名命令格式alias#查询命令的别名。......

博客 416

51单片机自学笔记(六)数码管动态扫描与消影实战

本文详细解析了51单片机数码管动态扫描原理与视觉暂留效应,通过硬件电路分析和C语言代码实战,重点介绍了三种数码管消影技术(段选清零法、位选屏蔽法、硬件消影法),解决了显示重影问题,并提供了常见问题调试技巧与定时器中断优化方案,帮助开发者掌握稳定的多位数码管显示技术。

y9z0a1b的博客 1105

shell 变量加1的11种方法

#!/bin/bash count=0 while : do if [ $RANDOM != 32767 ] then #count=$((count+1)) #count=$[count+1] #count=$(expr $count + 1) #let "count+=1" #((count+=1))

qq_15742255的博客 7271

高通跃龙QCS6490部署yolov11_obb实战:QNN SDK工具链全解析与避坑指南

本文详细解析了在高通跃龙QCS6490平台上部署yolov11_obb模型的实战过程,重点介绍了QNN SDK工具链的使用与优化技巧。从环境配置、模型转换到性能调优,提供了全面的避坑指南和DSP加速配置建议,帮助开发者高效实现旋转框检测任务在边缘设备上的部署。

weixin_29232121的博客 305

VPI与Matlab协同仿真:相干光通信接收端DSP算法全解析

本文详细解析了如何利用VPI与Matlab协同仿真,构建完整的相干光通信接收端DSP算法处理闭环。重点介绍了从VPI导出数据后,在Matlab中实现时钟恢复、偏振解复用和载波相位估计等核心算法的步骤与原理,并阐述了如何通过误码率计算完成仿真验证,为相干光通信系统算法研究与验证提供了高效实用的方法。

ll5678的博客 611

shell中的计算

1.运算方式及运算符号及意义 2.SHELL中常用的运算命令 3.利用(())进行赋值运算 echo $((1+1)) westos=3 echo $((westos+=1)) for ((i=1;i<10;i++)) do ((j+=i)) echo $j done 实验: <1>“1+1”的五种运算命令 -1-使用$[] [root@shenzhen mnt]# e...

qq_39376481的博客 6416

ENSP实验一:防火墙基础配置

配置client(内网)、FTP Server(外网)的IP地址。进入防火墙,输入密码:默认为admin@123。

Carohuan的博客 1万+

shell 整型变量自增(加1)的几种方法

#!/bin/sh a=1 a=$(($a+1)) a=$[$a+1] a=`expr $a + 1` let a++ let a+=1 ((a++)) echo $a 输出 : 6

zhaojinjia的专栏 4万+

SolidWorks的GB库(钢型材库,包括铝型材、铝管等结构)安装及使用教程(生成铝型材为例)

1、GB库的下载 2、GB库的安装教程 3、GB库的使用教程

树下等苹果的博客 12万+

麒麟操作系统安装达梦数据库ARM版

Linux安装达梦数据库ARM版

运维@小兵的博客 8770

shell分割和清理tomcat日志,通过mtime筛选文件时间

find ./name “*data*” -mtime 1 当前目录下文件名包含data,而且修改时间在1天前当天的,也就是24小时以上,48小时以内。find ./ -name “*data*” -mtime +1 当前目录下文件名包含data,而且修改时间在48小时以上的。find ./name “*data*” -mtime -1 当前目录下文件名包含data,而且修改时间在24小时以内的。mtime ---modify time,改变文件内容的时间。通过crontab设置。

大宇进阶之路的博客 1466

最近腾讯手机管家a.gray.Bulimia.a病毒提示决解方案

仅供参考(个人问题已解决 未申诉) 用户反馈app提示病毒图如下 然后下载生产包去https://www.virustotal.com/gui/这个网站去检测 果真提示病毒 重新加版本 打了个包 未加固 检测没问有问题 同一个包用360加固之后再检测有问题 ,但是没有a.gray.Bulimia.a报病毒 然后再用应用宝加固检测也没问题,个人以前都是用360加固的,很尴尬啊 最重要的一点的是,更新一个版本号,其余的啥都没改,更新替换手机的原来版本app,腾讯手机.

村头那抠脚大叔的专栏 3万+

shell介绍、命令历史、命令补全和别名、通配符和输入输出重定向

一、什么是shell 1、shell是一个命令解释器,提供用户和机器之间的交互 2、支持特定语法,比如逻辑判断、循环 3、每个用户都可以有自己特定的shell 4、CentOS7默认shell为bash(Bourne Agin Shell)bash它是sh(Bourne Shell)的增强版本,Bourn Shell 是最早行起来的一个shell,创始人叫Steven Bourne,为

mojianbin的博客 613

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向

笔记内容:l8.1 shell介绍l8.2 命令历史l8.3 命令补全和别名l8.4 通配符l8.5 输入输出重定向笔记日期:2017.8.118.1 shell介绍Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。shell类似于DOS下的command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。Linux下的...

weixin_34194317的博客 182

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

shell介绍 命令历史 命令补全和别名 通配符 输入输出重定向

1,shell介绍。    shell是一个命令解释器,它提供用户和机器之间的交互。    支持特定语法,比如逻辑判断循环。if,else,while,for....    每个用户都有自己特定的shell。    Centos7默认的shell是bash(Bourne Again Shell)  。     还有zsh、ksh等。2,命令历史。    我们执行过的命令linux都会记录,预设可以...

wanli245的博客 332

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

shell介绍 、命令历史、命令补全和别名 、通配符 、输入输出重定向

8.1 shell介绍shell是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断、循环 每个用户都可以有自己特定的shell CentOS7默认shell为bash(Bourne Agin Shell) 还有zsh、ksh等8.2 命令历史history命令    //查看之前的命令.bash_history   //cat /root/.bash_history  该文件存...

wangshuang_2013的博客 458

23. shell介绍、历史 命令补全和别名 通配符 输入输出重定向

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 8.1 shell介绍: shell是一个命令解释器,提供用户与机器之间的交交互 支持特定语法,不如逻辑变换、循环 每个用户都可以有自己特定的shell cento...

chym2015的博客 166

Linux centos7 shell 介绍、 命令历史、命令补全和别名、通配符、输入输出重定向...

一、shell介绍 shell脚本是日常Linux系统管理工作中必不可少的,不会shell,就不是一个合格管理员。 shell是系统跟计算机硬件交互使用的中间介质,一个系统工具。实际上在shell和计算机硬件之间还有一层——系统内核。如果吧计算机比作人的躯体,那系统内核就是人的大脑,至于shell,把它比做人的五官更贴切。 其实,用户直接面对的不是计算机硬件而是shell,用户把指...

weixin_30405421的博客 218

linux学习第二十三篇:shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向

shell介绍 什么是shell, shell是一个命令解释器,提供用户和机器之间的交互。支持特定语法,比如逻辑判断、循环。每个用户都可以有自己特定的shell。CentOS7默认shell为bash(Bourne Agin Shell)。还有zsh、ksh等。实际上,在shell和计算机硬件之间还有一层东西那就是系统内核了。打个比方,如果把计算机硬件比作一个人的躯体,而系统内核则是人的大脑,至

X__linux的博客 440

shell介绍,命令历史,命令补全和别名 ,通配符, 输入输出重定向

shell介绍shell是一个命令解释器,提供用户和机器之间的交互;支持特定语法,比如逻辑判断、循环;每个用户都可以有自己特定的shell;CentOS7默认shell为bash (Bourne Agin Shell);还有zsh、ksh等。命令历史我们使用过的命令,会存放在用户家目录下/root/.bash_historyhistory命令,可以查看使用过的命令历史,最多可存1000条histo...

weixin_39663255的博客 270

shell介绍、历史命令、命令补全和别名、通配符、输入输出重定向

shell介绍 shell是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具。实际上,在shell和计算机硬件之间还有一层东西——系统内核。 用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。 Redhat、Centos 默认安装的shell版本是ba...

weixin_34174422的博客 120

shell介绍、命令历史 、 命令补全和别名 、通配符、输入输出重定向

一、shell介绍二、命令历史历史命令存放路径 /root/.bash_history ,默认可以存放1000条命令#history //查看具体的历史命令[root@linux-01 ~]# echo $HISTSIZE //系统内置环境变量1000 #history -c //清空内存中命令历史,但是存放命令的文件不会被删除#vi /etc/profile ...

weixin_34212189的博客 94

shell介绍、命令历史、 命令补全和别名 、通配符 、输入输出重定向

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34123613的博客 95

11.15 shell介绍 ,命令历史,命令补全和别名,通配符,输入输出重定向

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34072159的博客 192
上一篇: yum更换国内源、 yum下载rpm包
下一篇: 管道符和作业控制、shell变量、环境变量配置文件
Young_Linux
博客等级 码龄10年 6粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值