关机和重启命令

Shutdown

Reboot

Halt

poweroff

grep和管道符

昨天的时候 leader 给我出了道问题:

找出文件夹下包含 “aaa” 同时不包含 “bbb”的文件,然后把他们重新生成一下。要求只能用一行命令。 我对 Linux 是个白痴,工作了之后才开始接触的,会用的命令只有那几个常用的。这个问题对我来说就有 点难度,我只是大概知道查找文件用 grep ,其他的就不知道了。不过没关系,用 Google ,查找到 grep 的完整用法:

1、grep -l ‘boss’ * 显示所有包含 boss 的文件名。

2、grep -n ‘boss’ file 在匹配行之前加行号。

3、grep -i ‘boss’ file 显示匹配行,boss 不区分大小写。

4、grep -v ‘boss’ file 显示所有不匹配行。

5、grep -q ‘boss’ file 找到匹配行,但不显示,但可以检查 grep 的退出状态。(0 为匹配成功)

6、grep -c ‘boss’ file 只显示匹配行数(包括 0)。

7、grep “$boss” file 扩展变量 boss 的值再执行命令。

8、ps -ef|grep “^*user1″ 搜索 user1 的命令,即使它前面有零个或多个空格。

9、ps -e|grep -E ‘grant_server|commsvr|tcpsvr|dainfo’ 查找多个字符串的匹配(grep -E 相当于 egrep)

(来源:蓝森林)

了解了 grep 的参数之后,问题就解决了一半了,因为可以搜索出符合条件的文件了。不过光有 grep 还是 不行,因为要把搜索出来的文件名作为参数传给 generate 命令。OK,接下来该管道符出场了。 即使是像我这样对 Linux 只是有一点了解的人也经常用到管道符,比如“|”,示例: ls -a | more 。但是对 于管道符的具体意义和它做了什么我就不知道了,没关系,Google 一下,找到一些资料:

利用 Linux 所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。 连续使用管道意味着第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命 令的输入,依此类推。

所以查找的时候可以这样写:

grep -rl “aaa” * | grep -v “bbb”

这样右边的命令就可以从前面的结果中筛选了。然后还有 generate 命令,因为生成文件的命令格式是这 样的:

generate 文件名

不过如果直接使用 generate grep -rl “aaa” * | grep -v “bbb” 的话会出错,因为命令会从左向右执行,这条 命令就会把 grep 作为一个文件名来看待。怎么办呢?这个时候就要使用 • (键盘上数字键 1 旁边的那个符 号,和“~”在一个按键上)来做命令替换了,用 • 把后面的 grep 命令包起来就好了,这样:

generate •grep -rl “aaa” * | grep -v “bbb”•

然后就搞定了。

工作一段时间之后,越来越喜欢 Linux 的哲学了,它有很多命令,看起来功能都不是那么强劲,但是如果 你开动脑筋把这些命令组合起来的话,就能实现 很多让你意想不到的功能,有时候你忍不住惊呼:实在 是太 coooool 了! 这对于像我这种被 Windows 的傻瓜式操作惯坏了的人来说,是个福音,以后要多多开 动生锈了的大脑。如果单纯使用电脑的话,还是 Windows 好用,但 是对于程序员,最好还是多玩玩 Linux。 BTW,现在也越来越喜欢使用 VIM 了,虽然刚开始用的时候就觉得它是个记事本~ 以前总听说“真正 的牛人编码都是用记事本编写的”,当时就觉得这些人实在太厉害了,代码提示和自动补全都不用,现在 想想,可能是外行看到他们使用灵活+强 大的 VIM 或者 EMACS 了吧。_

我的补充:

查找包含 logField 又包含 open 的文件: 用 grep "logFileId" *.tbc|grep "open"

