1.echo 打印 。

echo 的作用是在屏幕上打印输出内容,与文件和持久化可以理解为没有丝毫关联。如:在屏幕上打印“ echo 的作用是打印文字! ”

实例1:输出系统的环境变量名称 $PATH

[root@localhost ~]# echo $PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost ~]#

 实例2:查看命令所属的路径在哪,首先先去$PATH找,如果找到第一个就返回结果并显示

[root@localhost ~]# which ls
alias ls='ls --color=tty'
/bin/ls
[root@localhost ~]#

 实例3:PATH='' 只清空当前session 会话的变量 $PATH ,并没有全局生效。

[root@localhost ~]# PATH=''
[root@localhost ~]# echo $PATH [root@localhost ~]# which ls
alias ls='ls --color=tty'
[root@localhost ~]# ls
-bash: ls: 没有那个文件或目录
[root@localhost ~]#

  恢复当前session 会话的变量 $PATH:

[root@localhost ~]#  PATH='/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin'
[root@localhost ~]# echo $PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost ~]# which ls
alias ls='ls --color=tty'
/bin/ls
[root@localhost ~]# ls
anaconda-ks.cfg install.log.syslog password.txt
install.log ntuser.pol student.txt
[root@localhost ~]#

2.环境变量。

  全局: /etc/profile     系统级环境的变量,提供所有用户使用
  个人:   ~/.bash_profile       用户级别不共享的环境变量,但是在使用SecureCRT等工具连接登录系统后,该文件内所配置的变量值,部分命令不会默认加载
       ~/.bashrc                 用户级别共享的环境变量,在使用SecureCRT等工具连接登录系统后,该文件内所配置的变量值,依然有效

  

  生效文件: source xxxx
       . ~/.bashrc

3.which命令的理解。

  which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

  也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 

  命令参数:

    -n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

    -p  与-n参数相同,但此处的包括了文件的路径。

    -w  指定输出时栏位的宽度。

    -V  显示版本信息

4.别名。

  可将别名以vi的方式写到.bash_profile、 .bashrc或者/etc/profile文件中,这样别名的定义就具有了持久性,但是要注意,根据写入的文件不同也会具有不一样效果,具体参照2.环境变量中的文件说明。

[root@localhost ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@localhost ~]# alias l='cd /home/linux'
[root@localhost ~]# l
[root@localhost linux]#

5.删除

[root@localhost linux]# touch xxx.log
[root@localhost linux]# ll
总计
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
-rw-r--r-- root root - : xxx.log
[root@localhost linux]# rm -f xxx.log
[root@localhost linux]# ll
总计
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
[root@localhost linux]# cat /dev/null > xxx.log
[root@localhost linux]# ll
总计
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
-rw-r--r-- root root - : xxx.log
[root@localhost linux]# rm -f xxx.log
[root@localhost linux]# ll
总计
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
[root@localhost linux]# mkdir
[root@localhost linux]# ll
总计
drwxr-xr-x root root - :
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
[root@localhost linux]# rm -rf /
[root@localhost linux]# ll
总计
drwxr-xr-x linux linux - : Desktop
-rw-rw-r-- linux linux - : file1.txt
-rw-rw-r-- linux linux - : file2.txt
drwxrwxr-x linux linux - : ml
[root@localhost linux]#

  其中,文件: touch xxx.log

        cat /dev/null > xxx.log             vi命令 也会生成新文件

     文件夹: mkdir

   rm -f rz.log11 直接删除文件
   rm -rf 1 直接删除文件夹

6.history

[root@localhost linux]# history
history
echo "echo 的作用是打印文字!"
ping www.baidu.com
history
[root@localhost linux]# !
echo "echo 的作用是打印文字!"
echo 的作用是打印文字!
[root@localhost linux]#

  !2 表示:执行历史指定的第2条命令,由于Linux没有回收站,所以当发生高危命令风险: rm -rf /  ,结果是很严重很严重的,但是这条指令往往会被我们不经意间使用,下面是一个典型的shell脚本案例:

