Linux Shell学习笔记(一)
Shell,见名知意,就是一个作为用户与Linux OS间接口的程序,允许用户向OS输入需要执行的命令。Shell众多,这里只介绍Bash。
0)实验的Shell版本
显示shell版本:
/bin/bash --version
结果:
1)文件.bash_history
该文件保存历史命令,一般是当用户正常退出Shell的时候保存,所在目录为:”~/.bash_history“。
命令显示~目录下,所有以.开始的文件:
ls -a ~ | grep ".*"
结果:
①!!,两个叹号表示“执行上一条命令”;
②!n,表示执行历史命令中的第n条命令;
③!string,表示执行历史命令中第一次以string开头的命令;
在上图中,还有些其它以.开头的隐藏文件,且意义非凡,它们都是用户级的环境变量配置文件(当然,还有系统级别的):
◆ .bash_profile或.profile:定义用户专用的shell信息。当用户登录时,该文件将执行且仅执行一次。默认情况下,它设置了一些环境变量,执行用户的.bashrc文件。默认内容如下:
◆ .bashrc:该文件包含专用于当前用户的shell的bash信息,当用户登录时以及每次打开新的shell时,该该文件被读取。一般用户自定义的alias或自定义变量会存到该文件中。默认内容如下:
◆ .bash_logout:当退出shell时,将执行该文件。一般可将一些清理工作放在该文件中。默认内容如下:
2)重定向
重定向包括:重定向输出和重定向输出。
①重定向输出
◆ 将显示内容重定向到test.txt文件中:
ls -l > test.txt
使用vim打开文件,结果如下:
◆ 将ps命令结果追加到test.txt文件中:
ps >> test.txt
结果:
②重定向输入
将test.txt文件的内容重定向输入给more命令:
more < test.txt
结果:
3)管道
管道操作符为|,用来连接进程,并且连接进程的数目是没有限制的。不同与MS-DOS,Linux下通过管道连接的进程可以同时运行,并随着数据流在它们之间的传递可自动地进行协调。
查看系统中所有进行,但不包括shell:
ps -xo comm | sort | uniq | grep -v sh | more
结果:
Linux Shell学习笔记(一)的更多相关文章
- Linux Shell 学习笔记 一 目录结构
以Red Hat Enterprise Linux 各版本为例,RHEL中目录具体作用如下, /bin 存放普通用户使用的命令 /sbin 存放管理员可以执行的命令 /home ...
- linux shell学习笔记二---自定义函数(定义、返回值、变量作用域)介绍
linux shell 可以用户定义函数,然后在shell脚本中可以随便调用.下面说说它的定义方法,以及调用需要注意那些事项. 一.定义shell函数(define function) 语法: [ f ...
- Linux & Shell 学习笔记【1/2】
因为工作上的需要,花了些许时间去熟悉学习Linux和Shell,现在也花点事件在此记录一下以加强巩固学习的内容吧.学的不算深入,所以都是一些比较junior的内容. 在下一篇随笔会详述之前写的一个用于 ...
- Linux Shell 学习笔记
2.return与exit区别 return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定,当然如果是在主函数main, 自然也就结束当前进程了,如果不是 ...
- Linux Shell学习笔记:exit退出状态代码
inux提供$?特殊变量来保存最后一条命令执行结束的退出状态.执行完一条命令后,立即执行echo$?,可以查看最后一条命令的退出状态值. 正常的情况下,命令成功执行完成的退出状态是0,如果非0,则命令 ...
- linux shell 学习笔记--内部命令学习
.基本命令 新手必须要掌握的初级命令 ls 基本的列出所有文件的命令.但是往往就是因为这个命令太简单,所以我们总是低估它.比如 ,用 -R 选项,这是递归选项,ls 将会以目录树的形式列出所有文件, ...
- linux shell学习笔记
一 变量 声明变量: my_var='ddd'使用变量: ${my_var}设置为只读变量: readonly my_var删除变量: unset my_var 注意只读变量不能被删除 变量类型:( ...
- linux shell 学习笔记01
1.命令历史记录history !$ :调用上一条命令的执行结果 !100 :运行history记录里的第100条命令 !ser :调用以ser开头的最后一次执行的命令 ctrl+r ...
- Linux Shell 学习笔记 00
1.Bash = Bourne Again SHell 2.终端提示符: #普通用户 username@hostname$ #管理员用户 root@hostname# 3.shell脚本通常是一个以s ...
随机推荐
- 使用pssh进行并行批量操作
假如同时给上千台服务器执行一个命令,拷贝一个文件,杀一个进程等,有什么简化运维管理的工具呢?在小型使用中我都是使用for循 环,数量巨大,一方面不确定操作是否成功,一方面for循环语句性能不好估计且是 ...
- http-equiv制作跳转欢迎页面
做网站嘛,没有个欢迎页面肿么能忍? 要忽悠下浏览者的嘛. 然后此处省略一万字... 目的:不需要其他的脚本,直接在meta中控制时间,跳转页面 原理很简单: < meta http-equiv= ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON TestRegionPoint1
zw版[转发·台湾nvp系列Delphi例程]HALCON TestRegionPoint1 unit Unit1;interfaceuses Windows, Messages, SysUtils, ...
- 统计方法运行时间【Java实现】
接口Command:定义命令的执行操作 package common; public interface Command { // 运行方法 void run(); } CommandRuntime ...
- Python tricks(6) -- python代码执行的效率
python作为一个动态语言, 本身学习曲线比较平滑, 效率相比起来会比c++和java低一些. 脚本语言都是运行时编译的, 这个对于效率的影响是非常大的. 我借用参考1的代码, 加了点代码impor ...
- web前端----jQuery扩展(很重要!!)
1.jQuery扩展语法 把扩展的内容就可以写到xxxx.js文件了,在主文件中直接导入就行了. 用法1.$.xxx() $.extend({ "GDP": function () ...
- (iOS)关于键盘遮挡textfield问题
记录一下自己经常遇到问题.使用textfield(textview).当输入框位置比较靠下时,弹出的键盘会遮挡输入框,这是就需要动态移动输入框编辑状态时self.view的位置, 自己经常用的方法有两 ...
- PHP发送HTTP请求的6种方法
方法1: 用 file_get_contents 以get方式获取内容: <?php$url = 'https://wenda.shukaiming.com/';echo file_get_co ...
- 一个简单的JavaScript实例
1 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&q ...
- 微信小程序编写新闻阅读列表
微信小程序编写新闻阅读列表 不忘初心,方得始终:初心易得,始终难守. 本篇学习主要内容 Swiper 组件(轮播图) App.json 里的关于导航栏.标题的配置. Page 页面与应用程序的生命周期 ...