linux命令关机和重启命令及文件查找管道符用法linux grep的更多相关文章

  1. linux虚拟机关机、重启命令

    linux虚拟机关机.重启命令   一.shutdown 1.shutdown -h now :立即关机 2.shutdown -h 10:53:到10:53关机 3.shutdown -h +10 ...

  2. Linux的关机与重启命令

    Linux的关机与重启命令 作者: Aillo, 发布于2009-05-10, 在系统分类下, 1条留言. 重启命令:1.reboot2.shutdown -r now 立刻重启(root用户使用)3 ...

  3. Linux的关机和重启命令

    Linux有如下的关机和重启命令:shutdown, reboot, halt, poweroff,那么它们有什么区别呢? shutdown - 建议使用的命令 shutdown是最常用也是最安全的关 ...

  4. linux常用关机和重启命令

    Linux有如下的关机和重启命令:shutdown, reboot, halt, poweroff,那么它们有什么区别呢? shutdown - 建议使用的命令 shutdown是最常用也是最安全的关 ...

  5. Linux centos关机与重启命令详解与实战

    Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.s ...

  6. LINUX CENTOS关机与重启命令详解

    Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.s ...

  7. Linux centos关机和重启命令

    Linux centos重启命令: 1.reboot   普通重启 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户 ...

  8. Linux常用命令——关机与重启命令

    1.shutdown命令 shutdown [选项] 时间 --使用shutdown进行关机或重启会正确保存正在使用的服务,其他命令有一定的危险性,建议最好使用shutdown命令进行关机重启 选项: ...

  9. centos、linux关机与重启命令详解

    Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 1 ...

  10. linux常用命令-关机、重启

    常用命令-关机.重启 命令 含义 reboot 重新启动操作系 shutdown –r now 重新启动操作系统,shutdown会给别的用户提示 shutdown -h now 立刻关机,其中now ...

随机推荐

  1. AcWing 839. 模拟堆 2022/5/30

    关键代码: void head_swap(int a, int b){ swap(ph[hp[a]], ph[hp[b]]); swap(hp[a], hp[b]); swap(h[a], h[b]) ...

  2. python 嵌套对象转为dict

    as_dict(self, keys=None, exclude_keys=None): """ 将ORM对象序列化为字典 :param keys: :return: & ...

  3. Springboot开发微信支付API-V3

    前段时间因为项目需要对接微信支付,原本打算拿之前开发好的代码用就行了,后面发现微信支付升级API-V3了,和V2相比安全措施多了很多.最麻烦的就是各种证书的管理.加载. 作者自己也对接过N多支付系统了 ...

  4. VSCode 抽取vue的代码片段

    在vscode中文件-->首选项-->用户片段,输入名字按去确定,输入代码片段 { "vue htm": { "scope": "html ...

  5. git命令,回滚上一个版本,回滚n个版本,撤销回滚

    1 回滚到上一个版本 git checkout . :add之前的回滚 git reset --hard:add之后,commit之前 git reset --hard origin/test:com ...

  6. Android移动端性能测试工具mobileperf

    简介:mobileperf是阿里开源的一个python PC 工具,可以收集Android性能数据: cpu.内存.流畅度.fps.logcat日志.流量.进程线程数.进程启动日志,mobileper ...

  7. Jupyter 快捷键1

    Jupyter Notebook 有两种键盘输入模式.编辑模式,允许你往单元中键入代码或文本:这时的单元框线是绿色的.命令模式,键盘输入运行程序命令:这时的单元框线是灰色. 命令模式 (按键 Esc ...

  8. java和js 用正则表达式切割省市县的代码

    String s= "安徽省合肥市肥西县上派镇"; // String regex="(\\?[^省]+自治区|.*?省|.*?行政区|.*?市)(\\?[^市]+自治州 ...

  9. HTTP对应状态码

    服务器–响应–客户端 1. 响应体 Accept:告诉浏览器所支持的数据类型Accept-Encoding:表示浏览器支持的编码格式 GBK UTF-8 GB2312 ISO8859-1Accept- ...

  10. C++的mfc创建管道

    注意:下面的东西是单管道 //创建管道 CString CDownDlg::CreateCmd(CString res) { CString wrCmd; CString ans = _T(" ...