K='/home/jepson'
K=''
判断 $K命令是否存在
rm -rf $K/*

  

  那么,一旦发生了这样的后果怎么办呢? 答案当然是删除history的记录了,使用history -c 命令进行清空history,但是这种情况只针对使用SecureCRT等工具直接连接 ,或者跳板机的时候使用,对于堡垒机而言还是会记录你的操作命令。

[root@localhost linux]# history
history
echo "echo 的作用是打印文字!"
ping www.baidu.com
history
[root@localhost linux]# !
echo "echo 的作用是打印文字!"
echo 的作用是打印文字!
[root@localhost linux]# history -c
[root@localhost linux]# history
history

数据仓库002 - 复习Linux shell命令 - echo bash_profile bashrc which命令的理解 alias history的更多相关文章

  1. 数据仓库001 - 复习Linux shell命令 - pwd mkdir mv tail -f xxx.log 和 ail -F xxx.log

    1.  [root@localhost ~]#  的含义 ?  [登录的用户  机器的名称 家目录] 2. 查看当前光标所在的目录   pwd [root@localhost ~]# pwd /roo ...

  2. 数据仓库004 - 复习Linux shell命令 - vi 进程 端口号 系统命令 高危命令 wget yum rpm压缩

    一.复习 1.vi的使用方法: 1.1 .正常编辑一个文件,保存退出 1.2. 粘贴的坑:必须在i键 编辑模式 2.找error cat xxx.log | grep -C 10 ERROR > ...

  3. 数据仓库003 - 复习Linux shell命令 - 用户用户组 sudo 权限 du-sh find 

    一.用户用户组 [root@localhost ~]# ll /usr/sbin/user* -rwxr-x--- root root -- /usr/sbin/useradd -rwxr-x--- ...

  4. 数据仓库005 - 复习Linux shell命令 - crontab调度 sh脚本 后台执行 软连接

    一.crontab调度 对于linux 自带crontab而言,      xxx.sh的一般编写格式以#!/bin/bash 解释器开头,可在脚本中加入: date 但是,shell脚本执行 需要 ...

  5. Linux Shell脚本入门--cut命令

    Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields &l ...

  6. Linux shell下30个有趣的命令

    Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...

  7. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  8. Linux Shell脚本中点号和source命令

    Linux中一个文件是根据其是否具有执行属性来判断他是否可以直接运行的.就像Windows下的exe一样.如果我们要执行某一个文件,可以先将其权限修改为可执行(必须是所有者或者root才能修改).然后 ...

  9. linux shell 脚本攻略学习20--awk命令入门详解

    awk生于1977年,创始人有三个,分别为 Alfred Aho,Peter Weinberger, 和 Brian Kernighan,名称源于三个创始人的姓的首字母. 作用:处理文本文件. awk ...

随机推荐

  1. xml模块(了解)

    目录 一.xml简介 二.Python使用xml 三.自己创建xml文档 一.xml简介 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在 ...

  2. 史上最全的用Python操控手机APP攻略!建议收藏!

    ​最近经常看到用Python操作手机APP的项目,例如抖音.闲鱼之类的,看完后发现这些项目无一例外需要部署ADB环境.至于什么是ADB,很多大神都讲过,只是写得比较专业,我等菜鸟看完还是云里雾里. ​ ...

  3. python接口自动化9-ddt数据驱动

    前言 ddt:数据驱动,说的简单一点,就是多组测试数据,比如点点点的时候登录输入正常.异常的数据进行登录. 实际项目中,自动化测试用得很少,但也有人用excel来维护测试数据 一.ddt 1.安装:p ...

  4. 《细说PHP》第四版 样章 第18章 数据库抽象层PDO 11

    18.8.3  完美分页类的代码实现 分页类的编写除了需要使用在18.8.2节中提供的可以操作的3个成员方法,还需要更多的成员,但其他的成员方法和成员属性只需要内部使用,并不需要用户在对象外部操作,所 ...

  5. Jmeter之用于json格式的响应断言

    当响应结果是json格式时,用JSON Assertion更方便判断. 1 在请求上右键添加json断言 2  编辑json Assertion 判断方式: 如果响应结果不是json格式的,fail ...

  6. Delphi 10.2 Tokyo新增JSON类学习——TJsonSerializer

    Delphi 10.3.2 for windows 7 编译通过,源码下载地址: Tokyo 10.2新增类,效率更高更快 TJsonSerializer 需要引用单元:System.JSON.Ser ...

  7. Java设计模式:Simple Factory(简单工厂)模式

    概念定义 简单工厂(Simple Factory)模式,又称静态工厂方法(Static Factory Method)模式,即定义一个工厂类,根据传入的不同参数创建不同的产品实例,这些实例对象具有共同 ...

  8. PHP7.1.X+wordpress+windows,安装Memcached服务

    1.下载安装Memcached 64位系统1.4.4版本:memcached-win64-1.4.4-14.zip 2.解压缩在任意盘符,然后进入文件夹,在文件夹中运行CMD输入以下命令: 1)输入 ...

  9. 使用 Powershell 远程连接 windows server

    使用 Powershell 远程连接 windows server Intro 最近我们的开发环境增加了一个 windows 服务器,没有界面的,不能直接远程桌面连上去管理,需要使用 Powershe ...

  10. MapReduce Shuffle 和 Spark Shuffle 原理概述

    Shuffle简介 Shuffle的本意是洗牌.混洗的意思,把一组有规则的数据尽量打乱成无规则的数据.而在MapReduce中,Shuffle更像是洗牌的逆过程,指的是将map端的无规则输出按指定的规 ...