shell登陆加载的文件, 快捷命令, tee管道, nohup和&
1. login shell和nologin shell的理解:
字面意思, 需要登陆的shell和不需要登陆的shell. 正确解释为: 加载用户环境配置的shell
和不加载用户环境配置的shell. nologin shell登陆时只加载/etc/bashrc和 ~/.bashrc两个文件;
而login shell登陆时会加载4个, 系统级和用户级分别两个, 如2中所列文件.
结合su - 命令的使用理解. -为加载用户环境, 没有-即不加载用户环境.
2.和用户登陆shell有关的(要加载的)文件如下:
系统级的有: /etc/profile 和 /etc/bashrc
用户级的有: 家目录 ~/.bash_profile 和 ~/.bashrc
3. 用户退出shell有关的两个文件:
都在用户家目录下: ~/.bash_logout 和 ~/.bash_history
4. 补充shell里的几个快捷操作(shell脚本中或窗口中): ^代表ctrl键
!! 表示上次执行的命令; !$ 表示上次命令的最后一个参数; ^d 退出shell并关闭
^R 然受输入内容, 会从历史命令中去模糊匹配命令;
^a 移动光标到命令开始处; ^e 移动光标到命令结尾处;
^u 删除光标之前内容; ^k 删除光标之后的内容; ^y 粘贴出删除的内容, 可无限次粘贴
^s 锁定shell界面; ^q 解除shell界面的锁定;
nohup 免疫关闭shell窗口时的结束命令; & 后台运行命令; jobs 可查看当前所有的后台任务
^z 可使一个前台运行的命令转到后台运行.
实列: vim 一个文件, 在命令模式下, 使用^z 可使当前的vim转为后台,shell界面回到目录; 然后键入
fg+序号 可再次把转为后台的vim切到前台来. 序号可使用jobs命令查看;
补充: nohup和&的区别: &一方面会使程序在后台运行, 一方面会使程序免受退出时的结束命令
影响; nohup会使程序免受关闭shell窗口的结束命令影响; 所以通常我们需要让程序一直后台运行
可使用: nohup command &
输入重定向>和输出重定向<: cat << EOF >>file2 \n123 \nEOF 注: \n代表换行
EOF就是个标识符, EOF标签对中的内容输出给cat命令, 再由cat输入到file2文件中;
>>表示追加, > 表示覆盖写. 上面的命令不要放到一行.
5. alias设置别名: alias xy='cd' # 直接窗口输入会在本次登陆中生效, 退出即失效, 也可把该
命令写入shell登陆要加载的任意文件中都可以.
6. 管道符和tee管道
date > qzq.txt # 把date的输出覆盖写入qzq.txt中
date | tee qzq.txt # 同上
date | tee -a qzq.txt # tee可理解为一个三通管道, 可以把date的输出给管道符后, 再输入到qzq.txt中
-a 参数有无都行, a表示追加写的意思, 没有表示覆盖写. tee会同时写入文件和输出到屏幕上.
shell登陆加载的文件, 快捷命令, tee管道, nohup和&的更多相关文章
- Java提高篇——JVM加载class文件的原理机制
在面试java工程师的时候,这道题经常被问到,故需特别注意. 1.JVM 简介 JVM 是我们Javaer 的最基本功底了,刚开始学Java 的时候,一般都是从“Hello World ”开始的,然后 ...
- JVM加载class文件的原理
当Java编译器编译好.class文件之后,我们需要使用JVM来运行这个class文件.那么最开始的工作就是要把字节码从磁盘输入到内存中,这个过程我们叫做[加载 ].加载完成之后,我们就可以进行一系列 ...
- angularLoad(用以异步加载js文件)
angularLoad(用以异步加载js文件) 使用方法: 1.执行命令 下载 lib npm install angular-load --save 2.index.html引用js <scr ...
- flask模板应用-加载静态文件:添加Favicon,使用CSS框架,使用宏加载静态资源
加载静态文件 一个Web项目不仅需要HTML模板,还需要许多静态文件,比如CSS.JavaScript文件.图片和声音声.在flask程序中,默认需要将静态文件存储在与主脚本(包含程序实例的脚本)同级 ...
- cordova程序加载pdf文件的2种方法(ios/android)
前言 公司目前的前端架构是微信端由vue全家桶负责h5网站的单页应用,android端和ios端则选择cordova打包成apk和app.其中,有一个业务逻辑是点击某个链接进入pdf的展示,h5的方案 ...
- spring boot 加载配置 文件
在springboot启动的过程中,默契情况下会在classpath路径下加载application.properties当做系统配置文件,但有时候我们想要替换成另一个文件,可以 通过以下方式: ...
- windows/tomcat 修改java虚拟机JVM以utf-8字符集加载class文件的两种方式
1.情景展示 做了这么长时间的java开发,但是,你知道JVM是以怎样的编码加载.解析class文件的吗? 我们知道,通常情况下,我们会将java文件的字符集修改成utf-8,这样,理所当然地就认 ...
- centos下nginx无法加载php文件,404
前提:html文件可以正常加载,php安装正常,nginx配置正确.仍然无法加载php文件,明明文件是存在,却报404,而不是直接输出文件 原因是:未启动php-fpm,未开启9000端口 首先查看是 ...
- Android系统加载Apk文件的时机和流程分析(1)--Android 4.4.4 r1的源码
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80982869 Android系统在启动时安装应用程序的过程,这些应用程序安装好之 ...
随机推荐
- SAP_ECC6_EHP7_IDES安装文档ORACLE11G+WINDOWS2012 R2 问题总结
SAP_ECC6_EHP7_IDES安装文档ORACLE11G+WINDOWS2012 R2 问题总结 1.注意密码不能带@等特殊符号,否则会报如下错误,因为ORACLE数据是不容许密码带@的.@是一 ...
- 文本切换器(TextSwitcher)的功能与用法
TextSwitcher继承了ViewSwitcher,因此它具有与ViewSwitcher相同的特征:可以在切换View组件时使用动画效果.与ImageSwitcher相似的是,使用TextSwit ...
- idea中git分支、合并与使用
1.分支的新建与合并使用场景介绍 让我们来看一个简单的分支新建与分支合并的例子,实际工作中你可能会用到类似的工作流. 你将经历如下步骤: 开发某个网站. 为实现某个新的需求.问题(#53问题),创建一 ...
- sqlserver默认隔离级别下并发批量update同一张表引起的死锁
提到死锁,最最常规的场景之一是Session1 以排它锁的方式锁定A表,请求B表,session2以排它锁的方式锁定B表,请求A表之类的,访问顺序不一致导致死锁的情况本文通过简化,测试这样一种稍显特殊 ...
- Keystone安装与配置
一.实验目的: 1.掌握OpenStack环境搭建的基础工作 2.掌握keystone的安装与配置方法 3.掌握keystone基础接口的调用方法 二.实验步骤: 1.利用最初创建的快照克隆两台Cen ...
- 日记o3o
12.17 段考超级烂,连sts都没考过,但是今晚来机房,nj发邮件的时候也给我发了,看来是可以继续学竞赛啦,很快心,也挺不开心的,毕竟以后想要跟上文化课就要很努力了,有能力但是得去花时间啊,寒假又要 ...
- Spring Cloud Alibaba 实战(十一) - Spring Cloud认证授权
欢迎关注全是干货的技术公众号:JavaEdge 本文主要内容: 如何实现用户认证与授权? 实现的三种方案,全部是通过画图的方式讲解.以及三种方案的对比 最后根据方案改造Gateway和扩展Feign ...
- 【HTML】---常用标签(1)
Html常用标签(1) 重新整理学习下前端知识从Html标签开始.我们先看HTML 骨架格式: <!DOCTYPE html> <!--这句话就是告诉我们使用哪个html版本--&g ...
- ASP.NET MVC教程一:ASP.NET MVC简介
一.MVC模式简介 MVC模式是一种流行的Web应用架构技术,它被命名为模型-视图-控制器(Model-View-Controller).在分离应用程序内部的关注点方面,MVC是一种强大而简洁的方式, ...
- 在nodejs中怎么使用redis缓存组件
redis量个强大的缓存组件,可以部署在windows和linux环境之上,它有五大存储结构,其中有一种为列表list,它可以实现quene和stack的功能,即队列和堆栈的功能. 当然使用先安装py ...